fbbeedbe63
Quiting Tom: The problem is the special case of an RTM_GET message that wants interface information included in the response, and therefore include the RTA_IFA or RTA_IFP (or both) flags in the bitmask that says what addresses are supplied in the message. For the RTM_GET message, it doesn't make sense to supply addresses other than the one you're asking about, so those two other bits are, in that specific case, overloaded with this meaning. There is code in sys/net/rtsock.c to handle the case, but at some time, extra sanity checking of the received message was added, that failed to take this possibility into account. The patch, is needed for the Asterisk software PBX to work properly when it has multiple interfaces active: it needs to ask the kernel for the IP address of the interface that will be used to communicate with a given host. |
||
---|---|---|
.. | ||
bpf_filter.c | ||
bpf.c | ||
bpf.h | ||
bpfdesc.h | ||
bridgestp.c | ||
bsd-comp.c | ||
dlt.h | ||
ethertypes.h | ||
files.pf | ||
if_arc.h | ||
if_arcsubr.c | ||
if_arp.h | ||
if_atm.h | ||
if_atmsubr.c | ||
if_bridge.c | ||
if_bridgevar.h | ||
if_dl.h | ||
if_eco.h | ||
if_ecosubr.c | ||
if_ether.h | ||
if_ethersubr.c | ||
if_faith.c | ||
if_faith.h | ||
if_fddi.h | ||
if_fddisubr.c | ||
if_gif.c | ||
if_gif.h | ||
if_gre.c | ||
if_gre.h | ||
if_hippi.h | ||
if_hippisubr.c | ||
if_ieee1394.h | ||
if_ieee1394subr.c | ||
if_llc.h | ||
if_loop.c | ||
if_media.c | ||
if_media.h | ||
if_ppp.c | ||
if_ppp.h | ||
if_pppoe.c | ||
if_pppoe.h | ||
if_pppvar.h | ||
if_sl.c | ||
if_slvar.h | ||
if_sppp.h | ||
if_spppsubr.c | ||
if_spppvar.h | ||
if_stf.c | ||
if_stf.h | ||
if_strip.c | ||
if_stripvar.h | ||
if_token.h | ||
if_tokensubr.c | ||
if_tun.c | ||
if_tun.h | ||
if_types.h | ||
if_vlan.c | ||
if_vlanvar.h | ||
if.c | ||
if.h | ||
Makefile | ||
net_osdep.h | ||
netisr_dispatch.h | ||
netisr.h | ||
pfil.c | ||
pfil.h | ||
pfkeyv2.h | ||
ppp_defs.h | ||
ppp_tty.c | ||
ppp-comp.h | ||
ppp-deflate.c | ||
radix.c | ||
radix.h | ||
raw_cb.c | ||
raw_cb.h | ||
raw_usrreq.c | ||
route.c | ||
route.h | ||
rtsock.c | ||
slcompress.c | ||
slcompress.h | ||
slip.h | ||
zlib.c | ||
zlib.h |