Man Linux: Main Page and Category List

NAME

       explain_strndup_or_die - duplicate a string and report errors

SYNOPSIS

       #include <libexplain/strndup.h>
       char *explain_strndup_or_die(const char *data, size_t data_size);
       char *explain_strndup_on_error(const char *data, size_t data_size);

DESCRIPTION

       The  explain_strndup_or_die  function  is  used  to call the strndup(3)
       system call. On failure an  explanation  will  be  printed  to  stderr,
       obtained  from  the  explain_strndup(3)  function, and then the process
       terminates by calling exit(EXIT_FAILURE).

       The explain_strndup_on_error function is used to  call  the  strndup(3)
       system  call.  On  failure  an  explanation  will be printed to stderr,
       obtained from the explain_strndup(3) function, but still returns to the
       caller.

       data    The  data,  exactly  as  to  be passed to the strndup(3) system
               call.

       data_size
               The data_size, exactly as to be passed to the strndup(3) system
               call.

RETURN VALUE

       The  explain_strndup_or_die  function  only  returns  on  success,  see
       strndup(3) for more information. On failure, prints an explanation  and
       exits, it does not return.

       The  explain_strndup_on_error  function always returns the value return
       by the wrapped strndup(3) system call.

EXAMPLE

       The explain_strndup_or_die function is intended to be used in a fashion
       similar to the following example:
              char *result = explain_strndup_or_die(data, data_size);

SEE ALSO

       strndup(3)
               duplicate a string

       explain_strndup(3)
               explain strndup(3) errors

       exit(2) terminate the calling process

COPYRIGHT

       libexplain version 0.19
       Copyright (C) 2009 Peter Miller

                                                     explain_strndup_or_die(3)