Blob Blame History Raw
commit 02096148c9c407502697cfefbc0aed50eb820bbd
Author: andy-1 <andy-1@sourceforge.net>
Date:   Tue Apr 27 23:33:23 2010 -0700

    Ignore /sys/net/dev files if we get ENODEV for them, not just ENXIO.
    
    Both of them are indications that there's no such interface, so the file
    probably corresponds to something other than a device.
    
    Reviewed-By: Guy Harris <guy@alum.mit.edu>

diff --git a/CREDITS b/CREDITS
index 0d23783..6efc188 100644
--- a/CREDITS
+++ b/CREDITS
@@ -15,6 +15,7 @@ Additional people who have contributed patches:
 	Alexey Kuznetsov		<kuznet at ms2 dot inr dot ac dot ru>
 	Alon Bar-Lev			<alonbl at sourceforge dot net>
 	Andrew Brown			<atatat at atatdot dot net>
+					<andy-1 at sourceforge dot net>
 	Antti Kantee			<pooka at netbsd dot org>
 	Arien Vijn			<arienvijn at sourceforge dot net>
 	Arkadiusz Miskiewicz		<misiek at pld dot org dot pl>
diff --git a/pcap-linux.c b/pcap-linux.c
index af12543..de3239a 100644
--- a/pcap-linux.c
+++ b/pcap-linux.c
@@ -1883,7 +1883,7 @@ scan_sys_class_net(pcap_if_t **devlistp, char *errbuf)
 		 */
 		strncpy(ifrflags.ifr_name, name, sizeof(ifrflags.ifr_name));
 		if (ioctl(fd, SIOCGIFFLAGS, (char *)&ifrflags) < 0) {
-			if (errno == ENXIO)
+			if (errno == ENXIO || errno == ENODEV)
 				continue;
 			(void)snprintf(errbuf, PCAP_ERRBUF_SIZE,
 			    "SIOCGIFFLAGS: %.*s: %s",