X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=src%2Futil%2Ftest_os_network.c;h=2cdd7504051a9d9f95d06bea781573bc3a4d05ea;hb=72c8645af31896829b674b575c5375706f362a30;hp=ca57765da06844ba55791ed67881f309f58059ac;hpb=0a217a8df1657b4334b55b0e4a6c7837a8dbcfd9;p=oweals%2Fgnunet.git diff --git a/src/util/test_os_network.c b/src/util/test_os_network.c index ca57765da..2cdd75040 100644 --- a/src/util/test_os_network.c +++ b/src/util/test_os_network.c @@ -4,7 +4,7 @@ GNUnet is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published - by the Free Software Foundation; either version 2, or (at your + by the Free Software Foundation; either version 3, or (at your option) any later version. GNUnet is distributed in the hope that it will be useful, but @@ -26,7 +26,6 @@ #include "gnunet_configuration_lib.h" #include "gnunet_os_lib.h" -#define VERBOSE 0 /** * Check if the address we got is IPv4 or IPv6 loopback (which should @@ -34,40 +33,46 @@ * (success). */ static int -proc (void *cls, - const char *name, - int isDefault, const struct sockaddr *addr, socklen_t addrlen) +proc (void *cls, const char *name, int isDefault, const struct sockaddr *addr, + const struct sockaddr *broadcast_addr, const struct sockaddr *netmask, + socklen_t addrlen) { int *ok = cls; char buf[INET6_ADDRSTRLEN]; + const char * protocol; + if (NULL == addr) + return GNUNET_OK; + if (addrlen == sizeof (struct sockaddr_in)) + protocol = "IPv4"; + else + protocol = "IPv6"; + GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, + "%s Address `%s'\n", protocol, GNUNET_a2s ((const struct sockaddr *) addr,addrlen) ); + GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, + "Netmask `%s'\n", GNUNET_a2s ((const struct sockaddr *) netmask, addrlen) ); + GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, + "`%s'\n", GNUNET_a2s ((const struct sockaddr *) broadcast_addr,addrlen) ); inet_ntop (addr->sa_family, - (addr->sa_family == AF_INET) ? - (void *) &((struct sockaddr_in *) addr)->sin_addr : - (void *) &((struct sockaddr_in6 *) addr)->sin6_addr, - buf, sizeof (buf)); + (addr->sa_family == + AF_INET) ? (void *) &((struct sockaddr_in *) addr)->sin_addr + : (void *) &((struct sockaddr_in6 *) addr)->sin6_addr, buf, + sizeof (buf)); if ((0 == strcmp ("::1", buf)) || (0 == strcmp ("127.0.0.1", buf))) *ok = 0; return GNUNET_OK; } -static int -testifcs () + +int +main (int argc, char *argv[]) { int ret; + GNUNET_log_setup ("test-os-network", "WARNING", NULL); ret = 1; GNUNET_OS_network_interfaces_list (&proc, &ret); return ret; } -int -main (int argc, char *argv[]) -{ - int errCnt = 0; - - GNUNET_log_setup ("test-os-network", "WARNING", NULL); - if (0 != testifcs ()) - errCnt++; - return errCnt; -} +/* end of test_os_network.c */