1explain_strdup_or_die(3) Library Functions Manual explain_strdup_or_die(3)
2
3
4
6 explain_strdup_or_die - duplicate a string and report errors
7
9 #include <libexplain/strdup.h>
10 char *explain_strdup_or_die(const char *data);
11 char *explain_strdup_on_error(const char *data);
12
14 The explain_strdup_or_die function is used to call the strdup(3) system
15 call. On failure an explanation will be printed to stderr, obtained
16 from the explain_strdup(3) function, and then the process terminates by
17 calling exit(EXIT_FAILURE).
18
19 The explain_strdup_on_error function is used to call the strdup(3) sys‐
20 tem call. On failure an explanation will be printed to stderr, obtained
21 from the explain_strdup(3) function, but still returns to the caller.
22
23 data The data, exactly as to be passed to the strdup(3) system call.
24
26 The explain_strdup_or_die function only returns on success, see
27 strdup(3) for more information. On failure, prints an explanation and
28 exits, it does not return.
29
30 The explain_strdup_on_error function always returns the value return by
31 the wrapped strdup(3) system call.
32
34 The explain_strdup_or_die function is intended to be used in a fashion
35 similar to the following example:
36 char *result = explain_strdup_or_die(data);
37
39 strdup(3)
40 duplicate a string
41
42 explain_strdup(3)
43 explain strdup(3) errors
44
45 exit(2) terminate the calling process
46
48 libexplain version 0.40
49 Copyright (C) 2009 Peter Miller
50
51
52
53 explain_strdup_or_die(3)