]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
homed,userdb: don't use sockaddr_un_set_path() on fixed addresses
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Mon, 2 Mar 2020 14:53:14 +0000 (15:53 +0100)
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Mon, 2 Mar 2020 14:56:30 +0000 (15:56 +0100)
Let's use structured initialization and let the compiler do its job.

src/home/homed-manager.c
src/userdb/userdbd-manager.c

index bbe227ce709bad4ca991986828f07efa4a55f2a9..5d77760f215160855fdd086741710459cb0098c6 100644 (file)
@@ -1056,7 +1056,10 @@ static int on_notify_socket(sd_event_source *s, int fd, uint32_t revents, void *
 
 static int manager_listen_notify(Manager *m) {
         _cleanup_close_ int fd = -1;
-        union sockaddr_union sa;
+        union sockaddr_union sa = {
+                .un.sun_family = AF_UNIX,
+                .un.sun_path = "/run/systemd/home/notify",
+        };
         int r;
 
         assert(m);
@@ -1066,10 +1069,6 @@ static int manager_listen_notify(Manager *m) {
         if (fd < 0)
                 return log_error_errno(errno, "Failed to create listening socket: %m");
 
-        r = sockaddr_un_set_path(&sa.un, "/run/systemd/home/notify");
-        if (r < 0)
-                return log_error_errno(r, "Failed to set AF_UNIX socket path: %m");
-
         (void) mkdir_parents(sa.un.sun_path, 0755);
         (void) sockaddr_un_unlink(&sa.un);
 
index dec8b289a33e379071f2afa194efb87fa3769c9f..060285783f1135d40a74933c81f11509a9d24959 100644 (file)
@@ -265,11 +265,10 @@ int manager_startup(Manager *m) {
         if (n == 1)
                 m->listen_fd = SD_LISTEN_FDS_START;
         else {
-                union sockaddr_union sockaddr;
-
-                r = sockaddr_un_set_path(&sockaddr.un, "/run/systemd/userdb/io.systemd.NameServiceSwitch");
-                if (r < 0)
-                        return log_error_errno(r, "Cannot assign socket path to socket address: %m");
+                union sockaddr_union sockaddr = {
+                        .un.sun_family = AF_UNIX,
+                        .un.sun_path = "/run/systemd/userdb/io.systemd.NameServiceSwitch",
+                };
 
                 r = mkdir_p("/run/systemd/userdb", 0755);
                 if (r < 0)