diff options
author | Laurent Bercot <ska-skaware@skarnet.org> | 2023-12-18 12:09:21 +0000 |
---|---|---|
committer | Laurent Bercot <ska@appnovation.com> | 2023-12-18 12:09:21 +0000 |
commit | 3c645356e5c92fc5faa77e81fab2f16b11cd6242 (patch) | |
tree | 07f8353bdd9106734008379d71099343be8c6d20 /src | |
parent | 865a1f310dbfbf080d4a79cf1f99166d8d5dd71a (diff) | |
download | skalibs-3c645356e5c92fc5faa77e81fab2f16b11cd6242.tar.xz |
Actually add autosurf_name; fix cspawn leak in error path
Signed-off-by: Laurent Bercot <ska@appnovation.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/librandom/autosurf_name.c | 9 | ||||
-rw-r--r-- | src/libstddjb/cspawn.c | 2 |
2 files changed, 10 insertions, 1 deletions
diff --git a/src/librandom/autosurf_name.c b/src/librandom/autosurf_name.c new file mode 100644 index 0000000..b0641c0 --- /dev/null +++ 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 index ea0da90..e0c4bcd 100644 --- 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) ; |