typedef enum NetdevKind {
NETDEV_KIND_BRIDGE,
NETDEV_KIND_BOND,
+ NETDEV_KIND_VLAN,
_NETDEV_KIND_MAX,
_NETDEV_KIND_INVALID = -1
} NetdevKind;
char *name;
NetdevKind kind;
+ int vlanid;
+
Link *link;
NetdevState state;
char *description;
Netdev *bridge;
Netdev *bond;
+ Netdev *vlan;
bool dhcp;
bool dhcp_dns;
bool dhcp_mtu;
bool dhcp_hostname;
bool dhcp_domainname;
+ bool dhcp_critical;
LIST_HEAD(Address, static_addresses);
LIST_HEAD(Route, static_routes);
unsigned char prefixlen;
char *label;
- struct in_addr netmask;
+ struct in_addr broadcast;
union {
struct in_addr in;
uint64_t section;
unsigned char family;
- unsigned char dst_family;
unsigned char dst_prefixlen;
union {
const char *section, unsigned section_line, const char *lvalue,
int ltype, const char *rvalue, void *data, void *userdata);
+int config_parse_vlan(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);
+
/* gperf */
const struct ConfigPerfItem* network_gperf_lookup(const char *key, unsigned length);
const char *section, unsigned section_line, const char *lvalue,
int ltype, const char *rvalue, void *data, void *userdata);
+int config_parse_broadcast(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_label(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);