May 23, 2002 SETJMP 9

### NAME

setjmp, longjmp - non-local jumps

### SYNOPSIS

```int` setjmp(```label_t *label`)
```void` longjmp(```label_t *label`)

### DESCRIPTION

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

### SEE ALSO

ddb(4)