diff --git a/lib/sockopt.h b/lib/sockopt.h
index df199c1..d88bfa6 100644
--- a/lib/sockopt.h
+++ b/lib/sockopt.h
@@ -22,15 +22,15 @@
 #ifndef _ZEBRA_SOCKOPT_H
 #define _ZEBRA_SOCKOPT_H
 
-int setsockopt_so_recvbuf (int sock, int size);
+extern int setsockopt_so_recvbuf (int sock, int size);
 
 #ifdef HAVE_IPV6
-int setsockopt_ipv6_pktinfo (int, int);
-int setsockopt_ipv6_checksum (int, int);
-int setsockopt_ipv6_multicast_hops (int, int);
-int setsockopt_ipv6_unicast_hops (int, int);
-int setsockopt_ipv6_hoplimit (int, int);
-int setsockopt_ipv6_multicast_loop (int, int);
+extern int setsockopt_ipv6_pktinfo (int, int);
+extern int setsockopt_ipv6_checksum (int, int);
+extern int setsockopt_ipv6_multicast_hops (int, int);
+extern int setsockopt_ipv6_unicast_hops (int, int);
+extern int setsockopt_ipv6_hoplimit (int, int);
+extern int setsockopt_ipv6_multicast_loop (int, int);
 #endif /* HAVE_IPV6 */
 
 /*
@@ -78,20 +78,19 @@
   (((af) == AF_INET) : SOPT_SIZE_CMSG_IFINDEX_IPV4() \
                     ? SOPT_SIZE_CMSG_PKTINFO_IPV6())
 
-int setsockopt_multicast_ipv4(int sock, 
-			     int optname, 
-			     struct in_addr if_addr,
-			     unsigned int mcast_addr,
-			     unsigned int ifindex);
+extern int setsockopt_multicast_ipv4(int sock, int optname, 
+			             struct in_addr if_addr,
+                                     unsigned int mcast_addr,
+			             unsigned int ifindex);
 
 /* Ask for, and get, ifindex, by whatever method is supported. */
-int setsockopt_ifindex (int, int, int);
-int getsockopt_ifindex (int, struct msghdr *);
+extern int setsockopt_ifindex (int, int, int);
+extern int getsockopt_ifindex (int, struct msghdr *);
 
 /* swab the fields in iph between the host order and system order expected 
  * for IP_HDRINCL.
  */
-void sockopt_iphdrincl_swab_htosys (struct ip *iph);
-void sockopt_iphdrincl_swab_systoh (struct ip *iph);
+extern void sockopt_iphdrincl_swab_htosys (struct ip *iph);
+extern void sockopt_iphdrincl_swab_systoh (struct ip *iph);
 
 #endif /*_ZEBRA_SOCKOPT_H */
