diff options
author | Julian Elischer <julian@FreeBSD.org> | 1998-03-07 00:34:09 +0000 |
---|---|---|
committer | Julian Elischer <julian@FreeBSD.org> | 1998-03-07 00:34:09 +0000 |
commit | e5dbcbbca6f8f604f1c824d5e20feac58d084f74 (patch) | |
tree | 4d4cdc591a1bdf3d03a218fb845fdc4a002ce3c5 /security | |
parent | put 2.65 into ftp.freebsd.org:.../distfiles. (diff) |
PR: 5911
Submitted by: archie@whistle.com (archie cobbs)
take into account interraction between IPDIVERT and SKIP
Notes
Notes:
svn path=/head/; revision=10058
Diffstat (limited to 'security')
-rw-r--r-- | security/skip/files/patch-bf | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/security/skip/files/patch-bf b/security/skip/files/patch-bf index 40c8b6c44f31..0752ad7ffcbe 100644 --- a/security/skip/files/patch-bf +++ b/security/skip/files/patch-bf @@ -1,6 +1,6 @@ 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 ++++ skipsrc-1.0/skip/freebsd/skip_es.c Tue Mar 3 16:58:54 1998 @@ -81,6 +81,11 @@ static unsigned short skip_pktid; static skip_softc_t skip_softc[SKIP_MAX_OPENS]; @@ -13,17 +13,19 @@ diff -ur --unidirectional-new-file skipsrc-1.0.orig/skip/freebsd/skip_es.c skips /* * statistics */ -@@ -252,7 +257,8 @@ +@@ -252,7 +257,10 @@ for (pr = inetdomain.dom_protosw; pr < inetdomain.dom_protoswNPROTOSW; pr++) { - pr->pr_input = skip_ifinput; ++ if (pr->pr_protocol == IPPROTO_DIVERT) ++ continue; + pr->pr_input = + (void (*)(struct mbuf *, int)) skip_ifinput; } splx(s); } -@@ -788,7 +794,11 @@ +@@ -788,7 +796,11 @@ static void skip_inittimers() { @@ -35,7 +37,7 @@ diff -ur --unidirectional-new-file skipsrc-1.0.orig/skip/freebsd/skip_es.c skips } /* skip_uninittimers() -@@ -800,7 +810,12 @@ +@@ -800,7 +812,12 @@ static void skip_uninittimers() { @@ -48,7 +50,7 @@ diff -ur --unidirectional-new-file skipsrc-1.0.orig/skip/freebsd/skip_es.c skips } /* skip_timer() -@@ -819,7 +834,11 @@ +@@ -819,7 +836,11 @@ * run through the key store */ skip_key_iterate(skip_key_check, NULL); @@ -60,7 +62,7 @@ diff -ur --unidirectional-new-file skipsrc-1.0.orig/skip/freebsd/skip_es.c skips } #ifdef notdef -@@ -1718,7 +1737,7 @@ +@@ -1718,7 +1739,7 @@ */ decryptbuf->m_data += iphlen; @@ -69,7 +71,7 @@ diff -ur --unidirectional-new-file skipsrc-1.0.orig/skip/freebsd/skip_es.c skips decryptbuf->m_len, decryptbuf->m_data); } -@@ -2005,7 +2024,7 @@ +@@ -2005,7 +2026,7 @@ if (params.kp_alg) { newip->ip_p = SKIP_NEXT_ESP; } else { @@ -78,7 +80,7 @@ diff -ur --unidirectional-new-file skipsrc-1.0.orig/skip/freebsd/skip_es.c skips } } skip_if->stats.skip_if_raw_out++; -@@ -2097,7 +2116,7 @@ +@@ -2097,7 +2118,7 @@ register skip_param_t *params = &res->params; register struct ip *ip = mtod(original, struct ip *); int rc, s, iphlen; @@ -87,7 +89,7 @@ diff -ur --unidirectional-new-file skipsrc-1.0.orig/skip/freebsd/skip_es.c skips SKIP_PRINT("skip_decrypt_done", params); -@@ -2125,7 +2144,7 @@ +@@ -2125,7 +2146,7 @@ */ outbuf = (res->modes & SKIP_CRYPT_ON) ? m : original; |