diff options
| author | Laurent Bercot <ska-skaware@skarnet.org> | 2025-06-02 18:29:41 +0000 |
|---|---|---|
| committer | Laurent Bercot <ska@appnovation.com> | 2025-06-02 18:29:41 +0000 |
| commit | 1f94bad45a8a161410c4564ebe5bbb892556d1bd (patch) | |
| tree | 87ac42a398ea4536344e6ebe0a506f79d9b3564d /src/include | |
| parent | df513f668cbd03f369bfaffa6743b5f21dbfe355 (diff) | |
| download | skalibs-1f94bad45a8a161410c4564ebe5bbb892556d1bd.tar.gz | |
Add prog.h and prog_pid_fill
Signed-off-by: Laurent Bercot <ska@appnovation.com>
Diffstat (limited to 'src/include')
| -rw-r--r-- | src/include/skalibs/prog.h | 18 | ||||
| -rw-r--r-- | src/include/skalibs/stddjb.h | 1 | ||||
| -rw-r--r-- | src/include/skalibs/strerr.h | 3 |
3 files changed, 20 insertions, 2 deletions
diff --git a/src/include/skalibs/prog.h b/src/include/skalibs/prog.h new file mode 100644 index 0000000..de23e1f --- /dev/null +++ b/src/include/skalibs/prog.h @@ -0,0 +1,18 @@ +/* ISC license. */ + +#ifndef SKALIBS_PROG_H +#define SKALIBS_PROG_H + +#include <stddef.h> +#include <skalibs/types.h> + +extern char const *PROG ; + +#define PROG_pid_len(name) (sizeof(name) + 5 + PID_FMT) + +#define PROG_pid_fill(buf, name) prog_pid_fill(buf, (name), sizeof(name)-1) +#define PROG_pid_set(buf, name) do { PROG_pid_fill(buf, name) ; PROG = buf ; } while (0) + +extern void prog_pid_fill (char *, char const *, size_t) ; + +#endif diff --git a/src/include/skalibs/stddjb.h b/src/include/skalibs/stddjb.h index ab5bcaf..d57a3df 100644 --- a/src/include/skalibs/stddjb.h +++ b/src/include/skalibs/stddjb.h @@ -39,6 +39,7 @@ #include <skalibs/iopause.h> #include <skalibs/lolstdio.h> #include <skalibs/netstring.h> +#include <skalibs/prog.h> #include <skalibs/segfault.h> #include <skalibs/selfpipe.h> #include <skalibs/setgroups.h> diff --git a/src/include/skalibs/strerr.h b/src/include/skalibs/strerr.h index 2448981..2ece01e 100644 --- a/src/include/skalibs/strerr.h +++ b/src/include/skalibs/strerr.h @@ -4,6 +4,7 @@ #define SKALIBS_STRERR_H #include <skalibs/gccattributes.h> +#include <skalibs/prog.h> extern void strerr_warnv (char const *const *, unsigned int) ; extern void strerr_warnvsys (char const *const *, unsigned int) ; @@ -21,8 +22,6 @@ extern void strerr_dievsys(int, char const *const *, unsigned int) gccattr_noret #define strerr_die(e, ...) strerr_dien(e, sizeof(strerr_array(__VA_ARGS__))/sizeof(char const *), __VA_ARGS__) #define strerr_diesys(e, ...) strerr_diensys(e, sizeof(strerr_array(__VA_ARGS__))/sizeof(char const *), __VA_ARGS__) -extern char const *PROG ; - #define strerr_warnwn(n, ...) strerr_warnn((n)+2, PROG, ": warning: ", __VA_ARGS__) #define strerr_warnwnsys(n, ...) strerr_warnnsys((n)+2, PROG, ": warning: ", __VA_ARGS__) #define strerr_warnfn(n, ...) strerr_warnn((n)+2, PROG, ": fatal: ", __VA_ARGS__) |
