diff options
author | Jakub Kicinski <kuba@kernel.org> | 2024-04-19 19:08:26 -0700 |
---|---|---|
committer | Paolo Abeni <pabeni@redhat.com> | 2024-04-23 15:37:33 +0200 |
commit | a44f2eb106a46f2275a79de54ce0ea63e4f3d8c8 (patch) | |
tree | ff8fc7c15429a4e9fb04c1b578642e575c71d681 | |
parent | 467324bcfe1a31ec65d0cf4aa59421d6b7a7d52b (diff) |
tools: ynl: don't ignore errors in NLMSG_DONE messages
NLMSG_DONE contains an error code, it has to be extracted.
Prior to this change all dumps will end in success,
and in case of failure the result is silently truncated.
Fixes: e4b48ed460d3 ("tools: ynl: add a completely generic client")
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Reviewed-by: Donald Hunter <donald.hunter@gmail.com>
Link: https://lore.kernel.org/r/20240420020827.3288615-1-kuba@kernel.org
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
-rw-r--r-- | tools/net/ynl/lib/ynl.py | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/tools/net/ynl/lib/ynl.py b/tools/net/ynl/lib/ynl.py index 5fa7957f6e0f..25810e18b0a7 100644 --- a/tools/net/ynl/lib/ynl.py +++ b/tools/net/ynl/lib/ynl.py @@ -182,6 +182,7 @@ class NlMsg: self.done = 1 extack_off = 20 elif self.nl_type == Netlink.NLMSG_DONE: + self.error = struct.unpack("i", self.raw[0:4])[0] self.done = 1 extack_off = 4 |