--- lib/sockopt.c.orig	Tue Jan  4 10:03:36 2005
+++ lib/sockopt.c	Fri Jan 28 17:52:57 2005
@@ -243,6 +243,32 @@
 
 }
 
+int
+sockopt_tcp_signature (int family, int sock, int enable)
+{
+  int ret;
+
+#if defined(QUAGGA_TCP_MD5SIG) && defined(TCP_MD5SIG)
+  if (family == AF_INET)
+    {
+      ret = setsockopt (sock, IPPROTO_TCP, TCP_MD5SIG,
+                        (void *) &enable, sizeof (int));
+      if (ret < 0)
+        {
+          zlog (NULL, LOG_WARNING, "can't set sockopt TCP_MD5SIG %d to socket %d", enable, sock);
+          return -1;
+        }
+      return 0;
+    }
+#endif /* QUAGGA_TCP_MD5SIG */
+
+  /* fallthrough */
+
+  zlog (NULL, LOG_WARNING, "can't set sockopt TCP_MD5SIG on socket %d with family %d",
+                 sock, family);
+  return -1;
+}
+
 static int
 setsockopt_ipv4_ifindex (int sock, int val)
 {


syntax highlighted by Code2HTML, v. 0.9.1