svn commit: r185960 - in projects/arpv2_merge_1:
contrib/bsnmp/snmp_mibII libexec/bootpd sbin/route
sbin/routed usr.bin/netstat usr.sbin/ppp
Kip Macy
kmacy at FreeBSD.org
Thu Dec 11 17:01:03 PST 2008
Author: kmacy
Date: Fri Dec 12 01:01:03 2008
New Revision: 185960
URL: http://svn.freebsd.org/changeset/base/185960
Log:
- remove or hide cloning related flags from world compile
- refcnt is now an int - update netstat/route.c
Modified:
projects/arpv2_merge_1/contrib/bsnmp/snmp_mibII/mibII.c
projects/arpv2_merge_1/contrib/bsnmp/snmp_mibII/mibII_route.c
projects/arpv2_merge_1/libexec/bootpd/rtmsg.c
projects/arpv2_merge_1/sbin/route/route.c
projects/arpv2_merge_1/sbin/routed/table.c
projects/arpv2_merge_1/usr.bin/netstat/route.c
projects/arpv2_merge_1/usr.sbin/ppp/route.c
Modified: projects/arpv2_merge_1/contrib/bsnmp/snmp_mibII/mibII.c
==============================================================================
--- projects/arpv2_merge_1/contrib/bsnmp/snmp_mibII/mibII.c Fri Dec 12 01:00:38 2008 (r185959)
+++ projects/arpv2_merge_1/contrib/bsnmp/snmp_mibII/mibII.c Fri Dec 12 01:01:03 2008 (r185960)
@@ -48,9 +48,15 @@ static void *route_fd;
/* if-index allocator */
static uint32_t next_if_index = 1;
+#if 0
+/*
+ * XXX - Qing
+ *
+ */
/* re-fetch arp table */
static int update_arp;
static int in_update_arp;
+#endif
/* OR registrations */
static u_int ifmib_reg;
@@ -910,9 +916,12 @@ mib_find_ifa(struct in_addr addr)
return (NULL);
}
+#if 0
/*
+ * Qing -- fix
* Process a new ARP entry
*/
+
static void
process_arp(const struct rt_msghdr *rtm, const struct sockaddr_dl *sdl,
const struct sockaddr_in *sa)
@@ -939,7 +948,7 @@ process_arp(const struct rt_msghdr *rtm,
at->flags &= ~MIBARP_PERM;
at->flags |= MIBARP_FOUND;
}
-
+#endif
/*
* Handle a routing socket message.
*/
@@ -1083,6 +1092,11 @@ handle_rtmsg(struct rt_msghdr *rtm)
case RTM_GET:
mib_extract_addrs(rtm->rtm_addrs, (u_char *)(rtm + 1), addrs);
+#if 0
+ /*
+ * XXX - Qing fix
+ *
+ */
if (rtm->rtm_flags & RTF_LLINFO) {
if (addrs[RTAX_DST] == NULL ||
addrs[RTAX_GATEWAY] == NULL ||
@@ -1093,14 +1107,22 @@ handle_rtmsg(struct rt_msghdr *rtm)
(struct sockaddr_dl *)(void *)addrs[RTAX_GATEWAY],
(struct sockaddr_in *)(void *)addrs[RTAX_DST]);
} else {
+#endif
if (rtm->rtm_errno == 0 && (rtm->rtm_flags & RTF_UP))
mib_sroute_process(rtm, addrs[RTAX_GATEWAY],
addrs[RTAX_DST], addrs[RTAX_NETMASK]);
+#if 0
}
+#endif
break;
case RTM_ADD:
mib_extract_addrs(rtm->rtm_addrs, (u_char *)(rtm + 1), addrs);
+#if 0
+ /*
+ * XXX - Qing fix
+ *
+ */
if (rtm->rtm_flags & RTF_LLINFO) {
if (addrs[RTAX_DST] == NULL ||
addrs[RTAX_GATEWAY] == NULL ||
@@ -1111,15 +1133,18 @@ handle_rtmsg(struct rt_msghdr *rtm)
(struct sockaddr_dl *)(void *)addrs[RTAX_GATEWAY],
(struct sockaddr_in *)(void *)addrs[RTAX_DST]);
} else {
+#endif
if (rtm->rtm_errno == 0 && (rtm->rtm_flags & RTF_UP))
mib_sroute_process(rtm, addrs[RTAX_GATEWAY],
addrs[RTAX_DST], addrs[RTAX_NETMASK]);
+#if 0
}
+#endif
break;
case RTM_DELETE:
mib_extract_addrs(rtm->rtm_addrs, (u_char *)(rtm + 1), addrs);
- if (rtm->rtm_errno == 0 && !(rtm->rtm_flags & RTF_LLINFO))
+ if (rtm->rtm_errno == 0)
mib_sroute_process(rtm, addrs[RTAX_GATEWAY],
addrs[RTAX_DST], addrs[RTAX_NETMASK]);
break;
@@ -1289,7 +1314,10 @@ update_ifa_info(void)
/*
* Update arp table
- */
+ *
+ * XXX - Qing
+*/
+#if 0
void
mib_arp_update(void)
{
@@ -1305,11 +1333,15 @@ mib_arp_update(void)
TAILQ_FOREACH(at, &mibarp_list, link)
at->flags &= ~MIBARP_FOUND;
+ /*
+ * XXX - Qing fix
+ *
+ */
if ((buf = mib_fetch_rtab(AF_INET, NET_RT_FLAGS, RTF_LLINFO, &needed)) == NULL) {
in_update_arp = 0;
return;
}
-
+
next = buf;
while (next < buf + needed) {
rtm = (struct rt_msghdr *)(void *)next;
@@ -1329,6 +1361,7 @@ mib_arp_update(void)
update_arp = 0;
in_update_arp = 0;
}
+#endif
/*
@@ -1631,11 +1664,22 @@ mibII_idle(void)
mib_refresh_iflist();
update_ifa_info();
+#if 0
+ /*
+ * XXX Qing
+ *
+ */
mib_arp_update();
+#endif
mib_iflist_bad = 0;
}
+#if 0
+ /*
+ * XXX Qing
+ */
if (update_arp)
mib_arp_update();
+#endif
}
Modified: projects/arpv2_merge_1/contrib/bsnmp/snmp_mibII/mibII_route.c
==============================================================================
--- projects/arpv2_merge_1/contrib/bsnmp/snmp_mibII/mibII_route.c Fri Dec 12 01:00:38 2008 (r185959)
+++ projects/arpv2_merge_1/contrib/bsnmp/snmp_mibII/mibII_route.c Fri Dec 12 01:01:03 2008 (r185960)
@@ -186,8 +186,7 @@ mib_sroute_process(struct rt_msghdr *rtm
memcpy(r->index, key.index, sizeof(r->index));
r->ifindex = (ifp == NULL) ? 0 : ifp->index;
- r->type = (rtm->rtm_flags & RTF_LLINFO) ? 3 :
- (rtm->rtm_flags & RTF_REJECT) ? 2 : 4;
+ r->type = (rtm->rtm_flags & RTF_REJECT) ? 2 : 4;
/* cannot really know, what protocol it runs */
r->proto = (rtm->rtm_flags & RTF_LOCAL) ? 2 :
Modified: projects/arpv2_merge_1/libexec/bootpd/rtmsg.c
==============================================================================
--- projects/arpv2_merge_1/libexec/bootpd/rtmsg.c Fri Dec 12 01:00:38 2008 (r185959)
+++ projects/arpv2_merge_1/libexec/bootpd/rtmsg.c Fri Dec 12 01:01:03 2008 (r185960)
@@ -152,13 +152,6 @@ tryagain:
sdl = (struct sockaddr_dl *)(sin->sin_len + (char *)sin);
if (sin->sin_addr.s_addr == sin_m.sin_addr.s_addr) {
if (sdl->sdl_family == AF_LINK &&
-#if 0
- /*
- * XXX Qing - what should be here?
- *
- */
- (rtm->rtm_flags & RTF_LLINFO) &&
-#endif
!(rtm->rtm_flags & RTF_GATEWAY)) switch (sdl->sdl_type) {
case IFT_ETHER: case IFT_FDDI: case IFT_ISO88023:
case IFT_ISO88024: case IFT_ISO88025:
Modified: projects/arpv2_merge_1/sbin/route/route.c
==============================================================================
--- projects/arpv2_merge_1/sbin/route/route.c Fri Dec 12 01:00:38 2008 (r185959)
+++ projects/arpv2_merge_1/sbin/route/route.c Fri Dec 12 01:01:03 2008 (r185960)
@@ -605,6 +605,14 @@ newroute(argc, argv)
case K_NOSTATIC:
flags &= ~RTF_STATIC;
break;
+#if 0
+ case K_CLONING:
+ flags |= RTF_CLONING;
+ break;
+ case K_LLINFO:
+ flags |= RTF_LLINFO;
+ break;
+#endif
case K_LOCK:
locking = 1;
break;
Modified: projects/arpv2_merge_1/sbin/routed/table.c
==============================================================================
--- projects/arpv2_merge_1/sbin/routed/table.c Fri Dec 12 01:00:38 2008 (r185959)
+++ projects/arpv2_merge_1/sbin/routed/table.c Fri Dec 12 01:01:03 2008 (r185960)
@@ -1103,14 +1103,13 @@ flush_kern(void)
|| INFO_DST(&info)->sa_family != AF_INET)
continue;
+#if defined (RTF_LLINFO)
/* ignore ARP table entries on systems with a merged route
* and ARP table.
*/
-#if defined(RTF_LLINFO)
if (rtm->rtm_flags & RTF_LLINFO)
continue;
#endif
-
#if defined(RTF_WASCLONED) && defined(__FreeBSD__)
/* ignore cloned routes
*/
@@ -1262,12 +1261,14 @@ read_rt(void)
trace_act("ignore multicast %s", str);
continue;
}
+
#if defined(RTF_LLINFO)
if (m.r.rtm.rtm_flags & RTF_LLINFO) {
trace_act("ignore ARP %s", str);
continue;
}
#endif
+
#if defined(RTF_WASCLONED) && defined(__FreeBSD__)
if (m.r.rtm.rtm_flags & RTF_WASCLONED) {
trace_act("ignore cloned %s", str);
Modified: projects/arpv2_merge_1/usr.bin/netstat/route.c
==============================================================================
--- projects/arpv2_merge_1/usr.bin/netstat/route.c Fri Dec 12 01:00:38 2008 (r185959)
+++ projects/arpv2_merge_1/usr.bin/netstat/route.c Fri Dec 12 01:01:03 2008 (r185960)
@@ -347,7 +347,7 @@ size_cols_rtentry(struct rtentry *rt)
wid_flags = MAX(len, wid_flags);
if (addr.u_sa.sa_family == AF_INET || Wflag) {
- len = snprintf(buffer, sizeof(buffer), "%ld", rt->rt_refcnt);
+ len = snprintf(buffer, sizeof(buffer), "%d", rt->rt_refcnt);
wid_refs = MAX(len, wid_refs);
len = snprintf(buffer, sizeof(buffer), "%lu", rt->rt_use);
wid_use = MAX(len, wid_use);
@@ -772,7 +772,7 @@ p_rtentry(struct rtentry *rt)
snprintf(buffer, sizeof(buffer), "%%-%d.%ds ", wid_flags, wid_flags);
p_flags(rt->rt_flags, buffer);
if (addr.u_sa.sa_family == AF_INET || Wflag) {
- printf("%*ld %*lu ", wid_refs, rt->rt_refcnt,
+ printf("%*d %*lu ", wid_refs, rt->rt_refcnt,
wid_use, rt->rt_use);
if (Wflag) {
if (rt->rt_rmx.rmx_mtu != 0)
Modified: projects/arpv2_merge_1/usr.sbin/ppp/route.c
==============================================================================
--- projects/arpv2_merge_1/usr.sbin/ppp/route.c Fri Dec 12 01:00:38 2008 (r185959)
+++ projects/arpv2_merge_1/usr.sbin/ppp/route.c Fri Dec 12 01:01:03 2008 (r185960)
@@ -158,7 +158,10 @@ static struct bits {
{ RTF_MODIFIED, 'M' },
{ RTF_DONE, 'd' },
{ RTF_XRESOLVE, 'X' },
- { RTF_STATIC, 'S' },
+#ifdef RTF_CLONING
+ { RTF_CLONING, 'C' },
+#endif
+ { RTF_STATIC, 'S' },
{ RTF_PROTO1, '1' },
{ RTF_PROTO2, '2' },
{ RTF_BLACKHOLE, 'B' },
More information about the svn-src-projects
mailing list