HOOK_ESTABLISH(9) BSD Kernel Manual HOOK_ESTABLISH(9)
hook_establish, hook_disestablish - add or remove a hook from a specified list
#include <sys/types.h> #include <sys/systm.h> void * hook_establish(struct hook_desc_head *head, int tail, void (*fn)(void *), void *arg); void hook_disestablish(struct hook_desc_head *head, void *cookie);
The hook_establish() function adds fn to the list of hooks invoked by dohooks(9). If tail is non-zero, the hook is added to the tail of the list denoted by the TAILQ_HEAD pointer head, otherwise to the front. The dohooks(9) function will at its invocation call each hook from the front of this list. When invoked, the hook function fn will be passed arg as its only argument. The hook_disestablish() function removes the hook described by the opaque pointer cookie from the list of hooks denoted by the TAILQ_HEAD pointer head. If cookie is invalid, the result of hook_disestablish() is unde- fined. Both the startup- and shutdownhooks systems use this API for their imple- mentation.
If successful, hook_establish() returns an opaque pointer describing the newly established hook. Otherwise, it returns NULL.
dohooks(9), doshutdownhooks(9), dostartuphooks(9), shutdownhook_establish(9), startuphook_establish(9) MirOS BSD #10-current July 27, 2001 1
Generated on 2013-10-31 22:57:03 by $MirOS: src/scripts/roff2htm,v 1.77 2013/01/01 20:49:09 tg Exp $
These manual pages and other documentation are copyrighted by their respective writers;
their source is available at our CVSweb,
AnonCVS, and other mirrors. The rest is Copyright © 2002‒2013 The MirOS Project, Germany.
This product includes material provided by Thorsten Glaser.
This manual page’s HTML representation is supposed to be valid XHTML/1.1; if not, please send a bug report – diffs preferred.