summaryrefslogtreecommitdiff
path: root/src/shared
diff options
context:
space:
mode:
authorYu Watanabe <watanabe.yu+github@gmail.com>2020-11-10 01:14:38 +0900
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2020-12-08 18:08:31 +0100
commit45ed35fdc09f1c8dc2462d2ce2e257976c038262 (patch)
treee9f5c6e89987c1ca77b1011c0d357e65b72d405b /src/shared
parent6b9e8618e5eb11ad66992b5ee5c659fcc634a8be (diff)
downloadsystemd-45ed35fdc09f1c8dc2462d2ce2e257976c038262.tar.gz
ethtool: make ethtool_get_driver() return -ENODATA if ioctl succeeds but driver name is empty
Inspired by #17532. (cherry picked from commit 861de64e6858bc92b154ad70d1cee41ae5b75835)
Diffstat (limited to 'src/shared')
-rw-r--r--src/shared/ethtool-util.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/shared/ethtool-util.c b/src/shared/ethtool-util.c
index 14e91e3e4d..abf76f5f24 100644
--- a/src/shared/ethtool-util.c
+++ b/src/shared/ethtool-util.c
@@ -170,6 +170,9 @@ int ethtool_get_driver(int *ethtool_fd, const char *ifname, char **ret) {
if (r < 0)
return -errno;
+ if (isempty(ecmd.driver))
+ return -ENODATA;
+
d = strdup(ecmd.driver);
if (!d)
return -ENOMEM;