aboutsummaryrefslogtreecommitdiff
path: root/security/skip/files/patch-bf
diff options
context:
space:
mode:
Diffstat (limited to 'security/skip/files/patch-bf')
-rw-r--r--security/skip/files/patch-bf98
1 files changed, 98 insertions, 0 deletions
diff --git a/security/skip/files/patch-bf b/security/skip/files/patch-bf
new file mode 100644
index 000000000000..40c8b6c44f31
--- /dev/null
+++ b/security/skip/files/patch-bf
@@ -0,0 +1,98 @@
+diff -ur --unidirectional-new-file skipsrc-1.0.orig/skip/freebsd/skip_es.c skipsrc-1.0/skip/freebsd/skip_es.c
+--- skipsrc-1.0.orig/skip/freebsd/skip_es.c Fri Oct 25 13:12:42 1996
++++ skipsrc-1.0/skip/freebsd/skip_es.c Mon Dec 15 17:41:37 1997
+@@ -81,6 +81,11 @@
+ static unsigned short skip_pktid;
+ static skip_softc_t skip_softc[SKIP_MAX_OPENS];
+
++#ifdef NEW_TIMEOUT_INTERFACE
++static struct callout_handle
++ skip_timeout_handle = CALLOUT_HANDLE_INITIALIZER(&skip_timeout_handle);
++#endif
++
+ /*
+ * statistics
+ */
+@@ -252,7 +257,8 @@
+ for (pr = inetdomain.dom_protosw;
+ pr < inetdomain.dom_protoswNPROTOSW; pr++) {
+
+- pr->pr_input = skip_ifinput;
++ pr->pr_input =
++ (void (*)(struct mbuf *, int)) skip_ifinput;
+ }
+ splx(s);
+ }
+@@ -788,7 +794,11 @@
+ static void
+ skip_inittimers()
+ {
++#ifdef NEW_TIMEOUT_INTERFACE
++ skip_timeout_handle = timeout(skip_timer, NULL, skip_key_tick * hz);
++#else
+ timeout(skip_timer, NULL, skip_key_tick * hz);
++#endif
+ }
+
+ /* skip_uninittimers()
+@@ -800,7 +810,12 @@
+ static void
+ skip_uninittimers()
+ {
++#ifdef NEW_TIMEOUT_INTERFACE
++ untimeout(skip_timer, NULL, skip_timeout_handle);
++ callout_handle_init(&skip_timeout_handle);
++#else
+ untimeout(skip_timer, NULL);
++#endif
+ }
+
+ /* skip_timer()
+@@ -819,7 +834,11 @@
+ * run through the key store
+ */
+ skip_key_iterate(skip_key_check, NULL);
++#ifdef NEW_TIMEOUT_INTERFACE
++ skip_timeout_handle = timeout(skip_timer, NULL, skip_key_tick * hz);
++#else
+ timeout(skip_timer, NULL, skip_key_tick * hz);
++#endif
+ }
+
+ #ifdef notdef
+@@ -1718,7 +1737,7 @@
+ */
+ decryptbuf->m_data += iphlen;
+
+- SKIP_DEBUG2("skip_ifinput: decryptbuf m_len=%d m_data=%d\n",
++ SKIP_DEBUG2("skip_ifinput: decryptbuf m_len=%d m_data=%p\n",
+ decryptbuf->m_len, decryptbuf->m_data);
+
+ }
+@@ -2005,7 +2024,7 @@
+ if (params.kp_alg) {
+ newip->ip_p = SKIP_NEXT_ESP;
+ } else {
+- newip->ip_p = IPPROTO_ENCAP;
++ newip->ip_p = IPPROTO_IPIP;
+ }
+ }
+ skip_if->stats.skip_if_raw_out++;
+@@ -2097,7 +2116,7 @@
+ register skip_param_t *params = &res->params;
+ register struct ip *ip = mtod(original, struct ip *);
+ int rc, s, iphlen;
+- struct mbuf *outbuf, *new_hdr;
++ struct mbuf *outbuf;
+
+ SKIP_PRINT("skip_decrypt_done", params);
+
+@@ -2125,7 +2144,7 @@
+ */
+ outbuf = (res->modes & SKIP_CRYPT_ON) ? m : original;
+
+- if (res->proto != IPPROTO_ENCAP) {
++ if (res->proto != IPPROTO_IPIP) {
+ /*
+ * transport mode, need to copy original IP header
+ */