network: move and rename link_duid()

This commit is contained in:
Yu Watanabe 2018-08-06 17:28:27 +09:00
parent 27eba50e76
commit f24648a66c
5 changed files with 16 additions and 13 deletions

View File

@ -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,

View File

@ -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,

View File

@ -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,

View File

@ -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);

View File

@ -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);