lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:   Fri,  1 May 2020 17:47:14 +0900
From:   Benjamin Poirier <bpoirier@...ulusnetworks.com>
To:     netdev@...r.kernel.org
Cc:     Roopa Prabhu <roopa@...ulusnetworks.com>,
        Nikolay Aleksandrov <nikolay@...ulusnetworks.com>
Subject: [PATCH iproute2 v2 0/6] bridge vlan output fixes

More fixes for `bridge vlan` and `bridge vlan tunnelshow` normal and JSON
mode output.

Some column titles are changed, empty lines removed from the output,
interfaces with no vlans or tunnels are removed, columns are aligned.

Changes v2:
* dropped patch 1, "bridge: Use the same flag names in input and output"

Sample outputs with this config:

ip link add br0 type bridge

ip link add vx0 type vxlan dstport 4789 external
ip link set dev vx0 master br0
bridge vlan del vid 1 dev vx0

ip link add vx1 type vxlan dstport 4790 external
ip link set dev vx1 master br0

ip link add vx2 type vxlan dstport 4791 external
ip link set dev vx2 master br0
ip link set dev vx2 type bridge_slave vlan_tunnel on
bridge vlan add dev vx2 vid 2
bridge vlan add dev vx2 vid 2 tunnel_info id 2
bridge vlan add dev vx2 vid 1010-1020
bridge vlan add dev vx2 vid 1010-1020 tunnel_info id 1010-1020
bridge vlan add dev vx2 vid 1030
bridge vlan add dev vx2 vid 1030 tunnel_info id 65556

ip link add vx-longname type vxlan dstport 4792 external
ip link set dev vx-longname master br0
ip link set dev vx-longname type bridge_slave vlan_tunnel on
bridge vlan add dev vx-longname vid 2
bridge vlan add dev vx-longname vid 2 tunnel_info id 2

Before & after:

root@...d:/src/iproute2# bridge -c vlan
port    vlan ids
br0      1 PVID Egress Untagged

vx0     None
vx1      1 PVID Egress Untagged

vx2      1 PVID Egress Untagged
         2
         1010-1020
         1030

vx-longname      1 PVID Egress Untagged
         2

root@...d:/src/iproute2# ./bridge/bridge -c vlan
port              vlan-id
br0               1 PVID Egress Untagged
vx1               1 PVID Egress Untagged
vx2               1 PVID Egress Untagged
                  2
                  1010-1020
                  1030
vx-longname       1 PVID Egress Untagged
                  2
root@...d:/src/iproute2#

===

root@...d:/src/iproute2# bridge vlan tunnelshow
port    vlan ids        tunnel id
br0
vx0     None
vx1
vx2      2       2
         1010-1020       1010-1020
         1030    65556

vx-longname      2       2

root@...d:/src/iproute2# ./bridge/bridge vlan tunnelshow
port              vlan-id    tunnel-id
vx2               2          2
                  1010-1020  1010-1020
                  1030       65556
vx-longname       2          2
root@...d:/src/iproute2#

===

root@...d:/src/iproute2# bridge -j -p vlan tunnelshow
[ {
        "ifname": "br0",
        "tunnels": [ ]
    },{
        "ifname": "vx1",
        "tunnels": [ ]
    },{
        "ifname": "vx2",
        "tunnels": [ {
                "vlan": 2,
                "tunid": 2
            },{
                "vlan": 1010,
                "vlanEnd": 1020,
                "tunid": 1010,
                "tunidEnd": 1020
            },{
                "vlan": 1030,
                "tunid": 65556
            } ]
    },{
        "ifname": "vx-longname",
        "tunnels": [ {
                "vlan": 2,
                "tunid": 2
            } ]
    } ]
root@...d:/src/iproute2# ./bridge/bridge -j -p vlan tunnelshow
[ {
        "ifname": "vx2",
        "tunnels": [ {
                "vlan": 2,
                "tunid": 2
            },{
                "vlan": 1010,
                "vlanEnd": 1020,
                "tunid": 1010,
                "tunidEnd": 1020
            },{
                "vlan": 1030,
                "tunid": 65556
            } ]
    },{
        "ifname": "vx-longname",
        "tunnels": [ {
                "vlan": 2,
                "tunid": 2
            } ]
    } ]
root@...d:/src/iproute2#

Benjamin Poirier (6):
  bridge: Use consistent column names in vlan output
  bridge: Fix typo
  bridge: Fix output with empty vlan lists
  json_print: Return number of characters printed
  bridge: Align output columns
  Replace open-coded instances of print_nl()

 bridge/vlan.c                            | 111 +++++++++++++++--------
 include/json_print.h                     |  24 +++--
 lib/json_print.c                         |  95 +++++++++++--------
 tc/m_action.c                            |  14 +--
 tc/m_connmark.c                          |   4 +-
 tc/m_ctinfo.c                            |   4 +-
 tc/m_ife.c                               |   4 +-
 tc/m_mpls.c                              |   2 +-
 tc/m_nat.c                               |   4 +-
 tc/m_sample.c                            |   4 +-
 tc/m_skbedit.c                           |   4 +-
 tc/m_tunnel_key.c                        |  16 ++--
 tc/q_taprio.c                            |   8 +-
 tc/tc_util.c                             |   4 +-
 testsuite/tests/bridge/vlan/show.t       |  30 ++++++
 testsuite/tests/bridge/vlan/tunnelshow.t |   2 +-
 16 files changed, 210 insertions(+), 120 deletions(-)
 create mode 100755 testsuite/tests/bridge/vlan/show.t

-- 
2.26.0

Powered by blists - more mailing lists