diff options
author | Maxim Konovalov <maxim@FreeBSD.org> | 2004-06-16 10:02:36 +0000 |
---|---|---|
committer | Maxim Konovalov <maxim@FreeBSD.org> | 2004-06-16 10:02:36 +0000 |
commit | ef14c3696549fbac247c3176ea3877d927659a08 (patch) | |
tree | eee85193ced2b101df604b96bdb8c163b9df3394 /sys/netinet | |
parent | 89c9c53da05197f657dfe8e0bdda6941a2e9a0d4 (diff) | |
download | src-ef14c3696549fbac247c3176ea3877d927659a08.tar.gz src-ef14c3696549fbac247c3176ea3877d927659a08.zip |
o connect(2): if there is no a route to the destination
do not pick up the first local ip address for the source
ip address, return ENETUNREACH instead.
Submitted by: Gleb Smirnoff
Reviewed by: -current (silence)
Notes
Notes:
svn path=/head/; revision=130590
Diffstat (limited to 'sys/netinet')
-rw-r--r-- | sys/netinet/in_pcb.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/sys/netinet/in_pcb.c b/sys/netinet/in_pcb.c index adad6de2ebe0..26076b9c3cbc 100644 --- a/sys/netinet/in_pcb.c +++ b/sys/netinet/in_pcb.c @@ -614,9 +614,7 @@ in_pcbconnect_setup(inp, nam, laddrp, lportp, faddrp, fportp, oinpp, cred) if (ia == 0) ia = ifatoia(ifa_ifwithnet(sintosa(&sa))); if (ia == 0) - ia = TAILQ_FIRST(&in_ifaddrhead); - if (ia == 0) - return (EADDRNOTAVAIL); + return (ENETUNREACH); } /* * If the destination address is multicast and an outgoing |