aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/unix/sysv/linux/if_index.c
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/unix/sysv/linux/if_index.c')
-rw-r--r--sysdeps/unix/sysv/linux/if_index.c21
1 files changed, 9 insertions, 12 deletions
diff --git a/sysdeps/unix/sysv/linux/if_index.c b/sysdeps/unix/sysv/linux/if_index.c
index d2951c6fe1..58fb1648f2 100644
--- a/sysdeps/unix/sysv/linux/if_index.c
+++ b/sysdeps/unix/sysv/linux/if_index.c
@@ -28,6 +28,13 @@
#include "kernel-features.h"
+/* Variable to signal whether SIOCGIFCONF is not available. */
+#if __ASSUME_SIOCGIFNAME == 0
+static int old_siocgifconf;
+#else
+# define old_siocgifconf 0
+#endif
+
/* Try to get a socket to talk to the kernel. */
#if defined SIOCGIFINDEX || defined SIOCGIFNAME
static int
@@ -122,11 +129,6 @@ if_nameindex (void)
unsigned int nifs, i;
int rq_len;
struct if_nameindex *idx = NULL;
-# if __ASSUME_SIOCGIFNAME == 0
- static int old_siocgifconf;
-# else
-# define old_siocgifconf 0
-# endif
# define RQ_IFS 4
if (fd < 0)
@@ -281,24 +283,19 @@ if_indextoname (unsigned int ifindex, char *ifname)
void
internal_function
-__protocol_avaliable (int *have_inet, int *have_inet6)
+__protocol_available (int *have_inet, int *have_inet6)
{
int fd = opensock ();
unsigned int nifs;
int rq_len;
struct ifconf ifc;
-# if __ASSUME_SIOCGIFNAME == 0
- static int old_siocgifconf;
-# else
-# define old_siocgifconf 0
-# endif
# define RQ_IFS 4
/* Wirst case assumption. */
*have_inet = 0;
*have_inet6 = 0;
- if (fd == NULL)
+ if (fd < 0)
/* We cannot open the socket. No networking at all? */
return;