From 06b4450e97ee44a08e3fb61ed3eeac035cd35c0e Mon Sep 17 00:00:00 2001 From: Laurent Bercot Date: Tue, 28 Oct 2025 20:59:39 +0000 Subject: Add envexec.h, reorganize headers and some sources (gol.h wasn't included in skalibs.h) --- src/include/skalibs/envexec.h | 11 +++++++++++ src/include/skalibs/skalibs.h | 2 +- src/include/skalibs/stddjb.h | 3 --- src/libenvexec/prog.c | 7 +++++++ src/libenvexec/prog_pid_fill.c | 15 +++++++++++++++ src/libenvexec/strerr_diev.c | 13 +++++++++++++ src/libenvexec/strerr_dievsys.c | 13 +++++++++++++ src/libenvexec/strerr_warnv.c | 17 +++++++++++++++++ src/libenvexec/strerr_warnvsys.c | 20 ++++++++++++++++++++ src/libstddjb/prog.c | 7 ------- src/libstddjb/prog_pid_fill.c | 15 --------------- src/libstddjb/strerr_diev.c | 13 ------------- src/libstddjb/strerr_dievsys.c | 13 ------------- src/libstddjb/strerr_warnv.c | 17 ----------------- src/libstddjb/strerr_warnvsys.c | 20 -------------------- 15 files changed, 97 insertions(+), 89 deletions(-) create mode 100644 src/include/skalibs/envexec.h create mode 100644 src/libenvexec/prog.c create mode 100644 src/libenvexec/prog_pid_fill.c create mode 100644 src/libenvexec/strerr_diev.c create mode 100644 src/libenvexec/strerr_dievsys.c create mode 100644 src/libenvexec/strerr_warnv.c create mode 100644 src/libenvexec/strerr_warnvsys.c delete mode 100644 src/libstddjb/prog.c delete mode 100644 src/libstddjb/prog_pid_fill.c delete mode 100644 src/libstddjb/strerr_diev.c delete mode 100644 src/libstddjb/strerr_dievsys.c delete mode 100644 src/libstddjb/strerr_warnv.c delete mode 100644 src/libstddjb/strerr_warnvsys.c (limited to 'src') diff --git a/src/include/skalibs/envexec.h b/src/include/skalibs/envexec.h new file mode 100644 index 0000000..efd6e30 --- /dev/null +++ b/src/include/skalibs/envexec.h @@ -0,0 +1,11 @@ +/* ISC license. */ + +#ifndef SKALIBS_ENVEXEC_H +#define SKALIBS_ENVEXEC_H + +#include +#include +#include +#include + +#endif diff --git a/src/include/skalibs/skalibs.h b/src/include/skalibs/skalibs.h index 71ce9a2..b5cf1a6 100644 --- a/src/include/skalibs/skalibs.h +++ b/src/include/skalibs/skalibs.h @@ -15,8 +15,8 @@ #include #include +#include #include -#include #include #include #include diff --git a/src/include/skalibs/stddjb.h b/src/include/skalibs/stddjb.h index edb5d58..2575b06 100644 --- a/src/include/skalibs/stddjb.h +++ b/src/include/skalibs/stddjb.h @@ -28,8 +28,6 @@ #include #include #include -#include -#include #include #include #include @@ -39,7 +37,6 @@ #include #include #include -#include #include #include #include diff --git a/src/libenvexec/prog.c b/src/libenvexec/prog.c new file mode 100644 index 0000000..3c5f7f5 --- /dev/null +++ b/src/libenvexec/prog.c @@ -0,0 +1,7 @@ +/* ISC license. */ + +/* MT-unsafe */ + +#include + +char const *PROG = "(none)" ; diff --git a/src/libenvexec/prog_pid_fill.c b/src/libenvexec/prog_pid_fill.c new file mode 100644 index 0000000..cec63b8 --- /dev/null +++ b/src/libenvexec/prog_pid_fill.c @@ -0,0 +1,15 @@ +/* ISC license. */ + +#include +#include + +#include +#include + +void prog_pid_fill (char *s, char const *name, size_t len) +{ + memcpy(s, name, len) ; s += len ; + memcpy(s, ": pid ", 6) ; s += 6 ; + s += pid_fmt(s, getpid()) ; + *s++ = 0 ; +} diff --git a/src/libenvexec/strerr_diev.c b/src/libenvexec/strerr_diev.c new file mode 100644 index 0000000..bf1e8fc --- /dev/null +++ b/src/libenvexec/strerr_diev.c @@ -0,0 +1,13 @@ +/* ISC license. */ + +/* MT-unsafe */ + +#include + +#include + +void strerr_diev (int e, char const *const *v, unsigned int n) +{ + strerr_warnv(v, n) ; + _exit(e) ; +} diff --git a/src/libenvexec/strerr_dievsys.c b/src/libenvexec/strerr_dievsys.c new file mode 100644 index 0000000..10437f9 --- /dev/null +++ b/src/libenvexec/strerr_dievsys.c @@ -0,0 +1,13 @@ +/* ISC license. */ + +/* MT-unsafe */ + +#include + +#include + +void strerr_dievsys (int e, char const *const *v, unsigned int n) +{ + strerr_warnvsys(v, n) ; + _exit(e) ; +} diff --git a/src/libenvexec/strerr_warnv.c b/src/libenvexec/strerr_warnv.c new file mode 100644 index 0000000..f59cfe9 --- /dev/null +++ b/src/libenvexec/strerr_warnv.c @@ -0,0 +1,17 @@ +/* ISC license. */ + +/* MT-unsafe */ + +#include + +#include +#include + +void strerr_warnv (char const *const *v, unsigned int n) +{ + int e = errno ; + for (unsigned int i = 0 ; i < n ; i++) + if (v[i]) buffer_puts(buffer_2, v[i]) ; + buffer_putflush(buffer_2, "\n", 1) ; + errno = e ; +} diff --git a/src/libenvexec/strerr_warnvsys.c b/src/libenvexec/strerr_warnvsys.c new file mode 100644 index 0000000..fcab1b8 --- /dev/null +++ b/src/libenvexec/strerr_warnvsys.c @@ -0,0 +1,20 @@ +/* ISC license. */ + +/* MT-unsafe */ + +#include +#include + +#include +#include + +void strerr_warnvsys (char const *const *v, unsigned int n) +{ + int e = errno ; + for (unsigned int i = 0 ; i < n ; i++) + if (v[i]) buffer_puts(buffer_2, v[i]) ; + buffer_put(buffer_2, ": ", 2) ; + buffer_puts(buffer_2, strerror(e)) ; + buffer_putflush(buffer_2, "\n", 1) ; + errno = e ; +} diff --git a/src/libstddjb/prog.c b/src/libstddjb/prog.c deleted file mode 100644 index 3c5f7f5..0000000 --- a/src/libstddjb/prog.c +++ /dev/null @@ -1,7 +0,0 @@ -/* ISC license. */ - -/* MT-unsafe */ - -#include - -char const *PROG = "(none)" ; diff --git a/src/libstddjb/prog_pid_fill.c b/src/libstddjb/prog_pid_fill.c deleted file mode 100644 index cec63b8..0000000 --- a/src/libstddjb/prog_pid_fill.c +++ /dev/null @@ -1,15 +0,0 @@ -/* ISC license. */ - -#include -#include - -#include -#include - -void prog_pid_fill (char *s, char const *name, size_t len) -{ - memcpy(s, name, len) ; s += len ; - memcpy(s, ": pid ", 6) ; s += 6 ; - s += pid_fmt(s, getpid()) ; - *s++ = 0 ; -} diff --git a/src/libstddjb/strerr_diev.c b/src/libstddjb/strerr_diev.c deleted file mode 100644 index bf1e8fc..0000000 --- a/src/libstddjb/strerr_diev.c +++ /dev/null @@ -1,13 +0,0 @@ -/* ISC license. */ - -/* MT-unsafe */ - -#include - -#include - -void strerr_diev (int e, char const *const *v, unsigned int n) -{ - strerr_warnv(v, n) ; - _exit(e) ; -} diff --git a/src/libstddjb/strerr_dievsys.c b/src/libstddjb/strerr_dievsys.c deleted file mode 100644 index 10437f9..0000000 --- a/src/libstddjb/strerr_dievsys.c +++ /dev/null @@ -1,13 +0,0 @@ -/* ISC license. */ - -/* MT-unsafe */ - -#include - -#include - -void strerr_dievsys (int e, char const *const *v, unsigned int n) -{ - strerr_warnvsys(v, n) ; - _exit(e) ; -} diff --git a/src/libstddjb/strerr_warnv.c b/src/libstddjb/strerr_warnv.c deleted file mode 100644 index f59cfe9..0000000 --- a/src/libstddjb/strerr_warnv.c +++ /dev/null @@ -1,17 +0,0 @@ -/* ISC license. */ - -/* MT-unsafe */ - -#include - -#include -#include - -void strerr_warnv (char const *const *v, unsigned int n) -{ - int e = errno ; - for (unsigned int i = 0 ; i < n ; i++) - if (v[i]) buffer_puts(buffer_2, v[i]) ; - buffer_putflush(buffer_2, "\n", 1) ; - errno = e ; -} diff --git a/src/libstddjb/strerr_warnvsys.c b/src/libstddjb/strerr_warnvsys.c deleted file mode 100644 index fcab1b8..0000000 --- a/src/libstddjb/strerr_warnvsys.c +++ /dev/null @@ -1,20 +0,0 @@ -/* ISC license. */ - -/* MT-unsafe */ - -#include -#include - -#include -#include - -void strerr_warnvsys (char const *const *v, unsigned int n) -{ - int e = errno ; - for (unsigned int i = 0 ; i < n ; i++) - if (v[i]) buffer_puts(buffer_2, v[i]) ; - buffer_put(buffer_2, ": ", 2) ; - buffer_puts(buffer_2, strerror(e)) ; - buffer_putflush(buffer_2, "\n", 1) ; - errno = e ; -} -- cgit v1.3.1