OpenBSD manual page server

Manual Page Search Parameters

STARTUPHOOK_ESTABLISH(9) Kernel Developer's Manual STARTUPHOOK_ESTABLISH(9)

startuphook_establish, startuphook_disestablishadd or remove a startup hook

#include <sys/types.h>
#include <sys/systm.h>

void *
startuphook_establish(void (*fn)(void *), void *arg);

void
startuphook_disestablish(void *cookie);

The () function adds fn to the list of hooks invoked by dostartuphooks(9) at startup. When invoked, the hook function fn will be passed arg as its only argument.

The () function removes the hook described by the opaque pointer cookie from the list of hooks to be invoked at startup. If cookie is invalid, the result of startuphook_disestablish() is undefined.

Startup hooks should be used to perform one-time activities that must happen immediately before the root and swap devices are configured, but after normal device autoconfiguration.

Startup hooks are, like shutdown hooks, implemented via the more general dohooks(9) API.

If successful, startuphook_establish() returns an opaque pointer describing the newly established startup hook. Otherwise, it returns NULL.

It may be appropriate to use a startup hook to provide potential root or swap devices that have delayed configuration. The iop(4) shows an example of this usage.

dohooks(9), doshutdownhooks(9), dostartuphooks(9)

The names are clumsy, at best.

June 4, 2013 OpenBSD-5.4