unixdev.net


Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (OpenBSD-5.7)
Page:
Section:
Apropos / Subsearch:
optional field

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

NAME
     hook_establish, hook_disestablish -- add or remove a hook from a speci-
     fied list

SYNOPSIS
     #include <&lt;sys/types.h>&gt;
     #include <&lt;sys/systm.h>&gt;

     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);

DESCRIPTION
     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.

     The startup and mountroot systems use this API for their implementation.

RETURN VALUES
     If successful, hook_establish() returns an opaque pointer describing the
     newly established hook.  Otherwise, it returns NULL.

SEE ALSO
     dohooks(9), domountroothooks(9), dostartuphooks(9),
     mountroothook_establish(9), startuphook_establish(9)

BSD                            December 10, 2014                           BSD