<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">Apply by doing:
        cd /usr
        patch -p0 &lt; 001_pfkey.patch

And then rebuild your kernel.

Index: src/sys/net/pfkey.c
diff -u src/sys/net/pfkey.c:1.4 src/sys/net/pfkey.c:1.5
--- src/sys/net/pfkey.c:1.4	Sun Apr 11 13:41:35 1999
+++ src/sys/net/pfkey.c	Mon May  3 16:30:27 1999
@@ -117,22 +117,36 @@
 pfkey_output(struct mbuf *mbuf, struct socket *socket)
 {
   void *message;
+  int error = 0;
 
 #if DIAGNOSTIC
-  if (!mbuf || !(mbuf-&gt;m_flags &amp; M_PKTHDR)) 
-    return EINVAL;
+  if (!mbuf || !(mbuf-&gt;m_flags &amp; M_PKTHDR)) {
+    error = EINVAL;
+    goto ret;
+  }
 #endif /* DIAGNOSTIC */
 
-  if (mbuf-&gt;m_pkthdr.len &gt; PFKEY_MSG_MAXSZ)
-    return EMSGSIZE;
+  if (mbuf-&gt;m_pkthdr.len &gt; PFKEY_MSG_MAXSZ) {
+    error = EMSGSIZE;
+    goto ret;
+  }
 
   if (!(message = malloc((unsigned long) mbuf-&gt;m_pkthdr.len, M_TEMP,
-			 M_DONTWAIT)))
-    return ENOMEM;
+			 M_DONTWAIT))) {
+    error = ENOMEM;
+    goto ret;
+  }
 
   m_copydata(mbuf, 0, mbuf-&gt;m_pkthdr.len, message);
 
-  return pfkey_versions[socket-&gt;so_proto-&gt;pr_protocol]-&gt;send(socket, message, mbuf-&gt;m_pkthdr.len);
+  error =
+    pfkey_versions[socket-&gt;so_proto-&gt;pr_protocol]-&gt;send(socket, message,
+							mbuf-&gt;m_pkthdr.len);
+
+ ret:
+  if (mbuf)
+    m_freem (mbuf);
+  return error;
 }
 
 static int
</pre></body></html>