aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--security/skip/files/patch-bl51
1 files changed, 31 insertions, 20 deletions
diff --git a/security/skip/files/patch-bl b/security/skip/files/patch-bl
index 36c0024ad23c..ab2f351fc630 100644
--- a/security/skip/files/patch-bl
+++ b/security/skip/files/patch-bl
@@ -1,6 +1,5 @@
-diff -ur --unidirectional-new-file skipsrc-1.0.orig/skip/freebsd/skip_es.c work.new/skip/freebsd/skip_es.c
---- skipsrc-1.0.orig/skip/freebsd/skip_es.c Fri Oct 25 13:12:42 1996
-+++ work.new/skip/freebsd/skip_es.c Tue Mar 9 20:40:23 1999
+--- skipsrc.orig/skip/freebsd/skip_es.c Fri Oct 25 13:12:42 1996
++++ work/skip/freebsd/skip_es.c Sat May 15 17:05:09 1999
@@ -81,6 +81,11 @@
static unsigned short skip_pktid;
static skip_softc_t skip_softc[SKIP_MAX_OPENS];
@@ -83,7 +82,19 @@ diff -ur --unidirectional-new-file skipsrc-1.0.orig/skip/freebsd/skip_es.c work.
{
register int s;
if (skip_busy || skip_keys_stats.skip_encrypt_keys_active
-@@ -422,27 +432,30 @@
+@@ -319,7 +329,11 @@
+ major(dev), flags);
+ #endif
+
++#if __FreeBSD_version < 400005
+ if (suser(p->p_ucred, &p->p_acflag )) {
++#else
++ if (suser(p)) {
++#endif
+ return (EPERM);
+ }
+ if (minor(dev) >= SKIP_MAX_OPENS) {
+@@ -422,27 +436,30 @@
* Returns: 0 if no data available, 1 otherwise
*/
int
@@ -124,7 +135,7 @@ diff -ur --unidirectional-new-file skipsrc-1.0.orig/skip/freebsd/skip_es.c work.
}
/* skip_ifread()
-@@ -786,9 +799,9 @@
+@@ -786,9 +803,9 @@
* Returns: None
*/
static void
@@ -136,7 +147,7 @@ diff -ur --unidirectional-new-file skipsrc-1.0.orig/skip/freebsd/skip_es.c work.
}
/* skip_uninittimers()
-@@ -798,9 +811,10 @@
+@@ -798,9 +815,10 @@
* Returns: None
*/
static void
@@ -149,7 +160,7 @@ diff -ur --unidirectional-new-file skipsrc-1.0.orig/skip/freebsd/skip_es.c work.
}
/* skip_timer()
-@@ -812,14 +826,13 @@
+@@ -812,14 +830,13 @@
*/
/*ARGSUSED*/
static void
@@ -166,7 +177,7 @@ diff -ur --unidirectional-new-file skipsrc-1.0.orig/skip/freebsd/skip_es.c work.
}
#ifdef notdef
-@@ -846,6 +859,7 @@
+@@ -846,6 +863,7 @@
}
#endif
@@ -174,7 +185,7 @@ diff -ur --unidirectional-new-file skipsrc-1.0.orig/skip/freebsd/skip_es.c work.
void
skip_dump_buf(char *what, unsigned char *p, int len)
{
-@@ -857,7 +871,9 @@
+@@ -857,7 +875,9 @@
}
printf("].\n");
}
@@ -184,7 +195,7 @@ diff -ur --unidirectional-new-file skipsrc-1.0.orig/skip/freebsd/skip_es.c work.
void
skip_dump_ip(struct ip *ip)
{
-@@ -878,6 +894,7 @@
+@@ -878,6 +898,7 @@
ip->ip_ttl, ip->ip_p, ntohs(ip->ip_sum));
}
@@ -192,7 +203,7 @@ diff -ur --unidirectional-new-file skipsrc-1.0.orig/skip/freebsd/skip_es.c work.
/*
* SKIP Ioctl and Interface management routines
-@@ -1107,7 +1124,7 @@
+@@ -1107,7 +1128,7 @@
int
skip_ifioctl(dev, cmd, data, fflag, p)
dev_t dev;
@@ -201,7 +212,7 @@ diff -ur --unidirectional-new-file skipsrc-1.0.orig/skip/freebsd/skip_es.c work.
caddr_t data;
int fflag;
struct proc *p;
-@@ -1390,7 +1407,6 @@
+@@ -1390,7 +1411,6 @@
skip_es_t *skip_if;
int iphlen, hdrlen = 0;
struct mbuf *decryptbuf = NULL;
@@ -209,7 +220,7 @@ diff -ur --unidirectional-new-file skipsrc-1.0.orig/skip/freebsd/skip_es.c work.
skip_param_t params;
skip_hdr_t skip_hdr;
skip_es_hash_t *entry, **acl;
-@@ -1718,7 +1734,7 @@
+@@ -1718,7 +1738,7 @@
*/
decryptbuf->m_data += iphlen;
@@ -218,7 +229,7 @@ diff -ur --unidirectional-new-file skipsrc-1.0.orig/skip/freebsd/skip_es.c work.
decryptbuf->m_len, decryptbuf->m_data);
}
-@@ -1745,7 +1761,7 @@
+@@ -1745,7 +1765,7 @@
ip->ip_id = ntohs(ip->ip_id);
ip->ip_off = ntohs(ip->ip_off);
pass:
@@ -227,7 +238,7 @@ diff -ur --unidirectional-new-file skipsrc-1.0.orig/skip/freebsd/skip_es.c work.
(*inetsw_default[ip_protox[ip->ip_p]].pr_input)(m, hlen);
return (0);
}
-@@ -1910,6 +1926,13 @@
+@@ -1910,6 +1930,13 @@
*/
IPADDRCOPY(&params.tunnel_addr, &newip->ip_dst);
@@ -241,7 +252,7 @@ diff -ur --unidirectional-new-file skipsrc-1.0.orig/skip/freebsd/skip_es.c work.
encryptbuf->m_len += sizeof (struct ip);
/*
-@@ -2005,7 +2028,7 @@
+@@ -2005,7 +2032,7 @@
if (params.kp_alg) {
newip->ip_p = SKIP_NEXT_ESP;
} else {
@@ -250,7 +261,7 @@ diff -ur --unidirectional-new-file skipsrc-1.0.orig/skip/freebsd/skip_es.c work.
}
}
skip_if->stats.skip_if_raw_out++;
-@@ -2028,6 +2051,13 @@
+@@ -2028,6 +2055,13 @@
* insert tunnel address as destination
*/
IPADDRCOPY(&params.tunnel_addr, &newip->ip_dst);
@@ -264,7 +275,7 @@ diff -ur --unidirectional-new-file skipsrc-1.0.orig/skip/freebsd/skip_es.c work.
}
if (params.s_nsid == 0) {
-@@ -2097,7 +2127,7 @@
+@@ -2097,7 +2131,7 @@
register skip_param_t *params = &res->params;
register struct ip *ip = mtod(original, struct ip *);
int rc, s, iphlen;
@@ -273,7 +284,7 @@ diff -ur --unidirectional-new-file skipsrc-1.0.orig/skip/freebsd/skip_es.c work.
SKIP_PRINT("skip_decrypt_done", params);
-@@ -2125,7 +2155,7 @@
+@@ -2125,7 +2159,7 @@
*/
outbuf = (res->modes & SKIP_CRYPT_ON) ? m : original;
@@ -282,7 +293,7 @@ diff -ur --unidirectional-new-file skipsrc-1.0.orig/skip/freebsd/skip_es.c work.
/*
* transport mode, need to copy original IP header
*/
-@@ -2195,7 +2225,7 @@
+@@ -2195,7 +2229,7 @@
/*
* tag the start of the header buffer so SKIP can recognise it
*/