mirror of
https://git.proxmox.com/git/mirror_iproute2
synced 2025-08-10 20:54:06 +00:00

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;
|