Home Man
Today's Posts

Linux & Unix Commands - Search Man Pages
Man Page or Keyword Search:
Select Section of Man Page:
Select Man Page Repository:

NetBSD 6.1.5 - man page for kfilter_register (netbsd section 9)

KFILTER_REGISTER(9)		  BSD Kernel Developer's Manual 	      KFILTER_REGISTER(9)

     kfilter_register, kfilter_unregister -- add or remove kernel event filters

     #include <sys/event.h>

     kfilter_register(const char *name, struct filterops *filtops, int *retfilter);

     kfilter_unregister(const char *name);

     The kfilter_register() function adds a new kernel event filter (kfilter) to the system, for
     use by callers of kqueue(2) and kevent(2).  name is the name of the new filter (which must
     not already exist), and filtops is a pointer to a filterops structure which describes the
     filter operations.  Both name and filtops will be copied to an internal data structure, and
     a new filter number will be allocated.  If retfilter is not NULL, then the new filter number
     will be returned in the address pointed at by retfilter.

     The kfilter_unregister() function removes a kfilter named name that was previously regis-
     tered with kfilter_register().  If a filter with the same name is later reregistered with
     kfilter_register(), it will get a different filter number (i.e., filter numbers are not
     recycled).  It is not possible to unregister the system filters (i.e., those that start with
     ``EVFILT_'' and are documented in kqueue(2)).

     The filterops structure is defined as follows:

	   struct filterops {
		   int	   f_isfd;	   /* true if ident == filedescriptor */
		   int	   (*f_attach)(struct knote *kn);
					   /* called when knote is ADDed */
		   void    (*f_detach)(struct knote *kn);
					   /* called when knote is DELETEd */
		   int	   (*f_event)(struct knote *kn, long hint);
					   /* called when event is triggered */

     If the filter operation is for a file descriptor, f_isfd should be non-zero, otherwise it
     should be zero.  This controls where the kqueue(2) system stores the knotes for an object.

     kfilter_register() returns 0 on success, EINVAL if there's an invalid argument, or EEXIST if
     the filter already exists,

     kfilter_unregister() returns 0 on success, EINVAL if there's an invalid argument, or ENOENT
     if the filter doesn't exist.

     kqueue(2), free(9), knote(9), malloc(9)

     The kfilter_register() and kfilter_unregister() functions first appeared in NetBSD 2.0.

     The kfilter_register() and kfilter_unregister() functions were implemented by Luke Mewburn

BSD					 October 23, 2002				      BSD

All times are GMT -4. The time now is 09:04 PM.

Unix & Linux Forums Content Copyrightę1993-2018. All Rights Reserved.
Show Password

Not a Forum Member?
Forgot Password?