summaryrefslogtreecommitdiffstats
path: root/sys/net/rtsock.c
diff options
context:
space:
mode:
authorru <ru@FreeBSD.org>2001-10-17 11:23:59 +0000
committerru <ru@FreeBSD.org>2001-10-17 11:23:59 +0000
commit3897ad5e6e77754bf14bd09db9271dc4dc20cd4d (patch)
treec44fab896e52ab674b921d0b4f2825898ab98c90 /sys/net/rtsock.c
parent8f76483e54209b0c4510f0a880f6adea0a5614a3 (diff)
downloadFreeBSD-src-3897ad5e6e77754bf14bd09db9271dc4dc20cd4d.zip
FreeBSD-src-3897ad5e6e77754bf14bd09db9271dc4dc20cd4d.tar.gz
Bring in latest CSRG revisions to this file:
- Report destination address of a P2P link when servicing routing socket messages. - Report interface name, address, and destination address of a P2P link when servicing NET_RT_{DUMP,FLAGS} sysctls. Part of CSRG revision 8.6 coresponds to revision 1.12. CSRG revision 8.7 corresponds to revision 1.15.
Diffstat (limited to 'sys/net/rtsock.c')
-rw-r--r--sys/net/rtsock.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/sys/net/rtsock.c b/sys/net/rtsock.c
index 762b91c..efd7d57 100644
--- a/sys/net/rtsock.c
+++ b/sys/net/rtsock.c
@@ -30,7 +30,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * @(#)rtsock.c 8.5 (Berkeley) 11/2/94
+ * @(#)rtsock.c 8.7 (Berkeley) 10/12/95
* $FreeBSD$
*/
@@ -385,6 +385,8 @@ route_output(m, so)
if (ifp) {
ifpaddr = TAILQ_FIRST(&ifp->if_addrhead)->ifa_addr;
ifaaddr = rt->rt_ifa->ifa_addr;
+ if (ifp->if_flags & IFF_POINTOPOINT)
+ brdaddr = rt->rt_ifa->ifa_dstaddr;
rtm->rtm_index = ifp->if_index;
} else {
ifpaddr = 0;
@@ -889,6 +891,12 @@ sysctl_dumpentry(rn, vw)
gate = rt->rt_gateway;
netmask = rt_mask(rt);
genmask = rt->rt_genmask;
+ if (rt->rt_ifp) {
+ ifpaddr = TAILQ_FIRST(&rt->rt_ifp->if_addrhead)->ifa_addr;
+ ifaaddr = rt->rt_ifa->ifa_addr;
+ if (rt->rt_ifp->if_flags & IFF_POINTOPOINT)
+ brdaddr = rt->rt_ifa->ifa_dstaddr;
+ }
size = rt_msg2(RTM_GET, &info, 0, w);
if (w->w_req && w->w_tmem) {
register struct rt_msghdr *rtm = (struct rt_msghdr *)w->w_tmem;
OpenPOWER on IntegriCloud