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

setjmp, longjmp
non-local jumps

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

int
setjmp(label_t *label);

void
longjmp(label_t *label);

The setjmp() function saves its calling environment in label. It returns zero on success. The longjmp() function restores the environment saved by the most recent invocation of setjmp(). It returns so that kernel execution continues as if the corresponding invocation of the setjmp() had just returned.

setjmp() and longjmp() are a machine-independent interface for machine-dependent implementations.

These functions are primarily used by ddb(4).

ddb(4)
May 23, 2002 NetBSD 9.0