Re: [PATCH] skip . and .. in accurately in isbridge() |
|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
On Tue, Sep 6, 2011 at 12:43 AM, Stephen Hemminger
<shemminger@xxxxxxxxxx> wrote:
> On Mon, 5 Sep 2011 22:58:07 +0800
> Xiaochen Wang <wangxiaochen0@xxxxxxxxx> wrote:
>
>> Hi all,
>>
>> In commit f88f8 "Skip . and .. in foreach_bridge test", the code skips
>> all directories starting with dot.
>>
>> But if we create a bridge staring with dot, e.g. `.br0`, then `brctl show`
>> cannot show this one.
>> `.br0` should not be hidden, because we cannot find it except the command
>> `brctl show .br0`.
>>
>> Signed-off-by: Xiaochen Wang <wangxiaochen0@xxxxxxxxx>
>> ---
>> libbridge/libbridge_init.c | 7 +++++--
>> 1 files changed, 5 insertions(+), 2 deletions(-)
>>
>> diff --git a/libbridge/libbridge_init.c b/libbridge/libbridge_init.c
>> index 1c1acbd..177a391 100644
>> --- a/libbridge/libbridge_init.c
>> +++ b/libbridge/libbridge_init.c
>> @@ -49,9 +49,12 @@ static int isbridge(const struct dirent *entry)
>> char path[SYSFS_PATH_MAX];
>> struct stat st;
>>
>> - if (entry->d_name[0] == '.')
>> + 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);
>
> This was an accident originally, but allowing hidden bridges might be useful.
> And is common for other commands to not show names starting with .
>
I see.
_______________________________________________
Bridge mailing list
Bridge@xxxxxxxxxxxxxxxxxxxxxxxxxx
https://lists.linux-foundation.org/mailman/listinfo/bridge
[Netdev]
[AoE Tools]
[Linux Wireless]
[Kernel Newbies]
[Security]
[Linux for Hams]
[Netfilter]
[Bugtraq]
[Photo]
[Yosemite]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux RAID]
[Linux Admin]
[Samba]
[Video 4 Linux]
[Linux Resources]