diff options
| author | Ruslan Ermilov <ru@FreeBSD.org> | 2001-10-17 11:23:59 +0000 |
|---|---|---|
| committer | Ruslan Ermilov <ru@FreeBSD.org> | 2001-10-17 11:23:59 +0000 |
| commit | 28070a0efeb3ab2a9a222c5fa7913333c385dd8c (patch) | |
| tree | c44fab896e52ab674b921d0b4f2825898ab98c90 | |
| parent | 4862bf8c0d1ddf0b4f28ce757331bf5aef1d425f (diff) | |
Notes
| -rw-r--r-- | sys/net/rtsock.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/sys/net/rtsock.c b/sys/net/rtsock.c index 762b91c284b0..efd7d5724792 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; |
