lookup_interface(ifr->ifr_name);
lookup_interface(ifr->ifr_name,0);
static int if_readconf(void){    int numreqs = 30;    struct ifconf ifc;    struct ifreq *ifr;    int n, err = -1;    int skfd;    /* SIOCGIFCONF currently seems to only work properly on AF_INET sockets       (as of 2.1.128) */     skfd = get_socket_for_af(AF_INET);    if (skfd < 0) {	fprintf(stderr, _("warning: no inet socket available: %s\n"),		strerror(errno));	/* Try to soldier on with whatever socket we can get hold of.  */	skfd = sockets_open(0);	if (skfd < 0)	    return -1;    }    ifc.ifc_buf = NULL;    for (;;) {	ifc.ifc_len = sizeof(struct ifreq) * numreqs;	ifc.ifc_buf = xrealloc(ifc.ifc_buf, ifc.ifc_len);	if (ioctl(skfd, SIOCGIFCONF, &ifc) < 0) {	    perror("SIOCGIFCONF");	    goto out;	}	if (ifc.ifc_len == sizeof(struct ifreq) * numreqs) {	    /* assume it overflowed and try again */	    numreqs += 10;	    continue;	}	break;    }    ifr = ifc.ifc_req;    for (n = 0; n < ifc.ifc_len; n += sizeof(struct ifreq)) {	lookup_interface(ifr->ifr_name);	ifr++;    }    err = 0;out:    free(ifc.ifc_buf);    return err;}