]> The Tcpdump Group git mirrors - libpcap/commitdiff
Use inet_ntop() even for IPv4 addresses.
authorGuy Harris <[email protected]>
Fri, 10 Nov 2017 22:08:25 +0000 (14:08 -0800)
committerGuy Harris <[email protected]>
Fri, 10 Nov 2017 22:08:25 +0000 (14:08 -0800)
Modern UN*Xes should have it, and MSVC whines about inet_ntoa() being
deprecated in the Appveyor builds.

tests/findalldevstest.c

index 1d0a4bae00c1b1bb1a6bb0bd474622c41059a66a..6a221f2599f75e31c4c2a7910b6ec4b9df2d061d 100644 (file)
@@ -168,9 +168,8 @@ int main(int argc, char **argv)
 static int ifprint(pcap_if_t *d)
 {
   pcap_addr_t *a;
 static int ifprint(pcap_if_t *d)
 {
   pcap_addr_t *a;
-#ifdef INET6
-  char ntop_buf[INET6_ADDRSTRLEN];
-#endif
+  char ipv4_buf[INET_ADDRSTRLEN];
+  char ipv6_buf[INET6_ADDRSTRLEN];
   const char *sep;
   int status = 1; /* success */
 
   const char *sep;
   int status = 1; /* success */
 
@@ -200,16 +199,24 @@ static int ifprint(pcap_if_t *d)
         printf("\tAddress Family: AF_INET\n");
         if (a->addr)
           printf("\t\tAddress: %s\n",
         printf("\tAddress Family: AF_INET\n");
         if (a->addr)
           printf("\t\tAddress: %s\n",
-            inet_ntoa(((struct sockaddr_in *)(a->addr))->sin_addr));
+            inet_ntop(AF_INET,
+               &((struct sockaddr_in *)(a->addr))->sin_addr,
+               ipv4_buf, sizeof ipv4_buf));
         if (a->netmask)
           printf("\t\tNetmask: %s\n",
         if (a->netmask)
           printf("\t\tNetmask: %s\n",
-            inet_ntoa(((struct sockaddr_in *)(a->netmask))->sin_addr));
+            inet_ntop(AF_INET,
+               &((struct sockaddr_in *)(a->netmask))->sin_addr,
+               ipv4_buf, sizeof ipv4_buf));
         if (a->broadaddr)
           printf("\t\tBroadcast Address: %s\n",
         if (a->broadaddr)
           printf("\t\tBroadcast Address: %s\n",
-            inet_ntoa(((struct sockaddr_in *)(a->broadaddr))->sin_addr));
+            inet_ntop(AF_INET,
+               &((struct sockaddr_in *)(a->broadaddr))->sin_addr,
+               ipv4_buf, sizeof ipv4_buf));
         if (a->dstaddr)
           printf("\t\tDestination Address: %s\n",
         if (a->dstaddr)
           printf("\t\tDestination Address: %s\n",
-            inet_ntoa(((struct sockaddr_in *)(a->dstaddr))->sin_addr));
+            inet_ntop(AF_INET,
+               &((struct sockaddr_in *)(a->dstaddr))->sin_addr,
+               ipv4_buf, sizeof ipv4_buf));
         break;
 #ifdef INET6
       case AF_INET6:
         break;
 #ifdef INET6
       case AF_INET6:
@@ -218,22 +225,22 @@ static int ifprint(pcap_if_t *d)
           printf("\t\tAddress: %s\n",
             inet_ntop(AF_INET6,
                ((struct sockaddr_in6 *)(a->addr))->sin6_addr.s6_addr,
           printf("\t\tAddress: %s\n",
             inet_ntop(AF_INET6,
                ((struct sockaddr_in6 *)(a->addr))->sin6_addr.s6_addr,
-               ntop_buf, sizeof ntop_buf));
+               ipv6_buf, sizeof ipv6_buf));
         if (a->netmask)
           printf("\t\tNetmask: %s\n",
             inet_ntop(AF_INET6,
               ((struct sockaddr_in6 *)(a->netmask))->sin6_addr.s6_addr,
         if (a->netmask)
           printf("\t\tNetmask: %s\n",
             inet_ntop(AF_INET6,
               ((struct sockaddr_in6 *)(a->netmask))->sin6_addr.s6_addr,
-               ntop_buf, sizeof ntop_buf));
+               ipv6_buf, sizeof ipv6_buf));
         if (a->broadaddr)
           printf("\t\tBroadcast Address: %s\n",
             inet_ntop(AF_INET6,
               ((struct sockaddr_in6 *)(a->broadaddr))->sin6_addr.s6_addr,
         if (a->broadaddr)
           printf("\t\tBroadcast Address: %s\n",
             inet_ntop(AF_INET6,
               ((struct sockaddr_in6 *)(a->broadaddr))->sin6_addr.s6_addr,
-               ntop_buf, sizeof ntop_buf));
+               ipv6_buf, sizeof ipv6_buf));
         if (a->dstaddr)
           printf("\t\tDestination Address: %s\n",
             inet_ntop(AF_INET6,
               ((struct sockaddr_in6 *)(a->dstaddr))->sin6_addr.s6_addr,
         if (a->dstaddr)
           printf("\t\tDestination Address: %s\n",
             inet_ntop(AF_INET6,
               ((struct sockaddr_in6 *)(a->dstaddr))->sin6_addr.s6_addr,
-               ntop_buf, sizeof ntop_buf));
+               ipv6_buf, sizeof ipv6_buf));
         break;
 #endif
       default:
         break;
 #endif
       default: