Note chmod() failure in debug log even in ignore case (CID 62843)
authorJouni Malinen <j@w1.fi>
Fri, 13 Jun 2014 22:20:18 +0000 (01:20 +0300)
committerJouni Malinen <j@w1.fi>
Sat, 14 Jun 2014 09:32:52 +0000 (12:32 +0300)
If this chmod() call fails, the global control interface is allowed to
be used since there was no change to its group. Anyway, it can be
helpful to note the error case in debug log instead of silently ignoring
it.

Signed-off-by: Jouni Malinen <j@w1.fi>
wpa_supplicant/ctrl_iface_unix.c

index d4e45de..40082e2 100644 (file)
@@ -990,7 +990,13 @@ static int wpas_global_ctrl_iface_open_sock(struct wpa_global *global,
                        goto fail;
                }
        } else {
-               chmod(ctrl, S_IRWXU);
+               if (chmod(ctrl, S_IRWXU) < 0) {
+                       wpa_printf(MSG_DEBUG,
+                                  "chmod[global_ctrl_interface=%s](S_IRWXU): %s",
+                                  ctrl, strerror(errno));
+                       /* continue anyway since group change was not required
+                        */
+               }
        }
 
 havesock: