summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry V. Levin <ldv@strace.io>2023-04-19 08:00:00 +0000
committerDmitry V. Levin <ldv@strace.io>2023-04-28 08:00:00 +0000
commit58de1e5c664cb465ae2e1a1a3121a56d93cb71e8 (patch)
treeb3ed3e5658c1a9997c4a9ee1fd1e7c8df64f20bd
parent8158d448c0e799b01a17e307cf013af7e0eb6f3a (diff)
downloadstrace-58de1e5c664cb465ae2e1a1a3121a56d93cb71e8.tar.gz
xlat: update IFLA_BRPORT_* constants
* src/xlat/rtnl_ifla_brport_attrs.in (IFLA_BRPORT_MCAST_N_GROUPS, IFLA_BRPORT_MCAST_MAX_GROUPS): New constants introduced by Linux kernel commit v6.3-rc1~162^2~139^2~8. * src/rtnl_link.c (ifla_brport_nla_decoders): Add IFLA_BRPORT_MCAST_N_GROUPS and IFLA_BRPORT_MCAST_MAX_GROUPS. * tests/nlattr_ifla_brport.c (main): Update expected output. * tests/nlattr_ifla_linkinfo.c (main): Likewise. * NEWS: Mention this.
-rw-r--r--NEWS5
-rw-r--r--src/rtnl_link.c2
-rw-r--r--src/xlat/rtnl_ifla_brport_attrs.in2
-rw-r--r--tests/nlattr_ifla_brport.c4
-rw-r--r--tests/nlattr_ifla_linkinfo.c4
5 files changed, 13 insertions, 4 deletions
diff --git a/NEWS b/NEWS
index 0e9eb2aa1..643453318 100644
--- a/NEWS
+++ b/NEWS
@@ -6,8 +6,9 @@ Noteworthy changes in release ?.? (????-??-??)
that operate on the specified set of file descriptors.
* Implemented -l/--syscall-limit option to automatically detach tracees
after capturing the specified number of syscalls.
- * Implemented decoding of IFLA_GSO_IPV4_MAX_SIZE and IFLA_GRO_IPV4_MAX_SIZE
- netlink attributes.
+ * Implemented decoding of IFLA_BRPORT_MCAST_N_GROUPS,
+ IFLA_BRPORT_MCAST_MAX_GROUPS, IFLA_GSO_IPV4_MAX_SIZE,
+ and IFLA_GRO_IPV4_MAX_SIZE netlink attributes.
* Updated lists of F_SEAL_* and IFLA_* constants.
* Updated lists of ioctl commands from Linux 6.3.
diff --git a/src/rtnl_link.c b/src/rtnl_link.c
index 666226afd..2356c1dc3 100644
--- a/src/rtnl_link.c
+++ b/src/rtnl_link.c
@@ -212,6 +212,8 @@ static const nla_decoder_t ifla_brport_nla_decoders[] = {
[IFLA_BRPORT_MCAST_EHT_HOSTS_CNT] = decode_nla_u32,
[IFLA_BRPORT_LOCKED] = decode_nla_u8,
[IFLA_BRPORT_MAB] = decode_nla_u8,
+ [IFLA_BRPORT_MCAST_N_GROUPS] = decode_nla_u32,
+ [IFLA_BRPORT_MCAST_MAX_GROUPS] = decode_nla_u32,
};
static bool
diff --git a/src/xlat/rtnl_ifla_brport_attrs.in b/src/xlat/rtnl_ifla_brport_attrs.in
index a4affcf1b..98c64e66c 100644
--- a/src/xlat/rtnl_ifla_brport_attrs.in
+++ b/src/xlat/rtnl_ifla_brport_attrs.in
@@ -41,3 +41,5 @@ IFLA_BRPORT_MCAST_EHT_HOSTS_LIMIT
IFLA_BRPORT_MCAST_EHT_HOSTS_CNT
IFLA_BRPORT_LOCKED
IFLA_BRPORT_MAB
+IFLA_BRPORT_MCAST_N_GROUPS
+IFLA_BRPORT_MCAST_MAX_GROUPS
diff --git a/tests/nlattr_ifla_brport.c b/tests/nlattr_ifla_brport.c
index d5243bf14..d0491bb97 100644
--- a/tests/nlattr_ifla_brport.c
+++ b/tests/nlattr_ifla_brport.c
@@ -39,7 +39,7 @@ main(void)
{ ENUM_KNOWN(0, IFLA_BRPORT_UNSPEC) },
{ ENUM_KNOWN(0x18, IFLA_BRPORT_FLUSH) },
{ ENUM_KNOWN(0x1a, IFLA_BRPORT_PAD) },
- { ARG_XLAT_UNKNOWN(0x29, "IFLA_BRPORT_???") },
+ { ARG_XLAT_UNKNOWN(0x2b, "IFLA_BRPORT_???") },
{ ARG_XLAT_UNKNOWN(0xbad, "IFLA_BRPORT_???") },
};
for (size_t i = 0; i < ARRAY_SIZE(un_attrs); i++) {
@@ -123,6 +123,8 @@ main(void)
{ ENUM_KNOWN(0x3, IFLA_BRPORT_COST) },
{ ENUM_KNOWN(0x25, IFLA_BRPORT_MCAST_EHT_HOSTS_LIMIT) },
{ ENUM_KNOWN(0x26, IFLA_BRPORT_MCAST_EHT_HOSTS_CNT) },
+ { ENUM_KNOWN(0x29, IFLA_BRPORT_MCAST_N_GROUPS) },
+ { ENUM_KNOWN(0x2a, IFLA_BRPORT_MCAST_MAX_GROUPS) },
};
void *nlh_u32 = midtail_alloc(NLMSG_SPACE(hdrlen),
NLA_HDRLEN * 2 + sizeof(uint32_t));
diff --git a/tests/nlattr_ifla_linkinfo.c b/tests/nlattr_ifla_linkinfo.c
index b670a5f7f..dde057729 100644
--- a/tests/nlattr_ifla_linkinfo.c
+++ b/tests/nlattr_ifla_linkinfo.c
@@ -897,7 +897,7 @@ main(void)
{ 0, "IFLA_BRPORT_UNSPEC" },
{ 24, "IFLA_BRPORT_FLUSH" },
{ 26, "IFLA_BRPORT_PAD" },
- { 41, "0x29 /* IFLA_BRPORT_??? */" },
+ { 43, "0x2b /* IFLA_BRPORT_??? */" },
{ 2989, "0xbad /* IFLA_BRPORT_??? */" },
};
@@ -992,6 +992,8 @@ main(void)
{ 3, "IFLA_BRPORT_COST" },
{ 37, "IFLA_BRPORT_MCAST_EHT_HOSTS_LIMIT" },
{ 38, "IFLA_BRPORT_MCAST_EHT_HOSTS_CNT" },
+ { ARG_STR(IFLA_BRPORT_MCAST_N_GROUPS) },
+ { ARG_STR(IFLA_BRPORT_MCAST_MAX_GROUPS) },
};
for (size_t k = 0; k < ARRAY_SIZE(u32_brport_attrs); k++) {