From: Patrick McHardy Date: Thu, 3 Jul 2008 17:06:29 +0000 (+0200) Subject: iflink_vlan: support GVRP flag X-Git-Tag: v2.6.27~13 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=47420640687cbd389ddd99d39cf7fb0e0bcb265a;p=thirdparty%2Fiproute2.git iflink_vlan: support GVRP flag This is the patch for iproute for configuring GVRP. commit 32143eed8b706e5c6554ab42903533b3bccdc060 Author: Patrick McHardy Date: Thu Jul 3 19:05:09 2008 +0200 [IPROUTE]: iflink_vlan: support GVRP flag Signed-off-by: Patrick McHardy Signed-off-by: Stephen Hemminger --- diff --git a/ip/iplink_vlan.c b/ip/iplink_vlan.c index 19648395c..97244826a 100644 --- a/ip/iplink_vlan.c +++ b/ip/iplink_vlan.c @@ -26,7 +26,7 @@ static void explain(void) "\n" "VLANID := 0-4095\n" "FLAG-LIST := [ FLAG-LIST ] FLAG\n" - "FLAG := [ reorder_hdr { on | off } ]\n" + "FLAG := [ reorder_hdr { on | off } ] [ gvrp { on | off } ]\n" "QOS-MAP := [ QOS-MAP ] QOS-MAPPING\n" "QOS-MAPPING := FROM:TO\n" ); @@ -93,6 +93,15 @@ static int vlan_parse_opt(struct link_util *lu, int argc, char **argv, flags.flags &= ~VLAN_FLAG_REORDER_HDR; else return on_off("reorder_hdr"); + } else if (matches(*argv, "gvrp") == 0) { + NEXT_ARG(); + flags.mask |= VLAN_FLAG_GVRP; + if (strcmp(*argv, "on") == 0) + flags.flags |= VLAN_FLAG_GVRP; + else if (strcmp(*argv, "off") == 0) + flags.flags &= ~VLAN_FLAG_GVRP; + else + return on_off("gvrp"); } else if (matches(*argv, "ingress-qos-map") == 0) { NEXT_ARG(); if (vlan_parse_qos_map(&argc, &argv, n, @@ -146,6 +155,7 @@ static void vlan_print_flags(FILE *fp, __u32 flags) fprintf(fp, #f "%s", flags ? "," : ""); \ } _PF(REORDER_HDR); + _PF(GVRP); #undef _PF if (flags) fprintf(fp, "%x", flags);