diff options
| author | Lennart Poettering <lennart@poettering.net> | 2014-02-21 21:23:40 +0100 | 
|---|---|---|
| committer | Lennart Poettering <lennart@poettering.net> | 2014-02-21 21:23:40 +0100 | 
| commit | 61f3af4fed2f0d2686bd7ae4cd22bc3e973ddeca (patch) | |
| tree | baa9e5a691e40fd54c1f6c610a36c37c353b4b82 | |
| parent | ed4ba7e4f652150310d062ffbdfefb4521ce1054 (diff) | |
net: initialize structs when declaring them/do not clobber caller variables
Just two minor style fixes...
| -rw-r--r-- | src/udev/net/ethtool-util.c | 19 | 
1 files changed, 10 insertions, 9 deletions
| diff --git a/src/udev/net/ethtool-util.c b/src/udev/net/ethtool-util.c index aaba94c2fb..18d44fc968 100644 --- a/src/udev/net/ethtool-util.c +++ b/src/udev/net/ethtool-util.c @@ -64,25 +64,26 @@ int ethtool_connect(int *ret) {  }  int ethtool_get_driver(int fd, const char *ifname, char **ret) { -        struct ifreq ifr; -        struct ethtool_drvinfo ecmd; +        struct ethtool_drvinfo ecmd = { +                .cmd = ETHTOOL_GDRVINFO +        }; +        struct ifreq ifr = { +                .ifr_data = (void*) &ecmd +        }; +        char *d;          int r; -        zero(ecmd); -        ecmd.cmd = ETHTOOL_GDRVINFO; - -        zero(ifr);          strscpy(ifr.ifr_name, IFNAMSIZ, ifname); -        ifr.ifr_data = (void *)&ecmd;          r = ioctl(fd, SIOCETHTOOL, &ifr);          if (r < 0)                  return -errno; -        *ret = strdup(ecmd.driver); -        if (!*ret) +        d = strdup(ecmd.driver); +        if (!d)                  return -ENOMEM; +        *ret = d;          return 0;  } | 
