add missing ipcomp cases.

This commit is contained in:
itojun 2000-01-16 18:06:03 +00:00
parent 358b6d44ac
commit 08e76e0086
3 changed files with 22 additions and 3 deletions

View File

@ -1,4 +1,4 @@
/* $NetBSD: ah_core.c,v 1.13 2000/01/06 07:31:10 itojun Exp $ */
/* $NetBSD: ah_core.c,v 1.14 2000/01/16 18:06:03 itojun Exp $ */
/*
* Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project.
@ -806,6 +806,7 @@ again:
case IPPROTO_UDP:
case IPPROTO_TCP:
case IPPROTO_ESP:
case IPPROTO_IPCOMP:
while (m) {
tlen = m->m_len - (p - mtod(m, u_char *));
(algo->update)(&algos, p, tlen);
@ -1078,6 +1079,7 @@ again:
case IPPROTO_UDP:
case IPPROTO_TCP:
case IPPROTO_ESP:
case IPPROTO_IPCOMP:
while (m) {
tlen = m->m_len - (p - mtod(m, u_char *));
(algo->update)(&algos, p, tlen);

View File

@ -1,4 +1,4 @@
/* $NetBSD: icmp6.c,v 1.17 2000/01/07 06:44:30 itohy Exp $ */
/* $NetBSD: icmp6.c,v 1.18 2000/01/16 18:06:03 itojun Exp $ */
/*
* Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project.
@ -206,6 +206,7 @@ icmp6_error(m, type, code, param)
case IPPROTO_UDP:
case IPPROTO_TCP:
case IPPROTO_ESP:
case IPPROTO_IPCOMP:
case IPPROTO_FRAGMENT:
/*
* ICMPv6 error must not be fragmented.

View File

@ -1,4 +1,4 @@
/* $NetBSD: ipsec.c,v 1.12 2000/01/06 15:46:10 itojun Exp $ */
/* $NetBSD: ipsec.c,v 1.13 2000/01/16 18:06:04 itojun Exp $ */
/*
* Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project.
@ -1139,6 +1139,13 @@ ipsec_get_reqlevel(isr)
level = ah_net_deflev;
else
level = ah_trans_deflev;
case IPPROTO_IPCOMP:
/*
* we don't really care, as IPcomp document says that
* we shouldn't compress small packets
*/
level = IPSEC_LEVEL_USE;
break;
default:
panic("ipsec_get_reqlevel: "
"Illegal protocol defined %u\n",
@ -1220,6 +1227,12 @@ ipsec_in_reject(sp, m)
need_icv++;
}
break;
case IPPROTO_IPCOMP:
/*
* we don't really care, as IPcomp document says that
* we shouldn't compress small packets
*/
break;
}
}
@ -2540,6 +2553,9 @@ ipsec6_output_tunnel(state, sp, flags)
case IPPROTO_AH:
error = ah6_output(state->m, &ip6->ip6_nxt, state->m->m_next, isr);
break;
case IPPROTO_IPCOMP:
/* XXX code should be here */
/*FALLTHROUGH*/
default:
printf("ipsec6_output_tunnel: unknown ipsec protocol %d\n", isr->proto);
m_freem(state->m);