From f369f47c264dd56f630e91697006efd647542feb Mon Sep 17 00:00:00 2001 From: David Tardon Date: Tue, 9 Oct 2018 15:04:58 +0200 Subject: [PATCH] be consistent about sun_path length Most places use the whole buffer for name, without leaving extra space for the trailing NUL. --- src/core/manager.c | 2 +- src/login/pam_systemd.c | 2 +- src/nspawn/nspawn.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/core/manager.c b/src/core/manager.c index 2dea89dc01..446648a265 100644 --- a/src/core/manager.c +++ b/src/core/manager.c @@ -892,7 +892,7 @@ static int manager_setup_notify(Manager *m) { (void) mkdir_parents_label(m->notify_socket, 0755); (void) unlink(m->notify_socket); - strncpy(sa.un.sun_path, m->notify_socket, sizeof(sa.un.sun_path)-1); + strncpy(sa.un.sun_path, m->notify_socket, sizeof(sa.un.sun_path)); r = bind(fd, &sa.sa, SOCKADDR_UN_LEN(sa.un)); if (r < 0) return log_error_errno(errno, "bind(%s) failed: %m", sa.un.sun_path); diff --git a/src/login/pam_systemd.c b/src/login/pam_systemd.c index 8464df122c..90ccbd7a83 100644 --- a/src/login/pam_systemd.c +++ b/src/login/pam_systemd.c @@ -160,7 +160,7 @@ static int get_seat_from_display(const char *display, const char **seat, uint32_ r = socket_from_display(display, &p); if (r < 0) return r; - strncpy(sa.un.sun_path, p, sizeof(sa.un.sun_path)-1); + strncpy(sa.un.sun_path, p, sizeof(sa.un.sun_path)); fd = socket(AF_UNIX, SOCK_STREAM|SOCK_CLOEXEC, 0); if (fd < 0) diff --git a/src/nspawn/nspawn.c b/src/nspawn/nspawn.c index 27547051c8..134c4c3b5d 100644 --- a/src/nspawn/nspawn.c +++ b/src/nspawn/nspawn.c @@ -2826,7 +2826,7 @@ static int setup_sd_notify_child(void) { (void) mkdir_parents(NSPAWN_NOTIFY_SOCKET_PATH, 0755); (void) unlink(NSPAWN_NOTIFY_SOCKET_PATH); - strncpy(sa.un.sun_path, NSPAWN_NOTIFY_SOCKET_PATH, sizeof(sa.un.sun_path)-1); + strncpy(sa.un.sun_path, NSPAWN_NOTIFY_SOCKET_PATH, sizeof(sa.un.sun_path)); r = bind(fd, &sa.sa, SOCKADDR_UN_LEN(sa.un)); if (r < 0) { safe_close(fd);