X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Fnetwork%2Fnetworkd.h;h=0ba9ee58809f5a65c3ae2be35a14fb0e9dc00abc;hp=67f70d9e60f8278c53f51054751c9f8f299d884e;hb=0372cb2bd2342fa5c5585c666f79159a8341f4a6;hpb=ed942a9eb22d50f667909ad6184b45015d28d054 diff --git a/src/network/networkd.h b/src/network/networkd.h index 67f70d9e6..0ba9ee588 100644 --- a/src/network/networkd.h +++ b/src/network/networkd.h @@ -42,6 +42,7 @@ #define CACHE_INFO_INFINITY_LIFE_TIME 0xFFFFFFFFU #define VXLAN_VID_MAX (1u << 24) - 1 +#define DHCP_STATIC_ROUTE_METRIC 1024 typedef struct NetDev NetDev; typedef struct Network Network; @@ -80,6 +81,7 @@ typedef enum NetDevKind { NETDEV_KIND_SIT, NETDEV_KIND_VETH, NETDEV_KIND_VTI, + NETDEV_KIND_DUMMY, _NETDEV_KIND_MAX, _NETDEV_KIND_INVALID = -1 } NetDevKind; @@ -168,7 +170,9 @@ struct Network { bool dhcp_mtu; bool dhcp_hostname; bool dhcp_domainname; + bool dhcp_sendhost; bool dhcp_critical; + bool dhcp_routes; bool ipv4ll; bool dhcp_server; @@ -335,6 +339,8 @@ DEFINE_TRIVIAL_CLEANUP_FUNC(Manager*, manager_free); /* NetDev */ +#define VLANID_MAX 4094 + int netdev_load(Manager *manager); void netdev_drop(NetDev *netdev); @@ -347,9 +353,12 @@ DEFINE_TRIVIAL_CLEANUP_FUNC(NetDev*, netdev_unref); int netdev_get(Manager *manager, const char *name, NetDev **ret); int netdev_set_ifindex(NetDev *netdev, sd_rtnl_message *newlink); int netdev_enslave(NetDev *netdev, Link *link, sd_rtnl_message_handler_t cb); -int netdev_create_tunnel(Link *link, sd_rtnl_message_handler_t callback); +int netdev_create_tunnel(NetDev *netdev, Link *link, sd_rtnl_message_handler_t callback); int netdev_create_veth(NetDev *netdev, sd_rtnl_message_handler_t callback); int netdev_create_vxlan(NetDev *netdev, Link *link, sd_rtnl_message_handler_t callback); +int netdev_create_vlan(NetDev *netdev, Link *link, sd_rtnl_message_handler_t callback); +int netdev_create_macvlan(NetDev *netdev, Link *link, sd_rtnl_message_handler_t callback); +int netdev_create_dummy(NetDev *netdev, sd_rtnl_message_handler_t callback); const char *netdev_kind_to_string(NetDevKind d) _const_; NetDevKind netdev_kind_from_string(const char *d) _pure_;