mirror of
				https://git.proxmox.com/git/mirror_iproute2
				synced 2025-10-31 21:29:00 +00:00 
			
		
		
		
	 b11b495e7c
			
		
	
	
		b11b495e7c
		
	
	
	
	
		
			
			Since the commit below mdb's json output has been invalid and also with
changed format. Restore it to a valid json like the previous format.
Also takes care of a double "Deleted" print when monitoring for changes.
Example bridge -p -d -j mdb show:
 [ {
        "mdb": [ {
                "index": 4,
                "dev": "virbr0",
                "port": "vnet2",
                "grp": "ff02::202",
                "state": "temp",
                "flags": [ ]
            },{
                "index": 4,
                "dev": "virbr0",
                "port": "vnet2",
                "grp": "ff02::1:fffb:1939",
                "state": "temp",
                "flags": [ ]
            },{
                "index": 6,
                "dev": "virbr1",
                "port": "vnet7",
                "grp": "ff02::202",
                "state": "temp",
                "flags": [ ]
            },{
                "index": 6,
                "dev": "virbr1",
                "port": "vnet7",
                "grp": "ff02::1:ffd0:f61f",
                "state": "temp",
                "flags": [ ]
            } ],
        "router": {
            "virbr0": [ {
                    "port": "vnet1"
                },{
                    "port": "vnet0"
                } ],
            "virbr1": [ {
                    "port": "vnet5"
                } ]
        }
    } ]
Fixes: c7c1a1ef51 ("bridge: colorize output and use JSON print library")
Signed-off-by: Nikolay Aleksandrov <nikolay@cumulusnetworks.com>
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
		
	
			
		
			
				
	
	
		
			27 lines
		
	
	
		
			788 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			27 lines
		
	
	
		
			788 B
		
	
	
	
		
			C
		
	
	
	
	
	
| /* SPDX-License-Identifier: GPL-2.0 */
 | |
| 
 | |
| #define MDB_RTA(r) \
 | |
| 		((struct rtattr *)(((char *)(r)) + RTA_ALIGN(sizeof(struct br_mdb_entry))))
 | |
| 
 | |
| #define MDB_RTR_RTA(r) \
 | |
| 		((struct rtattr *)(((char *)(r)) + RTA_ALIGN(sizeof(__u32))))
 | |
| 
 | |
| void print_vlan_info(struct rtattr *tb, int ifindex);
 | |
| int print_linkinfo(struct nlmsghdr *n, void *arg);
 | |
| int print_mdb_mon(struct nlmsghdr *n, void *arg);
 | |
| int print_fdb(struct nlmsghdr *n, void *arg);
 | |
| 
 | |
| int do_fdb(int argc, char **argv);
 | |
| int do_mdb(int argc, char **argv);
 | |
| int do_monitor(int argc, char **argv);
 | |
| int do_vlan(int argc, char **argv);
 | |
| int do_link(int argc, char **argv);
 | |
| 
 | |
| extern int preferred_family;
 | |
| extern int show_stats;
 | |
| extern int show_details;
 | |
| extern int timestamp;
 | |
| extern int compress_vlans;
 | |
| extern int json;
 | |
| extern struct rtnl_handle rth;
 |