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
* (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];
+ if (NULL == addr)
+ return GNUNET_OK;
+
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;