File chrony-remove-chmod.patch of Package chrony

From 54010586aa176b24463c93646492e87f3b1cfd41 Mon Sep 17 00:00:00 2001
From: Miroslav Lichvar <mlichvar@redhat.com>
Date: Wed, 16 Jul 2025 16:19:18 +0200
Subject: [PATCH] socket: remove unused chmod() call

Drop the SCK_FLAG_ALL_PERMISSIONS support from the socket code.
chronyc is now calling chmod() on its socket itself in a hidden
directory to mitigate the unsafe operation.
---
 socket.c | 6 ------
 socket.h | 3 +--
 2 files changed, 1 insertion(+), 8 deletions(-)

diff --git a/socket.c b/socket.c
index 13ea69fb..06cd8821 100644
--- a/socket.c
+++ b/socket.c
@@ -641,12 +641,6 @@ bind_unix_address(int sock_fd, const char *addr, int flags)
     return 0;
   }
 
-  /* Allow access to everyone with access to the directory if requested */
-  if (flags & SCK_FLAG_ALL_PERMISSIONS && chmod(addr, 0666) < 0) {
-    DEBUG_LOG("Could not change permissions of %s : %s", addr, strerror(errno));
-    return 0;
-  }
-
   return 1;
 }
 
diff --git a/socket.h b/socket.h
index 8b178e2f..99192c14 100644
--- a/socket.h
+++ b/socket.h
@@ -34,8 +34,7 @@
 #define SCK_FLAG_BLOCK 1
 #define SCK_FLAG_BROADCAST 2
 #define SCK_FLAG_RX_DEST_ADDR 4
-#define SCK_FLAG_ALL_PERMISSIONS 8
-#define SCK_FLAG_PRIV_BIND 16
+#define SCK_FLAG_PRIV_BIND 8
 
 /* Flags for receiving and sending messages */
 #define SCK_FLAG_MSG_ERRQUEUE 1
-- 
GitLab

openSUSE Build Service is sponsored by