mirror of
https://git.rtems.org/rtems-libbsd/
synced 2025-05-14 06:49:16 +08:00
sys/netinet6/ip6_input.c: Restore FreeBSD version
This commit is contained in:
parent
4ab42e9fff
commit
bcd6e1b9d1
@ -736,19 +736,23 @@ passin:
|
|||||||
* as our interface address (e.g. multicast addresses, addresses
|
* as our interface address (e.g. multicast addresses, addresses
|
||||||
* within FAITH prefixes and such).
|
* within FAITH prefixes and such).
|
||||||
*/
|
*/
|
||||||
if (deliverifp && !ip6_getdstifaddr(m)) {
|
if (deliverifp) {
|
||||||
struct in6_ifaddr *ia6;
|
struct in6_ifaddr *ia6;
|
||||||
|
|
||||||
ia6 = in6_ifawithifp(deliverifp, &ip6->ip6_dst);
|
if ((ia6 = ip6_getdstifaddr(m)) != NULL) {
|
||||||
if (ia6) {
|
|
||||||
if (!ip6_setdstifaddr(m, ia6)) {
|
|
||||||
/*
|
|
||||||
* XXX maybe we should drop the packet here,
|
|
||||||
* as we could not provide enough information
|
|
||||||
* to the upper layers.
|
|
||||||
*/
|
|
||||||
}
|
|
||||||
ifa_free(&ia6->ia_ifa);
|
ifa_free(&ia6->ia_ifa);
|
||||||
|
} else {
|
||||||
|
ia6 = in6_ifawithifp(deliverifp, &ip6->ip6_dst);
|
||||||
|
if (ia6) {
|
||||||
|
if (!ip6_setdstifaddr(m, ia6)) {
|
||||||
|
/*
|
||||||
|
* XXX maybe we should drop the packet here,
|
||||||
|
* as we could not provide enough information
|
||||||
|
* to the upper layers.
|
||||||
|
*/
|
||||||
|
}
|
||||||
|
ifa_free(&ia6->ia_ifa);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user