DragonFly On-Line Manual Pages


EFUN(3) 	      DragonFly Library Functions Manual	       EFUN(3)

NAME

esetfunc, emalloc, ecalloc, erealloc, estrdup, estrndup, estrlcat, estrlcpy, easprintf -- error-checked utility functions

LIBRARY

System Utilities Library (libutil, -lutil)

SYNOPSIS

#include <sys/types.h> #include <libutil.h> void (*)(int, const char *, ...) esetfunc(void (*)(int, const char *, ...)); void * ecalloc(size_t n, size_t c); void * emalloc(size_t n); void * erealloc(void *p, size_t n); char * estrdup(const char *s); char * estrndup(const char *s, size_t len); size_t estrlcat(char *dst, const char *src, size_t len); size_t estrlcpy(char *dst, const char *src, size_t len); int easprintf(char ** restrict str, const char * restrict fmt, ...);

DESCRIPTION

The ecalloc(), emalloc(), erealloc(), estrdup(), estrndup(), estrlcat(), estrlcpy(), and easprintf() functions operate exactly as the correspond- ing functions that do not start with an `e' except that in case of an error, they call the installed error handler that can be configured with esetfunc(). For the string handling functions, it is an error when the destination buffer is not large enough to hold the complete string. For functions that allocate memory or open a file, it is an error when they would return a null pointer. The default error handler is err(3). The func- tion esetfunc() returns the previous error handler function. A NULL error handler will just call exit(3).

SEE ALSO

asprintf(3), calloc(3), err(3), exit(3), fopen(3), malloc(3), realloc(3), strdup(3), strlcat(3), strlcpy(3), strndup(3)

HISTORY

The error functions first appeared in DragonFly 2.11. They are origi- nally from NetBSD. DragonFly 4.1 April 26, 2011 DragonFly 4.1