aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorshemminger <shemminger>2004-06-08 15:57:46 +0000
committershemminger <shemminger>2004-06-08 15:57:46 +0000
commit722fb5b06f1634e587d4e2605ea17e855f7f6e35 (patch)
tree3d04c13620aff791b6493d1c7dbac9588e8ce4e9
parenta7a262260da372c42850f7ce01a070275711c60d (diff)
downloadandroid_external_brctl-722fb5b06f1634e587d4e2605ea17e855f7f6e35.tar.gz
android_external_brctl-722fb5b06f1634e587d4e2605ea17e855f7f6e35.tar.bz2
android_external_brctl-722fb5b06f1634e587d4e2605ea17e855f7f6e35.zip
Add port_no back to port_info
-rw-r--r--brctl/brctl_disp.c8
-rw-r--r--libbridge/libbridge.h1
-rw-r--r--libbridge/libbridge_devif.c2
3 files changed, 7 insertions, 4 deletions
diff --git a/brctl/brctl_disp.c b/brctl/brctl_disp.c
index acdc687..27ce6d2 100644
--- a/brctl/brctl_disp.c
+++ b/brctl/brctl_disp.c
@@ -66,14 +66,14 @@ static int dump_port_info(const char *br, const char *p, void *arg)
{
struct port_info pinfo;
- printf("%s", p);
if (br_get_port_info(br, p, &pinfo)) {
- printf("\tcan't get port info\n");
+ printf("Can't get info for %p",p);
return 1;
}
- printf("\n port id\t\t%.4x\t\t\t", pinfo.port_id);
- printf("state\t\t%15s\n", br_get_state_name(pinfo.state));
+ printf("%s (%d)\n", p, pinfo.port_no);
+ printf(" port id\t\t%.4x", pinfo.port_id);
+ printf("\t\t\tstate\t\t%15s\n", br_get_state_name(pinfo.state));
printf(" designated root\t");
br_dump_bridge_id((unsigned char *)&pinfo.designated_root);
printf("\tpath cost\t\t%4i\n", pinfo.path_cost);
diff --git a/libbridge/libbridge.h b/libbridge/libbridge.h
index a8ff2c2..20d5bb5 100644
--- a/libbridge/libbridge.h
+++ b/libbridge/libbridge.h
@@ -60,6 +60,7 @@ struct fdb_entry
struct port_info
{
+ unsigned port_no;
struct bridge_id designated_root;
struct bridge_id designated_bridge;
u_int16_t port_id;
diff --git a/libbridge/libbridge_devif.c b/libbridge/libbridge_devif.c
index 0ca355d..09ce27c 100644
--- a/libbridge/libbridge_devif.c
+++ b/libbridge/libbridge_devif.c
@@ -269,6 +269,7 @@ static int old_get_port_info(const char *brname, const char *port,
}
}
+ info->port_no = index;
memcpy(&info->designated_root, &i.designated_root, 8);
memcpy(&info->designated_bridge, &i.designated_bridge, 8);
info->port_id = i.port_id;
@@ -304,6 +305,7 @@ int br_get_port_info(const char *brname, const char *port,
memset(info, 0, sizeof(*info));
fetch_id(sdir, "designated_root", &info->designated_root);
fetch_id(sdir, "designated_bridge", &info->designated_bridge);
+ info->port_no = fetch_int(sdir, "port_no");
info->port_id = fetch_int(sdir, "port_id");
info->designated_port = fetch_int(sdir, "designated_port");
info->path_cost = fetch_int(sdir, "path_cost");