Date: Fri, 12 Dec 2008 01:01:03 +0000 (UTC) From: Kip Macy <kmacy@FreeBSD.org> To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r185960 - in projects/arpv2_merge_1: contrib/bsnmp/snmp_mibII libexec/bootpd sbin/route sbin/routed usr.bin/netstat usr.sbin/ppp Message-ID: <200812120101.mBC113ii081891@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
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' },
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200812120101.mBC113ii081891>