diff --git a/lib/ChangeLog b/lib/ChangeLog
index 2ce2302..a4ed5dd 100644
--- a/lib/ChangeLog
+++ b/lib/ChangeLog
@@ -1,3 +1,7 @@
+2004-09-17 Paul Jakma <paul@dishone.st>
+
+	* sockopt.{c,h}: Add setsockopt_so_recvbuf, for ripd and ripngd.
+
 2004-09-13 Paul Jakma <paul@dishone.st>
 
 	* command.c: Update the copyright string in the default motd.
diff --git a/lib/sockopt.c b/lib/sockopt.c
index d0b034f..dbd5df5 100644
--- a/lib/sockopt.c
+++ b/lib/sockopt.c
@@ -23,6 +23,18 @@
 #include "log.h"
 #include "sockopt.h"
 
+int
+setsockopt_so_recvbuf (int sock, int size)
+{
+  int ret;
+  
+  if ( (ret = setsockopt (sock, SOL_SOCKET, SO_RCVBUF, (char *) 
+                          &size, sizeof (int)) < 0);
+    zlog_err ("can't setsockopt SO_RCVBUF");
+
+  return ret;
+}
+
 static void *
 getsockopt_cmsg_data (struct msghdr *msgh, int level, int type)
 {
diff --git a/lib/sockopt.h b/lib/sockopt.h
index 8d775cd..3f4a705 100644
--- a/lib/sockopt.h
+++ b/lib/sockopt.h
@@ -22,6 +22,8 @@
 #ifndef _ZEBRA_SOCKOPT_H
 #define _ZEBRA_SOCKOPT_H
 
+int setsockopt_so_recvbuf (int sock, int size);
+
 #ifdef HAVE_IPV6
 int setsockopt_ipv6_pktinfo (int, int);
 int setsockopt_ipv6_checksum (int, int);
diff --git a/ripd/ChangeLog b/ripd/ChangeLog
index 8ab8a10..1921b78 100644
--- a/ripd/ChangeLog
+++ b/ripd/ChangeLog
@@ -1,3 +1,9 @@
+2004-09-17 Paul Jakma <paul@dishone.st>
+
+	* ripd.c: set receive buffer to a decent size, some systems have low
+	  defaults. Problem noted and fix suggested by Stephan Schweizer
+	  in [zebra 20967].
+
 2004-08-19 Paul Jakma <paul@dishone.st>
 
 	* rip_interface.c: (rip_interface_multicast_set) get rid
diff --git a/ripd/ripd.c b/ripd/ripd.c
index af0e186..5fbb349 100644
--- a/ripd/ripd.c
+++ b/ripd/ripd.c
@@ -42,6 +42,10 @@
 #include "ripd/ripd.h"
 #include "ripd/rip_debug.h"
 
+/* UDP receive buffer size */
+#define RIP_UDP_RCV_BUF 41600
+
+/* privileges global */
 extern struct zebra_privs_t ripd_privs;
 
 /* RIP Structure. */
@@ -1977,6 +1981,7 @@
   sockopt_broadcast (sock);
   sockopt_reuseaddr (sock);
   sockopt_reuseport (sock);
+  setsockopt_so_recvbuf (sock, RIP_UDP_RCV_BUF);
 #ifdef RIP_RECVMSG
   setsockopt_pktinfo (sock);
 #endif /* RIP_RECVMSG */
diff --git a/ripngd/ChangeLog b/ripngd/ChangeLog
index 6b05f3d..64ee7d8 100644
--- a/ripngd/ChangeLog
+++ b/ripngd/ChangeLog
@@ -1,3 +1,7 @@
+2004-09-17 Paul Jakma <paul@dishone.st>
+
+	* ripngd.c: move setsockopt_so_recvbuf to lib.
+
 2004-07-23  Hasso Tepper  <hasso@estpak.ee>
 
 	* ripng_interface.c, ripng_nexthop.c: use ifp->mtu6 instead of
diff --git a/ripngd/ripngd.c b/ripngd/ripngd.c
index b1edd6f..77e4754 100644
--- a/ripngd/ripngd.c
+++ b/ripngd/ripngd.c
@@ -107,17 +107,6 @@
   XFREE (MTYPE_RIPNG_ROUTE, rinfo);
 }
 
-static int
-setsockopt_so_recvbuf (int sock, int size)
-{
-  int ret;
-
-  ret = setsockopt (sock, SOL_SOCKET, SO_RCVBUF, (char *) &size, sizeof (int));
-  if (ret < 0)
-    zlog (NULL, LOG_ERR, "can't setsockopt SO_RCVBUF");
-  return ret;
-}
-
 /* Create ripng socket. */
 int 
 ripng_make_socket (void)
