May 6, 1998 IPSEC_STRERROR 3

### NAME

ipsec_strerror - error messages for the IPsec policy manipulation library

### LIBRARY

IPsec Policy Control Library (libipsec, -lipsec)

### SYNOPSIS

```const char *` ipsec_strerror(```void`)

### DESCRIPTION

```netinet6/ipsec.h` declares

```extern` `int` `ipsec_errcode`;

which is used to pass an error code from the IPsec policy manipulation library to a program. ipsec_strerror(``) can be used to obtain the error message string for the error code.

The array pointed to is not to be modified by the calling program. Since ipsec_strerror(``) uses strerror(3) as underlying function, calling strerror(3) after ipsec_strerror(``) will make the return value from ipsec_strerror(``) invalid or overwritten.

### RETURN VALUES

ipsec_strerror(``) always returns a pointer to a C string. The C string must not be overwritten by the calling program.

### SEE ALSO

ipsec_set_policy(3)

### HISTORY

ipsec_strerror(``) first appeared in the WIDE/KAME IPv6 protocol stack kit.

### BUGS

ipsec_strerror(``) will return its result which may be overwritten by subsequent calls.

ipsec_errcode is not thread safe.