network: move and rename link_duid()
This commit is contained in:
parent
27eba50e76
commit
f24648a66c
|
@ -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,
|
||||
|
|
|
@ -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,
|
||||
|
|
|
@ -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,
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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);
|
||||
|
|
Loading…
Reference in New Issue