skalibs

Mirror/fork of https://skarnet.org/software/skalibs/
git clone https://ccx.te2000.cz/git/skalibs
Log | Files | Refs | README | LICENSE

commit 3c645356e5c92fc5faa77e81fab2f16b11cd6242
parent 865a1f310dbfbf080d4a79cf1f99166d8d5dd71a
Author: Laurent Bercot <ska-skaware@skarnet.org>
Date:   Mon, 18 Dec 2023 12:09:21 +0000

 Actually add autosurf_name; fix cspawn leak in error path

Signed-off-by: Laurent Bercot <ska@appnovation.com>

Diffstat:
MNEWS | 1+
Asrc/librandom/autosurf_name.c | 9+++++++++
Msrc/libstddjb/cspawn.c | 2+-
3 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/NEWS b/NEWS @@ -3,6 +3,7 @@ Changelog for skalibs. In 2.14.1.0 ----------- + - Bugfixes. - New socket_sendnb46_g() and socket_recvnb46_g() macros. diff --git a/src/librandom/autosurf_name.c b/src/librandom/autosurf_name.c @@ -0,0 +1,9 @@ +/* ISC license. */ + +#include <skalibs/random.h> +#include <skalibs/surf.h> + +void autosurf_name (char *s, size_t n) +{ + random_name_from(s, n, &autosurf) ; +} diff --git a/src/libstddjb/cspawn.c b/src/libstddjb/cspawn.c @@ -239,7 +239,7 @@ static inline pid_t cspawn_pspawn (char const *prog, char const *const *argv, ch if (nopath && (setenv("PATH", SKALIBS_DEFAULTPATH, 0) == -1)) { e = errno ; goto erractions ; } e = posix_spawnp(&pid, prog, n ? &actions : 0, flags ? &attr : 0, (char *const *)argv, (char *const *)envp) ; if (nopath) unsetenv("PATH") ; - if (e) goto errattr ; + if (e) goto erractions ; if (n) posix_spawn_file_actions_destroy(&actions) ; if (flags) posix_spawnattr_destroy(&attr) ;