From 479f4d574a25fee0d24ffbb6d8b476210c653ea9 Mon Sep 17 00:00:00 2001 From: Allan McRae Date: Tue, 18 Jun 2024 09:24:03 +1000 Subject: [PATCH] Prevent buffer overflow when using a scriptlet shell with a long path Observed in Nixpkgs. Fixes #157. Signed-off-by: Allan McRae --- lib/libalpm/trans.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/libalpm/trans.c b/lib/libalpm/trans.c index 4892820b..ef77e792 100644 --- a/lib/libalpm/trans.c +++ b/lib/libalpm/trans.c @@ -337,7 +337,7 @@ static int grep(const char *fn, const char *needle) int _alpm_runscriptlet(alpm_handle_t *handle, const char *filepath, const char *script, const char *ver, const char *oldver, int is_archive) { - char arg0[64], arg1[3], cmdline[PATH_MAX]; + char arg0[PATH_MAX], arg1[3], cmdline[PATH_MAX]; char *argv[] = { arg0, arg1, cmdline, NULL }; char *tmpdir, *scriptfn = NULL, *scriptpath; int retval = 0;