chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
networkd: Make DHCP client ID creation configurable
[elogind.git]
/
src
/
network
/
networkd.h
diff --git
a/src/network/networkd.h
b/src/network/networkd.h
index 4f3bcf36f9d2c6cd3c165b6d37dd2f9b77c2638b..8bdc2bed82b24191a1581790b687efa3cd632143 100644
(file)
--- a/
src/network/networkd.h
+++ b/
src/network/networkd.h
@@
-83,6
+83,13
@@
typedef enum LinkOperationalState {
_LINK_OPERSTATE_INVALID = -1
} LinkOperationalState;
_LINK_OPERSTATE_INVALID = -1
} LinkOperationalState;
+typedef enum DCHPClientIdentifier {
+ DHCP_CLIENT_ID_MAC,
+ DHCP_CLIENT_ID_DUID,
+ _DHCP_CLIENT_ID_MAX,
+ _DHCP_CLIENT_ID_INVALID = -1,
+} DCHPClientIdentifier;
+
struct FdbEntry {
Network *network;
unsigned section;
struct FdbEntry {
Network *network;
unsigned section;
@@
-100,10
+107,10
@@
struct Network {
char *name;
struct ether_addr *match_mac;
char *name;
struct ether_addr *match_mac;
- char *match_path;
- char *match_driver;
- char *match_type;
- char *match_name;
+ char *
*
match_path;
+ char *
*
match_driver;
+ char *
*
match_type;
+ char *
*
match_name;
Condition *match_host;
Condition *match_virt;
Condition *match_host;
Condition *match_virt;
@@
-115,6
+122,7
@@
struct Network {
NetDev *bond;
Hashmap *stacked_netdevs;
AddressFamilyBoolean dhcp;
NetDev *bond;
Hashmap *stacked_netdevs;
AddressFamilyBoolean dhcp;
+ DCHPClientIdentifier dhcp_client_identifier;
char *dhcp_vendor_class_identifier;
bool dhcp_dns;
bool dhcp_ntp;
char *dhcp_vendor_class_identifier;
bool dhcp_dns;
bool dhcp_ntp;
@@
-128,6
+136,7
@@
struct Network {
unsigned dhcp_route_metric;
AddressFamilyBoolean link_local;
bool ipv4ll_route;
unsigned dhcp_route_metric;
AddressFamilyBoolean link_local;
bool ipv4ll_route;
+ union in_addr_union ipv6_token;
bool dhcp_server;
bool dhcp_server;
@@
-150,7
+159,7
@@
struct Network {
Hashmap *fdb_entries_by_section;
bool wildcard_domain;
Hashmap *fdb_entries_by_section;
bool wildcard_domain;
- char **domains, **dns, **ntp;
+ char **domains, **dns, **ntp
, **bind_carrier
;
LLMNRSupport llmnr;
LLMNRSupport llmnr;
@@
-351,6
+360,10
@@
int config_parse_destination(const char *unit, const char *filename, unsigned li
int config_parse_route_priority(const char *unit, const char *filename, unsigned line,
const char *section, unsigned section_line, const char *lvalue,
int ltype, const char *rvalue, void *data, void *userdata);
int config_parse_route_priority(const char *unit, const char *filename, unsigned line,
const char *section, unsigned section_line, const char *lvalue,
int ltype, const char *rvalue, void *data, void *userdata);
+
+int config_parse_route_scope(const char *unit, const char *filename, unsigned line,
+ const char *section, unsigned section_line, const char *lvalue,
+ int ltype, const char *rvalue, void *data, void *userdata);
/* Address */
int address_new_static(Network *network, unsigned section, Address **ret);
int address_new_dynamic(Address **ret);
/* Address */
int address_new_static(Network *network, unsigned section, Address **ret);
int address_new_dynamic(Address **ret);
@@
-378,7
+391,7
@@
int config_parse_label(const char *unit, const char *filename, unsigned line,
int ltype, const char *rvalue, void *data, void *userdata);
/* Forwarding database table. */
int ltype, const char *rvalue, void *data, void *userdata);
/* Forwarding database table. */
-int fdb_entry_configure(
sd_rtnl *const rtnl, FdbEntry *const fdb_entry, const int ifindex
);
+int fdb_entry_configure(
Link *const link, FdbEntry *const fdb_entry
);
void fdb_entry_free(FdbEntry *fdb_entry);
int fdb_entry_new_static(Network *const network, const unsigned section, FdbEntry **ret);
void fdb_entry_free(FdbEntry *fdb_entry);
int fdb_entry_new_static(Network *const network, const unsigned section, FdbEntry **ret);
@@
-398,6
+411,9
@@
int config_parse_fdb_vlan_id(const char *unit, const char *filename, unsigned li
int config_parse_dhcp(const char *unit, const char *filename, unsigned line,
const char *section, unsigned section_line, const char *lvalue,
int ltype, const char *rvalue, void *data, void *userdata);
int config_parse_dhcp(const char *unit, const char *filename, unsigned line,
const char *section, unsigned section_line, const char *lvalue,
int ltype, const char *rvalue, void *data, void *userdata);
+int config_parse_dhcp_client_identifier(const char *unit, const char *filename, unsigned line,
+ const char *section, unsigned section_line, const char *lvalue,
+ int ltype, const char *rvalue, void *data, void *userdata);
/* IPv4LL support (legacy) */
/* IPv4LL support (legacy) */
@@
-405,6
+421,11
@@
int config_parse_ipv4ll(const char *unit, const char *filename, unsigned line,
const char *section, unsigned section_line, const char *lvalue,
int ltype, const char *rvalue, void *data, void *userdata);
const char *section, unsigned section_line, const char *lvalue,
int ltype, const char *rvalue, void *data, void *userdata);
+/* IPv6 support */
+int config_parse_ipv6token(const char *unit, const char *filename, unsigned line,
+ const char *section, unsigned section_line, const char *lvalue,
+ int ltype, const char *rvalue, void *data, void *userdata);
+
/* LLMNR support */
const char* llmnr_support_to_string(LLMNRSupport i) _const_;
/* LLMNR support */
const char* llmnr_support_to_string(LLMNRSupport i) _const_;