diff options
author | Tom Gundersen <teg@jklm.no> | 2014-02-22 18:23:19 +0100 |
---|---|---|
committer | Tom Gundersen <teg@jklm.no> | 2014-02-22 18:29:43 +0100 |
commit | 733f7a2c69c794a81978a08a79916c224ba355a6 (patch) | |
tree | fc1a737533911f64f9e351a278aa42de49e36e34 /src/udev | |
parent | dd4d2c1cd1eb7c1f3163f6f922362af3189df0a3 (diff) |
udev: net - allow MTU and Speed to be specified with units
This also changes the names to MTUBytes and BitsPerSecond, respectively. Notice
that the speed was mistakenly documented to be in bytes before this change.
Diffstat (limited to 'src/udev')
-rw-r--r-- | src/udev/net/link-config-gperf.gperf | 4 | ||||
-rw-r--r-- | src/udev/net/link-config.c | 7 |
2 files changed, 6 insertions, 5 deletions
diff --git a/src/udev/net/link-config-gperf.gperf b/src/udev/net/link-config-gperf.gperf index 277ceb538..3384ca041 100644 --- a/src/udev/net/link-config-gperf.gperf +++ b/src/udev/net/link-config-gperf.gperf @@ -30,7 +30,7 @@ Link.MACAddress, config_parse_hwaddr, 0, Link.NamePolicy, config_parse_name_policy, 0, offsetof(link_config, name_policy) Link.Name, config_parse_ifname, 0, offsetof(link_config, name) Link.Alias, config_parse_ifalias, 0, offsetof(link_config, alias) -Link.MTU, config_parse_unsigned, 0, offsetof(link_config, mtu) -Link.SpeedMBytes, config_parse_unsigned, 0, offsetof(link_config, speed) +Link.MTUBytes, config_parse_bytes_size, 0, offsetof(link_config, mtu) +Link.BitsPerSecond, config_parse_bytes_size, 0, offsetof(link_config, speed) Link.Duplex, config_parse_duplex, 0, offsetof(link_config, duplex) Link.WakeOnLan, config_parse_wol, 0, offsetof(link_config, wol) diff --git a/src/udev/net/link-config.c b/src/udev/net/link-config.c index 92d248fc6..05225e011 100644 --- a/src/udev/net/link-config.c +++ b/src/udev/net/link-config.c @@ -365,10 +365,11 @@ int link_config_apply(link_config_ctx *ctx, link_config *config, struct udev_dev if (!old_name) return -EINVAL; - r = ethtool_set_speed(ctx->ethtool_fd, old_name, config->speed, config->duplex); + r = ethtool_set_speed(ctx->ethtool_fd, old_name, config->speed / 1024, config->duplex); if (r < 0) - log_warning("Could not set speed or duplex of %s to %u Mbytes (%s): %s", - old_name, config->speed, duplex_to_string(config->duplex), strerror(-r)); + log_warning("Could not set speed or duplex of %s to %u Mbps (%s): %s", + old_name, config->speed / 1024, duplex_to_string(config->duplex), + strerror(-r)); r = ethtool_set_wol(ctx->ethtool_fd, old_name, config->wol); if (r < 0) |