From: Yu Watanabe Date: Mon, 6 Aug 2018 08:28:27 +0000 (+0900) Subject: network: move and rename link_duid() X-Git-Tag: v240~807^2~9 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f24648a66c54a78a6e6b6490d3e7390ccbc85b92;p=thirdparty%2Fsystemd.git network: move and rename link_duid() --- diff --git a/src/network/networkd-dhcp4.c b/src/network/networkd-dhcp4.c index 7798844e031..c49d8a09394 100644 --- a/src/network/networkd-dhcp4.c +++ b/src/network/networkd-dhcp4.c @@ -766,7 +766,7 @@ int dhcp4_configure(Link *link) { switch (link->network->dhcp_client_identifier) { case DHCP_CLIENT_ID_DUID: { /* If configured, apply user specified DUID and/or IAID */ - const DUID *duid = link_duid(link); + const DUID *duid = link_get_duid(link); r = sd_dhcp_client_set_iaid_duid(link->dhcp_client, link->network->iaid, @@ -779,7 +779,7 @@ int dhcp4_configure(Link *link) { } case DHCP_CLIENT_ID_DUID_ONLY: { /* If configured, apply user specified DUID */ - const DUID *duid = link_duid(link); + const DUID *duid = link_get_duid(link); r = sd_dhcp_client_set_duid(link->dhcp_client, duid->type, diff --git a/src/network/networkd-dhcp6.c b/src/network/networkd-dhcp6.c index 0ec4deb7164..aa400bc35bf 100644 --- a/src/network/networkd-dhcp6.c +++ b/src/network/networkd-dhcp6.c @@ -494,7 +494,7 @@ int dhcp6_configure(Link *link) { if (r < 0) return log_link_error_errno(link, r, "DHCP6 CLIENT: Failed to set IAID: %m"); - duid = link_duid(link); + duid = link_get_duid(link); r = sd_dhcp6_client_set_duid(client, duid->type, duid->raw_data_len > 0 ? duid->raw_data : NULL, diff --git a/src/network/networkd-link.c b/src/network/networkd-link.c index 4c534e685d9..6b870c5bd54 100644 --- a/src/network/networkd-link.c +++ b/src/network/networkd-link.c @@ -27,6 +27,13 @@ #include "util.h" #include "virt.h" +DUID* link_get_duid(Link *link) { + if (link->network->duid.type != _DUID_TYPE_INVALID) + return &link->network->duid; + else + return &link->manager->duid; +} + static bool link_dhcp6_enabled(Link *link) { assert(link); @@ -3430,7 +3437,7 @@ int link_update(Link *link, sd_netlink_message *m) { switch (link->network->dhcp_client_identifier) { case DHCP_CLIENT_ID_DUID: { - const DUID *duid = link_duid(link); + const DUID *duid = link_get_duid(link); r = sd_dhcp_client_set_iaid_duid(link->dhcp_client, link->network->iaid, @@ -3442,7 +3449,7 @@ int link_update(Link *link, sd_netlink_message *m) { break; } case DHCP_CLIENT_ID_DUID_ONLY: { - const DUID *duid = link_duid(link); + const DUID *duid = link_get_duid(link); r = sd_dhcp_client_set_duid(link->dhcp_client, duid->type, @@ -3466,7 +3473,7 @@ int link_update(Link *link, sd_netlink_message *m) { } if (link->dhcp6_client) { - const DUID* duid = link_duid(link); + const DUID* duid = link_get_duid(link); r = sd_dhcp6_client_set_mac(link->dhcp6_client, (const uint8_t *) &link->mac, diff --git a/src/network/networkd-link.h b/src/network/networkd-link.h index d3028bae50a..35e44cd09fb 100644 --- a/src/network/networkd-link.h +++ b/src/network/networkd-link.h @@ -43,6 +43,7 @@ typedef enum LinkOperationalState { typedef struct Manager Manager; typedef struct Network Network; typedef struct Address Address; +typedef struct DUID DUID; typedef struct Link { Manager *manager; @@ -123,6 +124,8 @@ typedef struct Link { Hashmap *bound_to_links; } Link; +DUID *link_get_duid(Link *link); + Link *link_unref(Link *link); Link *link_ref(Link *link); int link_get(Manager *m, int ifindex, Link **ret); diff --git a/src/network/networkd-manager.h b/src/network/networkd-manager.h index a6cb1e2d44a..d6e3fe54781 100644 --- a/src/network/networkd-manager.h +++ b/src/network/networkd-manager.h @@ -56,13 +56,6 @@ struct Manager { Set *rules_saved; }; -static inline const DUID* link_duid(const Link *link) { - if (link->network->duid.type != _DUID_TYPE_INVALID) - return &link->network->duid; - else - return &link->manager->duid; -} - extern const sd_bus_vtable manager_vtable[]; int manager_new(Manager **ret);