[Bridge] two fields are missing in brctl output when using /sys
Jeremy Jackson
jerj at coplanar.net
Thu Apr 5 13:10:59 PDT 2007
I've noticed for a while that
# brctl showstp
output is showing 0 for port_no and port_id
It seems that somewhere in 2.6 sysfs land the following items got
printed in hexadecimal, and brctl code was parsing for decimal only
doug:/sys/class/net/eth0/brport# cat port_id
0x8001
doug:/sys/class/net/eth0/brport# cat port_no
0x1
The following patch to bridge-utils (git and 1.2 release) lets it do the
right thing:
diff -ur bridge-utils-1.2/libbridge/libbridge_devif.c
bridge-utils/libbridge/lib
bridge_devif.c
--- bridge-utils-1.2/libbridge/libbridge_devif.c 2007-04-05
16:02:58.2870
22220 -0400
+++ bridge-utils/libbridge/libbridge_devif.c 2007-04-05
14:51:19.362040447 -0
400
@@ -56,7 +56,7 @@
if (!f)
fprintf(stderr, "%s: %s\n", dev, strerror(errno));
else {
- fscanf(f, "%i", &value);
+ fscanf(f, "%d", &value);
fclose(f);
}
return value;
Please CC replies as I'm not subscribed.
--
Jeremy Jackson
jerj at coplanar.net Email/Jabber/Google Talk/MSN
(519)489-4903
Coplanar Networks
http://www.coplanar.net
More information about the Bridge
mailing list