[BACK]Return to show.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / netstat

Diff for /src/usr.bin/netstat/show.c between version 1.33 and 1.34

version 1.33, 2010/07/30 12:55:12 version 1.34, 2010/10/11 12:33:36
Line 116 
Line 116 
  * Print routing tables.   * Print routing tables.
  */   */
 void  void
 p_rttables(int af, u_int tableid)  p_rttables(int af, u_int tableid, int hastable)
 {  {
         struct rt_msghdr *rtm;          struct rt_msghdr *rtm;
         struct sadb_msg *msg;          struct sadb_msg *msg;
         char *buf = NULL, *next, *lim = NULL;          char *buf = NULL, *next, *lim = NULL;
         size_t needed;          size_t needed;
         int mib[7];          int mib[7], mcnt;
         struct sockaddr *sa;          struct sockaddr *sa;
   
         mib[0] = CTL_NET;          mib[0] = CTL_NET;
Line 131 
Line 131 
         mib[3] = af;          mib[3] = af;
         mib[4] = NET_RT_DUMP;          mib[4] = NET_RT_DUMP;
         mib[5] = 0;          mib[5] = 0;
         mib[6] = tableid;          if (hastable) {
                   mib[6] = tableid;
                   mcnt = 7;
           } else
                   mcnt = 6;
   
         if (sysctl(mib, 7, NULL, &needed, NULL, 0) < 0)          if (sysctl(mib, mcnt, NULL, &needed, NULL, 0) < 0)
                 err(1, "route-sysctl-estimate");                  err(1, "route-sysctl-estimate");
         if (needed > 0) {          if (needed > 0) {
                 if ((buf = malloc(needed)) == 0)                  if ((buf = malloc(needed)) == 0)
                         err(1, NULL);                          err(1, NULL);
                 if (sysctl(mib, 7, buf, &needed, NULL, 0) < 0)                  if (sysctl(mib, mcnt, buf, &needed, NULL, 0) < 0)
                         err(1, "sysctl of routing table");                          err(1, "sysctl of routing table");
                 lim = buf + needed;                  lim = buf + needed;
         }          }
Line 835 
Line 839 
 netname(struct sockaddr *sa, struct sockaddr *mask)  netname(struct sockaddr *sa, struct sockaddr *mask)
 {  {
         switch (sa->sa_family) {          switch (sa->sa_family) {
   
         case AF_INET:          case AF_INET:
                 return netname4(((struct sockaddr_in *)sa)->sin_addr.s_addr,                  return netname4(((struct sockaddr_in *)sa)->sin_addr.s_addr,
                     mask->sa_len == 0 ? 0 :                      mask->sa_len == 0 ? 0 :

Legend:
Removed from v.1.33  
changed lines
  Added in v.1.34