Page MenuHomeFreeBSD

D14254.id39022.diff
No OneTemporary

D14254.id39022.diff

Index: sys/netinet6/icmp6.c
===================================================================
--- sys/netinet6/icmp6.c
+++ sys/netinet6/icmp6.c
@@ -2305,6 +2305,16 @@
goto bad;
}
+ /*
+ * If the target is global, then the nh address
+ * will have its scope id stripped. Insert the scope
+ * id from the source interface.
+ */
+ if (in6_addrscope(&reddst6) == IPV6_ADDR_SCOPE_GLOBAL) {
+ if (in6_setscope(&nh6.nh_addr, m->m_pkthdr.rcvif, NULL))
+ goto freeit;
+ }
+
if (IN6_ARE_ADDR_EQUAL(&src6, &nh6.nh_addr) == 0) {
nd6log((LOG_ERR,
"ICMP6 redirect rejected; "

File Metadata

Mime Type
text/plain
Expires
Tue, Dec 3, 1:31 AM (18 h, 45 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
14998141
Default Alt Text
D14254.id39022.diff (605 B)

Event Timeline