From: Yu Watanabe Date: Fri, 29 Mar 2019 18:34:03 +0000 (+0900) Subject: network: make erspan netdev can be specified in Network.Tunnel= X-Git-Tag: v242-rc1~37^2~3 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=9282f75bf4c1e7ca4b4e3fd8386e21f4632bc385;p=thirdparty%2Fsystemd.git network: make erspan netdev can be specified in Network.Tunnel= --- diff --git a/src/network/netdev/netdev.c b/src/network/netdev/netdev.c index 5cdd09d775d..f6d3ef81537 100644 --- a/src/network/netdev/netdev.c +++ b/src/network/netdev/netdev.c @@ -779,6 +779,9 @@ int netdev_load_one(Manager *manager, const char *filename) { case NETDEV_KIND_IP6TNL: independent = IP6TNL(netdev)->independent; break; + case NETDEV_KIND_ERSPAN: + independent = ERSPAN(netdev)->independent; + break; default: break; } diff --git a/src/network/netdev/tunnel.c b/src/network/netdev/tunnel.c index 244954ef69d..ad7c83e8556 100644 --- a/src/network/netdev/tunnel.c +++ b/src/network/netdev/tunnel.c @@ -857,6 +857,6 @@ const NetDevVTable erspan_vtable = { .init = erspan_init, .sections = "Match\0NetDev\0Tunnel\0", .fill_message_create = netdev_erspan_fill_message_create, - .create_type = NETDEV_CREATE_INDEPENDENT, + .create_type = NETDEV_CREATE_STACKED, .config_verify = netdev_tunnel_verify, }; diff --git a/src/network/networkd-network.c b/src/network/networkd-network.c index c6c3480cd10..836776ae849 100644 --- a/src/network/networkd-network.c +++ b/src/network/networkd-network.c @@ -104,7 +104,8 @@ static int network_resolve_netdev_one(Network *network, const char *name, NetDev NETDEV_KIND_IP6GRETAP, NETDEV_KIND_VTI, NETDEV_KIND_VTI6, - NETDEV_KIND_IP6TNL))) + NETDEV_KIND_IP6TNL, + NETDEV_KIND_ERSPAN))) return log_error_errno(SYNTHETIC_ERRNO(EINVAL), "%s: NetDev %s is not a %s, ignoring assignment", network->filename, name, kind_string);