From 946eda96fff9868f511118eadcdf2a681d68fef2 Mon Sep 17 00:00:00 2001 From: David Woodhouse Date: Mar 05 2008 16:16:44 +0000 Subject: cleaner fix --- diff --git a/bridge-utils-1.2-foreach.patch b/bridge-utils-1.2-foreach.patch index 9d3ab1a..bc178bb 100644 --- a/bridge-utils-1.2-foreach.patch +++ b/bridge-utils-1.2-foreach.patch @@ -1,13 +1,17 @@ ---- bridge-utils-1.2/libbridge/libbridge_init.c~ 2007-08-22 14:22:49.000000000 +0100 -+++ bridge-utils-1.2/libbridge/libbridge_init.c 2008-03-05 15:40:42.000000000 +0000 -@@ -49,8 +49,8 @@ static int isbridge(const struct dirent +diff --git a/libbridge/libbridge_init.c b/libbridge/libbridge_init.c +index a7473bd..d093bb1 100644 +--- a/libbridge/libbridge_init.c ++++ b/libbridge/libbridge_init.c +@@ -49,6 +49,12 @@ static int isbridge(const struct dirent *entry) char path[SYSFS_PATH_MAX]; struct stat st; -- snprintf(path, SYSFS_PATH_MAX, SYSFS_CLASS_NET "%s/bridge", entry->d_name); -- return stat(path, &st) == 0 && S_ISDIR(st.st_mode); -+ snprintf(path, SYSFS_PATH_MAX, SYSFS_CLASS_NET "%s/bridge/bridge_id", entry->d_name); -+ return stat(path, &st) == 0 && S_ISREG(st.st_mode); ++ /* Ignore "." and ".." entries. */ ++ if (entry->d_name[0] == '.' && ++ (entry->d_name[1] == 0 || ++ (entry->d_name[1] == '.' && entry->d_name[2] == 0))) ++ return 0; ++ + snprintf(path, SYSFS_PATH_MAX, SYSFS_CLASS_NET "%s/bridge", entry->d_name); + return stat(path, &st) == 0 && S_ISDIR(st.st_mode); } - - /*