nd6_rtr.c (112678) | nd6_rtr.c (118498) |
---|---|
1/* $FreeBSD: head/sys/netinet6/nd6_rtr.c 112678 2003-03-26 17:37:35Z ume $ */ | 1/* $FreeBSD: head/sys/netinet6/nd6_rtr.c 118498 2003-08-05 14:57:11Z ume $ */ |
2/* $KAME: nd6_rtr.c,v 1.111 2001/04/27 01:37:15 jinmei Exp $ */ 3 4/* 5 * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project. 6 * All rights reserved. 7 * 8 * Redistribution and use in source and binary forms, with or without 9 * modification, are permitted provided that the following conditions --- 202 unchanged lines hidden (view full) --- 212 struct in6_addr daddr6 = ip6->ip6_dst; 213 int flags; /* = nd_ra->nd_ra_flags_reserved; */ 214 int is_managed = ((flags & ND_RA_FLAG_MANAGED) != 0); 215 int is_other = ((flags & ND_RA_FLAG_OTHER) != 0); 216#endif 217 union nd_opts ndopts; 218 struct nd_defrouter *dr; 219 | 2/* $KAME: nd6_rtr.c,v 1.111 2001/04/27 01:37:15 jinmei Exp $ */ 3 4/* 5 * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project. 6 * All rights reserved. 7 * 8 * Redistribution and use in source and binary forms, with or without 9 * modification, are permitted provided that the following conditions --- 202 unchanged lines hidden (view full) --- 212 struct in6_addr daddr6 = ip6->ip6_dst; 213 int flags; /* = nd_ra->nd_ra_flags_reserved; */ 214 int is_managed = ((flags & ND_RA_FLAG_MANAGED) != 0); 215 int is_other = ((flags & ND_RA_FLAG_OTHER) != 0); 216#endif 217 union nd_opts ndopts; 218 struct nd_defrouter *dr; 219 |
220 /* 221 * We only accept RAs only when 222 * the system-wide variable allows the acceptance, and 223 * per-interface variable allows RAs on the receiving interface. 224 */ |
|
220 if (ip6_accept_rtadv == 0) 221 goto freeit; | 225 if (ip6_accept_rtadv == 0) 226 goto freeit; |
227 if (!(ndi->flags & ND6_IFF_ACCEPT_RTADV)) 228 goto freeit; |
|
222 223 if (ip6->ip6_hlim != 255) { 224 nd6log((LOG_ERR, 225 "nd6_ra_input: invalid hlim (%d) from %s to %s on %s\n", 226 ip6->ip6_hlim, ip6_sprintf(&ip6->ip6_src), 227 ip6_sprintf(&ip6->ip6_dst), if_name(ifp))); 228 goto bad; 229 } --- 1753 unchanged lines hidden --- | 229 230 if (ip6->ip6_hlim != 255) { 231 nd6log((LOG_ERR, 232 "nd6_ra_input: invalid hlim (%d) from %s to %s on %s\n", 233 ip6->ip6_hlim, ip6_sprintf(&ip6->ip6_src), 234 ip6_sprintf(&ip6->ip6_dst), if_name(ifp))); 235 goto bad; 236 } --- 1753 unchanged lines hidden --- |