From 4523a376cc4910750e82a783ea98f104ce2e5118 Mon Sep 17 00:00:00 2001 From: Thomas Haller Date: Wed, 19 Dec 2018 13:34:41 +0100 Subject: dhcp: fix generating MAC based client-id for infiniband For infiniband, only the last 8 bytes for the 20 bytes hardware address are relevant. At least, with respect to the settings - ipv4.dhcp-client-id=mac - ipv4.dhcp-client-id=perm-mac - ipv6.dhcp-duid=ll - ipv6.dhcp-duid=llt - ipv6.dhcp-duid=stable-ll - ipv6.dhcp-duid=stable-llt This is also what ISC dhclient on Fedora/RHEL does ([1], [2]). [1] https://bugzilla.redhat.com/show_bug.cgi?id=660681 [2] https://src.fedoraproject.org/rpms/dhcp/blob/3ccf3c8d815df4b8e11e1a04850975f099273d5d/f/dhcp-lpf-ib.patch https://bugzilla.redhat.com/show_bug.cgi?id=1658057 --- src/devices/nm-device.c | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/src/devices/nm-device.c b/src/devices/nm-device.c index 9c76a2c887..e102dc8e81 100644 --- a/src/devices/nm-device.c +++ b/src/devices/nm-device.c @@ -7472,6 +7472,22 @@ _ASSERT_arp_type (guint16 arp_type, nm_assert (hwaddr); } +static void +_hwaddr_get_relevant_part (guint16 arp_type, + const guint8 **hwaddr, + gsize *hwaddr_len) +{ + nm_assert (hwaddr); + nm_assert (hwaddr_len); + _ASSERT_arp_type (arp_type, *hwaddr, *hwaddr_len); + + /* for infiniband, we only consider the last 8 bytes. */ + if (arp_type == ARPHRD_INFINIBAND) { + *hwaddr += (INFINIBAND_ALEN - 8); + *hwaddr_len = 8; + } +} + static GBytes * dhcp4_get_client_id_mac (guint16 arp_type, const guint8 *hwaddr, @@ -7480,7 +7496,7 @@ dhcp4_get_client_id_mac (guint16 arp_type, guint8 *client_id_buf; const guint8 hwaddr_type = arp_type; - _ASSERT_arp_type (arp_type, hwaddr, hwaddr_len); + _hwaddr_get_relevant_part (arp_type, &hwaddr, &hwaddr_len); client_id_buf = g_malloc (hwaddr_len + 1); client_id_buf[0] = hwaddr_type; @@ -8224,7 +8240,7 @@ generate_duid_llt (guint16 arp_type, const guint16 hw_type = htons (arp_type); const guint32 duid_time = htonl (NM_MAX (0, time - EPOCH_DATETIME_200001010000)); - _ASSERT_arp_type (arp_type, hwaddr, hwaddr_len); + _hwaddr_get_relevant_part (arp_type, &hwaddr, &hwaddr_len); arr = g_new (guint8, 2 + 2 + 4 + hwaddr_len); @@ -8245,7 +8261,7 @@ generate_duid_ll (guint16 arp_type, const guint16 duid_type = htons (3); const guint16 hw_type = htons (arp_type); - _ASSERT_arp_type (arp_type, hwaddr, hwaddr_len); + _hwaddr_get_relevant_part (arp_type, &hwaddr, &hwaddr_len); arr = g_new (guint8, 2 + 2 + hwaddr_len); -- cgit v1.2.1 From 6f0cb0bf4f19a75e4ca791d249d4bf2b689b4ebf Mon Sep 17 00:00:00 2001 From: Thomas Haller Date: Wed, 19 Dec 2018 13:42:10 +0100 Subject: dhcp/trivial: add comment about requiring DHCP client-id for infiniband --- src/dhcp/nm-dhcp-systemd.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/dhcp/nm-dhcp-systemd.c b/src/dhcp/nm-dhcp-systemd.c index 614485c4e7..f0d41fa593 100644 --- a/src/dhcp/nm-dhcp-systemd.c +++ b/src/dhcp/nm-dhcp-systemd.c @@ -740,6 +740,8 @@ ip4_start (NMDhcpClient *client, return FALSE; } + /* Note that we always set a client-id. In particular for infiniband that is necessary, + * see https://tools.ietf.org/html/rfc4390#section-2.1 . */ r = sd_dhcp_client_set_client_id (sd_client, client_id_arr[0], client_id_arr + 1, -- cgit v1.2.1 From 3bce451c60ac808dca1bf94de5a11c462934e8df Mon Sep 17 00:00:00 2001 From: Thomas Haller Date: Thu, 20 Dec 2018 08:50:07 +0100 Subject: core/trivial: rename nm_utils_detect_arp_type_from_addrlen() to nm_utils_arp_type_detect_from_hwaddrlen() Rename the function so that the function name's prefix is the topic what this is about: arp-type. --- src/devices/nm-device.c | 8 ++++---- src/dhcp/nm-dhcp-systemd.c | 4 ++-- src/nm-core-utils.c | 4 ++-- src/nm-core-utils.h | 2 +- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/devices/nm-device.c b/src/devices/nm-device.c index e102dc8e81..1ca88d553d 100644 --- a/src/devices/nm-device.c +++ b/src/devices/nm-device.c @@ -7547,7 +7547,7 @@ dhcp4_get_client_id (NMDevice *self, } hwaddr_bin = g_bytes_get_data (hwaddr, &hwaddr_len); - arp_type = nm_utils_detect_arp_type_from_addrlen (hwaddr_len); + arp_type = nm_utils_arp_type_detect_from_hwaddrlen (hwaddr_len); if (arp_type < 0) { fail_reason = "unsupported link-layer address"; goto out_fail; @@ -7569,7 +7569,7 @@ dhcp4_get_client_id (NMDevice *self, if (!_nm_utils_hwaddr_aton (hwaddr_str, hwaddr_bin_buf, sizeof (hwaddr_bin_buf), &hwaddr_len)) g_return_val_if_reached (NULL); - arp_type = nm_utils_detect_arp_type_from_addrlen (hwaddr_len); + arp_type = nm_utils_arp_type_detect_from_hwaddrlen (hwaddr_len); if (arp_type < 0) { fail_reason = "unsupported permanent link-layer address"; goto out_fail; @@ -8376,7 +8376,7 @@ dhcp6_get_duid (NMDevice *self, NMConnection *connection, GBytes *hwaddr, gboole } hwaddr_bin = g_bytes_get_data (hwaddr, &hwaddr_len); - arp_type = nm_utils_detect_arp_type_from_addrlen (hwaddr_len); + arp_type = nm_utils_arp_type_detect_from_hwaddrlen (hwaddr_len); if (arp_type < 0) { duid_error = "unsupported link-layer address"; goto out_fail; @@ -8434,7 +8434,7 @@ dhcp6_get_duid (NMDevice *self, NMConnection *connection, GBytes *hwaddr, gboole duid_error = "missing link-layer address"; goto out_fail; } - if ((arp_type = nm_utils_detect_arp_type_from_addrlen (g_bytes_get_size (hwaddr))) < 0) { + if ((arp_type = nm_utils_arp_type_detect_from_hwaddrlen (g_bytes_get_size (hwaddr))) < 0) { duid_error = "unsupported link-layer address"; goto out_fail; } diff --git a/src/dhcp/nm-dhcp-systemd.c b/src/dhcp/nm-dhcp-systemd.c index f0d41fa593..632d49998c 100644 --- a/src/dhcp/nm-dhcp-systemd.c +++ b/src/dhcp/nm-dhcp-systemd.c @@ -681,7 +681,7 @@ ip4_start (NMDhcpClient *client, hwaddr = nm_dhcp_client_get_hw_addr (client); if ( !hwaddr || !(hwaddr_arr = g_bytes_get_data (hwaddr, &hwaddr_len)) - || (arp_type = nm_utils_detect_arp_type_from_addrlen (hwaddr_len)) < 0) { + || (arp_type = nm_utils_arp_type_detect_from_hwaddrlen (hwaddr_len)) < 0) { nm_utils_error_set_literal (error, NM_UTILS_ERROR_UNKNOWN, "invalid MAC address"); return FALSE; } @@ -1034,7 +1034,7 @@ ip6_start (NMDhcpClient *client, hwaddr = nm_dhcp_client_get_hw_addr (client); if ( !hwaddr || !(hwaddr_arr = g_bytes_get_data (hwaddr, &hwaddr_len)) - || (arp_type = nm_utils_detect_arp_type_from_addrlen (hwaddr_len)) < 0) { + || (arp_type = nm_utils_arp_type_detect_from_hwaddrlen (hwaddr_len)) < 0) { nm_utils_error_set_literal (error, NM_UTILS_ERROR_UNKNOWN, "invalid MAC address"); return FALSE; } diff --git a/src/nm-core-utils.c b/src/nm-core-utils.c index 0ba3a5cb94..d039a98351 100644 --- a/src/nm-core-utils.c +++ b/src/nm-core-utils.c @@ -2841,7 +2841,7 @@ nm_utils_boot_id_bin (void) /*****************************************************************************/ /** - * nm_utils_detect_arp_type_from_addrlen: + * nm_utils_arp_type_detect_from_hwaddrlen: * @hwaddr_len: the length of the hardware address in bytes. * * Detects the arp-type based on the length of the MAC address. @@ -2852,7 +2852,7 @@ nm_utils_boot_id_bin (void) * * Returns: the arp-type or negative value on error. */ int -nm_utils_detect_arp_type_from_addrlen (gsize hwaddr_len) +nm_utils_arp_type_detect_from_hwaddrlen (gsize hwaddr_len) { switch (hwaddr_len) { case ETH_ALEN: diff --git a/src/nm-core-utils.h b/src/nm-core-utils.h index ea9174bd15..f0e0c4d2ec 100644 --- a/src/nm-core-utils.h +++ b/src/nm-core-utils.h @@ -279,7 +279,7 @@ gboolean nm_utils_host_id_get (const guint8 **out_host_id, gsize *out_host_id_len); gint64 nm_utils_host_id_get_timestamp_ns (void); -int nm_utils_detect_arp_type_from_addrlen (gsize hwaddr_len); +int nm_utils_arp_type_detect_from_hwaddrlen (gsize hwaddr_len); /* IPv6 Interface Identifier helpers */ -- cgit v1.2.1 From 2ef9a089eb430536a3ebd0fce784dbfbac061b80 Mon Sep 17 00:00:00 2001 From: Thomas Haller Date: Thu, 20 Dec 2018 08:38:05 +0100 Subject: dhcp: move nm_utils_dhcp_client_id_mac() to "nm-core-utils.c" We will need it outside of "src/devices/nm-device.c". --- src/devices/nm-device.c | 61 +++++++----------------------------------------- src/nm-core-utils.c | 62 +++++++++++++++++++++++++++++++++++++++++++++++++ src/nm-core-utils.h | 16 +++++++++++++ 3 files changed, 86 insertions(+), 53 deletions(-) diff --git a/src/devices/nm-device.c b/src/devices/nm-device.c index 1ca88d553d..f03dd1e59c 100644 --- a/src/devices/nm-device.c +++ b/src/devices/nm-device.c @@ -7457,53 +7457,6 @@ get_dhcp_timeout (NMDevice *self, int addr_family) return timeout ?: NM_DHCP_TIMEOUT_DEFAULT; } -static void -_ASSERT_arp_type (guint16 arp_type, - const guint8 *hwaddr, - gsize hwaddr_len) -{ - /* we actually only support ethernet and infiniband below. Assert that - * the arp-type and the address length correspond. */ - nm_assert (NM_IN_SET (arp_type, ARPHRD_ETHER, ARPHRD_INFINIBAND)); - nm_assert (arp_type <= 255); - nm_assert (hwaddr_len > 0); - nm_assert (arp_type != ARPHRD_ETHER || hwaddr_len == ETH_ALEN); - nm_assert (arp_type != ARPHRD_INFINIBAND || hwaddr_len == INFINIBAND_ALEN); - nm_assert (hwaddr); -} - -static void -_hwaddr_get_relevant_part (guint16 arp_type, - const guint8 **hwaddr, - gsize *hwaddr_len) -{ - nm_assert (hwaddr); - nm_assert (hwaddr_len); - _ASSERT_arp_type (arp_type, *hwaddr, *hwaddr_len); - - /* for infiniband, we only consider the last 8 bytes. */ - if (arp_type == ARPHRD_INFINIBAND) { - *hwaddr += (INFINIBAND_ALEN - 8); - *hwaddr_len = 8; - } -} - -static GBytes * -dhcp4_get_client_id_mac (guint16 arp_type, - const guint8 *hwaddr, - gsize hwaddr_len) -{ - guint8 *client_id_buf; - const guint8 hwaddr_type = arp_type; - - _hwaddr_get_relevant_part (arp_type, &hwaddr, &hwaddr_len); - - client_id_buf = g_malloc (hwaddr_len + 1); - client_id_buf[0] = hwaddr_type; - memcpy (&client_id_buf[1], hwaddr, hwaddr_len); - return g_bytes_new_take (client_id_buf, hwaddr_len + 1); -} - static GBytes * dhcp4_get_client_id (NMDevice *self, NMConnection *connection, @@ -7553,7 +7506,7 @@ dhcp4_get_client_id (NMDevice *self, goto out_fail; } - result = dhcp4_get_client_id_mac ((guint16) arp_type, hwaddr_bin, hwaddr_len); + result = nm_utils_dhcp_client_id_mac (arp_type, hwaddr_bin, hwaddr_len); goto out_good; } @@ -7575,7 +7528,7 @@ dhcp4_get_client_id (NMDevice *self, goto out_fail; } - result = dhcp4_get_client_id_mac ((guint16) arp_type, hwaddr_bin_buf, hwaddr_len); + result = nm_utils_dhcp_client_id_mac (arp_type, hwaddr_bin_buf, hwaddr_len); goto out_good; } @@ -8230,7 +8183,7 @@ dhcp6_prefix_delegated (NMDhcpClient *client, #define EPOCH_DATETIME_200001010000 946684800 static GBytes * -generate_duid_llt (guint16 arp_type, +generate_duid_llt (int arp_type, const guint8 *hwaddr, gsize hwaddr_len, gint64 time) @@ -8240,7 +8193,8 @@ generate_duid_llt (guint16 arp_type, const guint16 hw_type = htons (arp_type); const guint32 duid_time = htonl (NM_MAX (0, time - EPOCH_DATETIME_200001010000)); - _hwaddr_get_relevant_part (arp_type, &hwaddr, &hwaddr_len); + if (!nm_utils_arp_type_get_hwaddr_relevant_part (arp_type, &hwaddr, &hwaddr_len)) + nm_assert_not_reached (); arr = g_new (guint8, 2 + 2 + 4 + hwaddr_len); @@ -8253,7 +8207,7 @@ generate_duid_llt (guint16 arp_type, } static GBytes * -generate_duid_ll (guint16 arp_type, +generate_duid_ll (int arp_type, const guint8 *hwaddr, gsize hwaddr_len) { @@ -8261,7 +8215,8 @@ generate_duid_ll (guint16 arp_type, const guint16 duid_type = htons (3); const guint16 hw_type = htons (arp_type); - _hwaddr_get_relevant_part (arp_type, &hwaddr, &hwaddr_len); + if (!nm_utils_arp_type_get_hwaddr_relevant_part (arp_type, &hwaddr, &hwaddr_len)) + nm_assert_not_reached (); arr = g_new (guint8, 2 + 2 + hwaddr_len); diff --git a/src/nm-core-utils.c b/src/nm-core-utils.c index d039a98351..89f8f329f8 100644 --- a/src/nm-core-utils.c +++ b/src/nm-core-utils.c @@ -2867,6 +2867,51 @@ nm_utils_arp_type_detect_from_hwaddrlen (gsize hwaddr_len) } } +gboolean +nm_utils_arp_type_validate_hwaddr (int arp_type, + const guint8 *hwaddr, + gsize hwaddr_len) +{ + + if (!hwaddr) + return FALSE; + + if (arp_type == ARPHRD_ETHER) { + G_STATIC_ASSERT (ARPHRD_ETHER >= 0 && ARPHRD_ETHER <= 0xFF); + if (hwaddr_len != ETH_ALEN) + return FALSE; + } else if (arp_type == ARPHRD_INFINIBAND) { + G_STATIC_ASSERT (ARPHRD_INFINIBAND >= 0 && ARPHRD_INFINIBAND <= 0xFF); + if (hwaddr_len != INFINIBAND_ALEN) + return FALSE; + } else + return FALSE; + + nm_assert (arp_type == nm_utils_arp_type_detect_from_hwaddrlen (hwaddr_len)); + return TRUE; +} + +gboolean +nm_utils_arp_type_get_hwaddr_relevant_part (int arp_type, + const guint8 **hwaddr, + gsize *hwaddr_len) +{ + g_return_val_if_fail ( hwaddr + && hwaddr_len + && nm_utils_arp_type_validate_hwaddr (arp_type, *hwaddr, *hwaddr_len), + FALSE); + + /* for infiniband, we only consider the last 8 bytes. */ + if (arp_type == ARPHRD_INFINIBAND) { + *hwaddr += (INFINIBAND_ALEN - 8); + *hwaddr_len = 8; + } + + return TRUE; +} + +/*****************************************************************************/ + /* Returns the "u" (universal/local) bit value for a Modified EUI-64 */ static gboolean get_gre_eui64_u_bit (guint32 addr) @@ -3514,6 +3559,23 @@ nm_utils_hw_addr_gen_stable_eth (NMUtilsStableType stable_type, /*****************************************************************************/ +GBytes * +nm_utils_dhcp_client_id_mac (int arp_type, + const guint8 *hwaddr, + gsize hwaddr_len) +{ + guint8 *client_id_buf; + const guint8 hwaddr_type = arp_type; + + if (!nm_utils_arp_type_get_hwaddr_relevant_part (arp_type, &hwaddr, &hwaddr_len)) + g_return_val_if_reached (NULL); + + client_id_buf = g_malloc (hwaddr_len + 1); + client_id_buf[0] = hwaddr_type; + memcpy (&client_id_buf[1], hwaddr, hwaddr_len); + return g_bytes_new_take (client_id_buf, hwaddr_len + 1); +} + #define HASH_KEY ((const guint8[16]) { 0x80, 0x11, 0x8c, 0xc2, 0xfe, 0x4a, 0x03, 0xee, 0x3e, 0xd6, 0x0c, 0x6f, 0x36, 0x39, 0x14, 0x09 }) /** diff --git a/src/nm-core-utils.h b/src/nm-core-utils.h index f0e0c4d2ec..a93854a465 100644 --- a/src/nm-core-utils.h +++ b/src/nm-core-utils.h @@ -279,8 +279,20 @@ gboolean nm_utils_host_id_get (const guint8 **out_host_id, gsize *out_host_id_len); gint64 nm_utils_host_id_get_timestamp_ns (void); +/*****************************************************************************/ + int nm_utils_arp_type_detect_from_hwaddrlen (gsize hwaddr_len); +gboolean nm_utils_arp_type_validate_hwaddr (int arp_type, + const guint8 *hwaddr, + gsize hwaddr_len); + +gboolean nm_utils_arp_type_get_hwaddr_relevant_part (int arp_type, + const guint8 **hwaddr, + gsize *hwaddr_len); + +/*****************************************************************************/ + /* IPv6 Interface Identifier helpers */ /** @@ -375,6 +387,10 @@ char *nm_utils_hw_addr_gen_stable_eth (NMUtilsStableType stable_type, /*****************************************************************************/ +GBytes *nm_utils_dhcp_client_id_mac (int arp_type, + const guint8 *hwaddr, + gsize hwaddr_len); + guint32 nm_utils_create_dhcp_iaid (gboolean legacy_unstable_byteorder, const guint8 *interface_id, gsize interface_id_len); -- cgit v1.2.1 From cfd696cc3cf43f5f510046b757949546bcee4cdc Mon Sep 17 00:00:00 2001 From: Thomas Haller Date: Thu, 20 Dec 2018 09:16:18 +0100 Subject: dhcp: default ipv4.dhcp-client-id of internal plugin to "mac" The "ipv4.dhcp-client-id" is configurable per-profile and the default value can be overwritten via connection defaults in NetworkManager.conf. For "dhclient" DHCP plugin, the ultimate default for "ipv4.dhcp-client-id" is determined by dhclient itself, or possibly by user configuration from "/etc/dhcp". For the "internal" DHCP plugin, the default must be decided by NetworkManager. Also, the default here is important, as we preferably won't change it anymore. That is because a changing the client-id will result in different IP addresses after upgrade of NetworkManager version. That should be avoided. Still, change it now. If a downstream does not want this, it either needs to patch the sources or add a configuration snippet like: [connection-internal-dhcp-client-id-duid] match-device=dhcp-plugin:internal ipv4.dhcp-client-id=duid The reason to change from the previous default "duid" to "mac" are the following: - "duid" is an RFC 4361 compatible client-id ([1]) and "mac" is defined in RFC 2132. - "duid" cannot (easily) be predicated a-priori as it is a hash of the interface-name and "/etc/machine-id". In particular in cloud and server environments, admins often prefer "mac" as they do know the MAC address and pre-configure the DHCP server accordingly. - with "dhclient" plugin, the default is decided by dhclient package or user configuration in "/etc/dhcp". However, in fact the default is often "client-identifier hardware" (for example on RHEL/CentOS). - for RHEL/CentOS we require a way to select "mac" as default. That was done by installing a configuration snippet via the NetworkManager-config-server package. It's confusing to have the default depend on a package. Avoid that. Also, users required "mac" in certain scenarios, but no users explicitly asked for "duid" as default. - our "duid" implementation generates a 32 bit IAID based on a hash of the interface-name, and only 8 bytes entropy that contains a hash of "/etc/machine-id". The point is, that is not a lot of entropy to avoid conflicting client-ids. Another point is, that the choosen algorithm for "duid" is suitable for RFC 4361, but it's only one of many possibly implementations. Granted, each possibility has up and downsides but selecting one of them as default seems wrong (given that it has obvious downsides already). For "mac" there is only one straight-forward way to implement it. - RFC 7844 (Anonymity Profiles for DHCP Clients) is not yet supported by NetworkManager. But we should not select a default client-id which counteracts anonymit. Choosing "mac" does not reveal information which is not already exposed. [1] https://tools.ietf.org/html/rfc4361#section-4 https://bugzilla.redhat.com/show_bug.cgi?id=1661165 --- src/dhcp/nm-dhcp-manager.c | 2 +- src/dhcp/nm-dhcp-systemd.c | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/src/dhcp/nm-dhcp-manager.c b/src/dhcp/nm-dhcp-manager.c index a51c6e3847..c13c3043a5 100644 --- a/src/dhcp/nm-dhcp-manager.c +++ b/src/dhcp/nm-dhcp-manager.c @@ -239,7 +239,7 @@ client_start (NMDhcpManager *self, * * - for IPv4, the calling code may determine a client-id (from NM's connection profile). * If present, it is taken. If not present, the DHCP plugin uses a plugin specific default. - * - for "internal" plugin, the default is just "duid". + * - for "internal" plugin, the default is just "mac". * - for "dhclient", we try to get the configuration from dhclient's /etc/dhcp or fallback * to whatever dhclient uses by default. * We do it this way, because for dhclient the user may configure a default diff --git a/src/dhcp/nm-dhcp-systemd.c b/src/dhcp/nm-dhcp-systemd.c index 632d49998c..bcbe916f60 100644 --- a/src/dhcp/nm-dhcp-systemd.c +++ b/src/dhcp/nm-dhcp-systemd.c @@ -725,8 +725,7 @@ ip4_start (NMDhcpClient *client, client_id = nm_dhcp_client_get_client_id (client); if (!client_id) { - client_id_new = nm_utils_dhcp_client_id_systemd_node_specific (TRUE, - nm_dhcp_client_get_iface (client)); + client_id_new = nm_utils_dhcp_client_id_mac (arp_type, hwaddr_arr, hwaddr_len); client_id = client_id_new; } -- cgit v1.2.1 From 1ffa40872f49c782ba5cada5bab7e8a48290ac46 Mon Sep 17 00:00:00 2001 From: Thomas Haller Date: Thu, 20 Dec 2018 11:14:35 +0100 Subject: contrib/rpm: remove unused 00-server-dhcp-client-id.conf configuration snippet Now that the default for the internal client is "mac", we don't need this snippet anymore. Drop it. Don't renumber the source files but leave the gap at Source3. Everytime we add config snippets the numbers need to be shuffled, so don't fill the gap and maybe use it in the future. https://bugzilla.redhat.com/show_bug.cgi?id=1661165 --- contrib/fedora/rpm/00-server-dhcp-client-id.conf | 6 ------ contrib/fedora/rpm/NetworkManager.spec | 3 --- contrib/fedora/rpm/build.sh | 4 ---- 3 files changed, 13 deletions(-) delete mode 100644 contrib/fedora/rpm/00-server-dhcp-client-id.conf diff --git a/contrib/fedora/rpm/00-server-dhcp-client-id.conf b/contrib/fedora/rpm/00-server-dhcp-client-id.conf deleted file mode 100644 index 0cd3cd7167..0000000000 --- a/contrib/fedora/rpm/00-server-dhcp-client-id.conf +++ /dev/null @@ -1,6 +0,0 @@ -# default the DHCP client-id to MAC (instead of type 255, node-specific RFC 4361). -# But don't do so for dhclient DHCP plugin, as the default of dhclient may -# be specified via /etc/dhcp (and anyway defaults to "hardware" already). -[connection-00-server-dhcp-client-id] -match-device=*,except:dhcp-plugin:dhclient -ipv4.dhcp-client-id=mac diff --git a/contrib/fedora/rpm/NetworkManager.spec b/contrib/fedora/rpm/NetworkManager.spec index b965ccc89c..c72dec1320 100644 --- a/contrib/fedora/rpm/NetworkManager.spec +++ b/contrib/fedora/rpm/NetworkManager.spec @@ -117,7 +117,6 @@ URL: http://www.gnome.org/projects/NetworkManager/ Source: __SOURCE1__ Source1: NetworkManager.conf Source2: 00-server.conf -Source3: 00-server-dhcp-client-id.conf Source4: 20-connectivity-fedora.conf Source5: 20-connectivity-redhat.conf @@ -694,7 +693,6 @@ make install DESTDIR=%{buildroot} cp %{SOURCE1} %{buildroot}%{_sysconfdir}/%{name}/ cp %{SOURCE2} %{buildroot}%{nmlibdir}/conf.d/ -cp %{SOURCE3} %{buildroot}%{nmlibdir}/conf.d/ %if %{with connectivity_fedora} cp %{SOURCE4} %{buildroot}%{nmlibdir}/conf.d/ @@ -979,7 +977,6 @@ fi %dir %{nmlibdir} %dir %{nmlibdir}/conf.d %{nmlibdir}/conf.d/00-server.conf -%{nmlibdir}/conf.d/00-server-dhcp-client-id.conf %files dispatcher-routing-rules diff --git a/contrib/fedora/rpm/build.sh b/contrib/fedora/rpm/build.sh index 375c97eeec..017aab9c30 100755 --- a/contrib/fedora/rpm/build.sh +++ b/contrib/fedora/rpm/build.sh @@ -18,7 +18,6 @@ # SOURCE_FROM_GIT=|1|0 # SOURCE_NETWORKMANAGER_CONF= # SOURCE_CONFIG_SERVER= -# SOURCE_CONFIG_SERVER_DHCP_CLIENT_ID= # SOURCE_CONFIG_CONNECTIVITY_FEDORA= # SOURCE_CONFIG_CONNECTIVITY_REDHAT= @@ -122,7 +121,6 @@ fi SOURCE_NETWORKMANAGER_CONF="$(abs_path "$SOURCE_NETWORKMANAGER_CONF" "$SCRIPTDIR/NetworkManager.conf")" || die "invalid \$SOURCE_NETWORKMANAGER_CONF argument" SOURCE_CONFIG_SERVER="$(abs_path "$SOURCE_CONFIG_SERVER" "$SCRIPTDIR/00-server.conf")" || die "invalid \$SOURCE_CONFIG_SERVER argument" -SOURCE_CONFIG_SERVER_DHCP_CLIENT_ID="$(abs_path "$SOURCE_CONFIG_SERVER_DHCP_CLIENT_ID" "$SCRIPTDIR/00-server-dhcp-client-id.conf")" || die "invalid \$SOURCE_CONFIG_SERVER_DHCP_CLIENT_ID argument" SOURCE_CONFIG_CONNECTIVITY_FEDORA="$(abs_path "$SOURCE_CONFIG_CONNECTIVITY_FEDORA" "$SCRIPTDIR/20-connectivity-fedora.conf")" || die "invalid \$SOURCE_CONFIG_CONNECTIVITY_FEDORA argument" SOURCE_CONFIG_CONNECTIVITY_REDHAT="$(abs_path "$SOURCE_CONFIG_CONNECTIVITY_REDHAT" "$SCRIPTDIR/20-connectivity-redhat.conf")" || die "invalid \$SOURCE_CONFIG_CONNECTIVITY_REDHAT argument" @@ -146,7 +144,6 @@ LOG "SOURCE=$SOURCE" LOG "SOURCE_FROM_GIT=$SOURCE_FROM_GIT" LOG "SOURCE_NETWORKMANAGER_CONF=$SOURCE_NETWORKMANAGER_CONF" LOG "SOURCE_CONFIG_SERVER=$SOURCE_CONFIG_SERVER" -LOG "SOURCE_CONFIG_SERVER_DHCP_CLIENT_ID=$SOURCE_CONFIG_SERVER_DHCP_CLIENT_ID" LOG "SOURCE_CONFIG_CONNECTIVITY_FEDORA=$SOURCE_CONFIG_CONNECTIVITY_FEDORA" LOG "SOURCE_CONFIG_CONNECTIVITY_REDHAT=$SOURCE_CONFIG_CONNECTIVITY_REDHAT" LOG "BUILDTYPE=$BUILDTYPE" @@ -167,7 +164,6 @@ if [[ "$(dirname "$SOURCE")" != "$TEMP/SOURCES" ]]; then fi cp "$SOURCE_NETWORKMANAGER_CONF" "$TEMP/SOURCES/NetworkManager.conf" || die "Could not copy source $SOURCE_NETWORKMANAGER_CONF to $TEMP/SOURCES" cp "$SOURCE_CONFIG_SERVER" "$TEMP/SOURCES/00-server.conf" || die "Could not copy source $SOURCE_CONFIG_SERVER to $TEMP/SOURCES" -cp "$SOURCE_CONFIG_SERVER_DHCP_CLIENT_ID" "$TEMP/SOURCES/00-server-dhcp-client-id.conf" || die "Could not copy source $SOURCE_CONFIG_SERVER_DHCP_CLIENT_ID to $TEMP/SOURCES" cp "$SOURCE_CONFIG_CONNECTIVITY_FEDORA" "$TEMP/SOURCES/20-connectivity-fedora.conf" || die "Could not copy source $SOURCE_CONFIG_CONNECTIVITY_FEDORA to $TEMP/SOURCES" cp "$SOURCE_CONFIG_CONNECTIVITY_REDHAT" "$TEMP/SOURCES/20-connectivity-redhat.conf" || die "Could not copy source $SOURCE_CONFIG_CONNECTIVITY_REDHAT to $TEMP/SOURCES" -- cgit v1.2.1