diff -ur --unidirectional-new-file skipsrc-1.0.orig/skip/keymgrd/skip_machdep.C work.new/skip/keymgrd/skip_machdep.C
--- skipsrc-1.0.orig/skip/keymgrd/skip_machdep.C	Fri Oct 25 13:12:51 1996
+++ work.new/skip/keymgrd/skip_machdep.C	Tue Jan 25 12:02:52 2000
@@ -303,7 +303,11 @@
 Bstream read_sock(int sock)
 {
 	char buf[65535];
+#if __FreeBSD_version < 400013
 	int len = sizeof(sock_partner);
+#else
+	socklen_t len = sizeof(sock_partner);
+#endif
 	int n;
 
 	n = recvfrom(sock, buf, sizeof(buf), 0,
@@ -324,7 +328,11 @@
 
 void write_sock(int sock, const Bstream& data)
 {
+#if __FreeBSD_version < 400013
 	int len = sizeof(sock_partner);
+#else
+	socklen_t len = sizeof(sock_partner);
+#endif
 	int n;
 
 	n = sendto(sock, (const char *)data.getdatap(),
