From 5ad97b1c7eb853a921e0167e6bfcb6b1815b4fa4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johan=20Str=C3=B6m?= Date: Fri, 15 Aug 2014 09:41:37 +0200 Subject: Use-after-free fix --- fcgiwrap.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/fcgiwrap.c b/fcgiwrap.c index a2c88af..3c36cf7 100644 --- a/fcgiwrap.c +++ b/fcgiwrap.c @@ -853,7 +853,6 @@ int main(int argc, char **argv) if (setup_socket(socket_url, &fd) < 0) { return 1; } - free(socket_url); } prefork(nchildren); @@ -863,9 +862,12 @@ int main(int argc, char **argv) const char *p = socket_url; close(fd); - if (!strncmp(p, "unix:", sizeof("unix:") - 1)) { - p += sizeof("unix:") - 1; - unlink(p); + if(socket_url) { + if (!strncmp(p, "unix:", sizeof("unix:") - 1)) { + p += sizeof("unix:") - 1; + unlink(p); + } + free(socket_url); } } return 0; -- cgit v1.2.3