diff options
Diffstat (limited to 'sys/netinet6/ip6_output.c')
-rw-r--r-- | sys/netinet6/ip6_output.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/sys/netinet6/ip6_output.c b/sys/netinet6/ip6_output.c index d832bfdc08f..434bc41a7ca 100644 --- a/sys/netinet6/ip6_output.c +++ b/sys/netinet6/ip6_output.c @@ -1,4 +1,4 @@ -/* $OpenBSD: ip6_output.c,v 1.82 2004/02/04 08:47:41 itojun Exp $ */ +/* $OpenBSD: ip6_output.c,v 1.83 2004/06/11 08:09:29 itojun Exp $ */ /* $KAME: ip6_output.c,v 1.172 2001/03/25 09:55:56 itojun Exp $ */ /* @@ -1318,6 +1318,7 @@ ip6_ctloutput(op, so, level, optname, mp) case IPV6_RTHDR: case IPV6_FAITH: case IPV6_V6ONLY: + case IPV6_USE_MIN_MTU: if (optlen != sizeof(int)) { error = EINVAL; break; @@ -1376,6 +1377,10 @@ do { \ OPTSET(IN6P_FAITH); break; + case IPV6_USE_MIN_MTU: + OPTSET(IN6P_MINMTU); + break; + case IPV6_V6ONLY: if (!optval) error = EINVAL; @@ -1543,6 +1548,7 @@ do { \ case IPV6_FAITH: case IPV6_V6ONLY: case IPV6_PORTRANGE: + case IPV6_USE_MIN_MTU: switch (optname) { case IPV6_UNICAST_HOPS: @@ -1604,6 +1610,10 @@ do { \ optval = 0; break; } + + case IPV6_USE_MIN_MTU: + optval = OPTBIT(IN6P_MINMTU); + break; } *mp = m = m_get(M_WAIT, MT_SOOPTS); m->m_len = sizeof(int); |