Sophie

Sophie

distrib > Fedora > 14 > x86_64 > by-pkgid > 1b7e0a8bea1a4df0ae0733e0450da1af > files > 4

bridge-utils-1.2-9.fc13.src.rpm

diff --git a/libbridge/libbridge_devif.c b/libbridge/libbridge_devif.c
diff --git a/libbridge/libbridge_init.c b/libbridge/libbridge_init.c
index e2eab77..38b8a18 100644
--- a/libbridge/libbridge_init.c
+++ b/libbridge/libbridge_init.c
@@ -186,12 +186,15 @@ int br_foreach_port(const char *brname,
 	struct dirent **namelist;
 	char path[SYSFS_PATH_MAX];
 
-	snprintf(path, SYSFS_PATH_MAX, SYSFS_CLASS_NET "%s/brport", brname);
+	snprintf(path, SYSFS_PATH_MAX, SYSFS_CLASS_NET "%s/brif", brname);
 	count = scandir(path, &namelist, 0, alphasort);
 	if (count < 0)
 		return old_foreach_port(brname, iterator, arg);
 
 	for (i = 0; i < count; i++) {
+		if (!strcmp(namelist[i]->d_name, ".") ||
+		    !strcmp(namelist[i]->d_name, ".."))
+			continue;
 		if (iterator(brname, namelist[i]->d_name, arg))
 			break;
 	}