]> git.ipfire.org Git - thirdparty/dhcpcd.git/commitdiff
Linux: more freeifaddrs
authorRoy Marples <roy@marples.name>
Fri, 5 Jun 2020 13:28:27 +0000 (14:28 +0100)
committerRoy Marples <roy@marples.name>
Fri, 5 Jun 2020 13:28:27 +0000 (14:28 +0100)
src/dhcpcd.c

index 2dbfb4ed278f3142d2947a2d02ccc86c6301ede6..c0f3a0d6c4881e775ec82a5e7d0aef5dc847c880 100644 (file)
@@ -2438,11 +2438,17 @@ exit_failure:
 exit1:
        if (control_stop(&ctx) == -1)
                logerr("%s: control_stop", __func__);
+       if (ifaddrs != NULL) {
+#ifdef PRIVSEP_GETIFADDRS
+               if (IN_PRIVSEP(&ctx))
+                       free(ifaddrs);
+               else
+#endif
+                       freeifaddrs(ifaddrs);
+       }
 #ifdef PRIVSEP
        ps_stop(&ctx);
 #endif
-       if (ifaddrs != NULL)
-               freeifaddrs(ifaddrs);
        /* Free memory and close fd's */
        if (ctx.ifaces) {
                while ((ifp = TAILQ_FIRST(ctx.ifaces))) {