commit 7f5475515484885c112dffc51f32db3985acc4d6
Author: Alexey Serbin <alexey@apache.org>
Date:   Thu Sep 12 23:48:20 2019 -0700

    ntp: add SO_REUSEPORT option for NTP server socket
    
    This patch makes the NTP server socket capable of binding to a port
    which is already bound, but not yet listened to.  This is useful
    in scenarios when it's necessary to make chronyd serving NTP requests
    at a port which has been reserved for chronyd by some other process.

diff --git a/ntp_io.c b/ntp_io.c
index ab08372..1ab554d 100644
--- a/ntp_io.c
+++ b/ntp_io.c
@@ -206,6 +206,17 @@ prepare_socket(int family, int port_number, int client_only)
     LOG(LOGS_ERR, "Could not set %s socket option", "SO_REUSEADDR");
     /* Don't quit - we might survive anyway */
   }
+
+  /* Make the socket capable of binding to a port which is already bound,
+   * but not yet listened to. This is useful in scenarios when it's necessary
+   * to make chronyd serving NTP requests at a port which has been reserved
+   * for chronyd by some other process.
+   */
+  if (!client_only && port_number &&
+      setsockopt(sock_fd, SOL_SOCKET, SO_REUSEPORT, (char *)&on_off, sizeof(on_off)) < 0) {
+    LOG(LOGS_ERR, "Could not set %s socket option", "SO_REUSEPORT");
+    /* Don't quit yet - we might survive anyway */
+  }
   
   /* Make the socket capable of sending broadcast pkts - needed for NTP broadcast mode */
   if (!client_only &&
