From fddc8d2187c3189fd82eef8391be56a58a842849 Mon Sep 17 00:00:00 2001 From: Christopher Brannon Date: Sat, 3 Mar 2018 03:16:12 -0800 Subject: [PATCH] runit: fix segfault in svlogd discovered on armv7hf-musl. Code in svlogd.c allocates some memory at startup which is not zeroed, and other code was using those garbage values. I have no idea why this has never caused a problem before, but for me, svlogd consistently segfaults on armv7hf-musl when it is called by socklog. --- srcpkgs/runit/patches/clearmem.patch | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 srcpkgs/runit/patches/clearmem.patch diff --git a/srcpkgs/runit/patches/clearmem.patch b/srcpkgs/runit/patches/clearmem.patch new file mode 100644 index 00000000000..1a061eee0fa --- /dev/null +++ b/srcpkgs/runit/patches/clearmem.patch @@ -0,0 +1,11 @@ +diff -Naur runit-2.1.2/src/svlogd.c runit-2.1.2/src/svlogd.c +--- runit-2.1.2/src/svlogd.c 2014-08-10 11:22:34.000000000 -0700 ++++ runit-2.1.2/src/svlogd.c 2018-03-03 03:28:08.243085845 -0800 +@@ -705,6 +705,7 @@ + coe(fdwdir); + dir =(struct logdir*)alloc(dirn *sizeof(struct logdir)); + if (! dir) die_nomem(); ++ memset(dir, 0, dirn * sizeof(struct logdir)); + for (i =0; i < dirn; ++i) { + dir[i].fddir =-1; dir[i].fdcur =-1; + dir[i].btmp =(char*)alloc(buflen *sizeof(char));