mirror of
https://git.kernel.org/pub/scm/network/wireless/iwd.git
synced 2024-11-24 16:49:25 +01:00
monitor: Print rmnet flags
This commit is contained in:
parent
5f74ed75e7
commit
e5c0e18751
@ -37,6 +37,7 @@
|
|||||||
#include <linux/if.h>
|
#include <linux/if.h>
|
||||||
#include <linux/if_packet.h>
|
#include <linux/if_packet.h>
|
||||||
#include <linux/if_ether.h>
|
#include <linux/if_ether.h>
|
||||||
|
#include <linux/if_link.h>
|
||||||
#include <linux/netlink.h>
|
#include <linux/netlink.h>
|
||||||
#include <linux/genetlink.h>
|
#include <linux/genetlink.h>
|
||||||
#include <linux/rtnetlink.h>
|
#include <linux/rtnetlink.h>
|
||||||
@ -7599,8 +7600,44 @@ static void flags_str(const struct flag_names *table,
|
|||||||
pos += sprintf(str + pos, "]");
|
pos += sprintf(str + pos, "]");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void print_rmnet_flags(unsigned int indent,
|
||||||
|
const char *label, uint32_t flags)
|
||||||
|
{
|
||||||
|
if (flags & RMNET_FLAGS_INGRESS_DEAGGREGATION)
|
||||||
|
print_attr(indent, "%s: %s", label, "deaggregation");
|
||||||
|
if (flags & RMNET_FLAGS_INGRESS_MAP_COMMANDS)
|
||||||
|
print_attr(indent, "%s: %s", label, "map commands");
|
||||||
|
if (flags & RMNET_FLAGS_INGRESS_MAP_CKSUMV4)
|
||||||
|
print_attr(indent, "%s: %s", label, "ingress_mapv4");
|
||||||
|
if (flags & RMNET_FLAGS_EGRESS_MAP_CKSUMV4)
|
||||||
|
print_attr(indent, "%s: %s", label, "egress_mapv4");
|
||||||
|
if (flags & RMNET_FLAGS_INGRESS_MAP_CKSUMV5)
|
||||||
|
print_attr(indent, "%s: %s", label, "ingress_mapv5");
|
||||||
|
if (flags & RMNET_FLAGS_EGRESS_MAP_CKSUMV5)
|
||||||
|
print_attr(indent, "%s: %s", label, "egress_mapv5");
|
||||||
|
}
|
||||||
|
|
||||||
|
static void print_ifla_rmnet_flags(unsigned int indent, const char *str,
|
||||||
|
const void *buf, uint16_t size)
|
||||||
|
{
|
||||||
|
struct ifla_rmnet_flags flags;
|
||||||
|
|
||||||
|
if (size != 8) {
|
||||||
|
printf("malformed packet\n");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
memcpy(&flags, buf, size);
|
||||||
|
|
||||||
|
print_attr(indent, "%s:", str);
|
||||||
|
print_rmnet_flags(indent + 1, "Flags", flags.flags);
|
||||||
|
print_rmnet_flags(indent + 1, "Mask", flags.mask);
|
||||||
|
}
|
||||||
|
|
||||||
static struct attr_entry link_info_data_entry[] = {
|
static struct attr_entry link_info_data_entry[] = {
|
||||||
{ IFLA_RMNET_MUX_ID, "RMNet Mux Id", ATTR_U16 },
|
{ IFLA_RMNET_MUX_ID, "RMNet Mux Id", ATTR_U16 },
|
||||||
|
{ IFLA_RMNET_FLAGS, "RMNet Flags", ATTR_CUSTOM,
|
||||||
|
{ .function = print_ifla_rmnet_flags } },
|
||||||
{ },
|
{ },
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user