diff options
author | Susant Sahani <susant@redhat.com> | 2014-05-23 12:07:46 +0530 |
---|---|---|
committer | Tom Gundersen <teg@jklm.no> | 2014-06-02 16:20:44 +0200 |
commit | a613382bbf4357ce13f17c988713b80172e091fb (patch) | |
tree | 52bf7572ed5fca075f856e1b32c17e2661808c4d /src/network/networkd-netdev.c | |
parent | a9f434cf00d1d36d9a013b9739efe69653dd7279 (diff) |
networkd: introduce vti tunnel
This patch enables vti tunnel support.
example conf:
file : vti.netdev
[NetDev]
Name=vti-tun
Kind=vti
MTUBytes=1480
[Tunnel]
Local=X.X.X.X
Remote=X.X.X.X
file: vti.network
[Match]
Name=em1
[Network]
Tunnel=vti-tun
TODO:
Add more attributes for vti tunnel
IFLA_VTI_IKEY
IFLA_VTI_OKEY
Diffstat (limited to 'src/network/networkd-netdev.c')
-rw-r--r-- | src/network/networkd-netdev.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/network/networkd-netdev.c b/src/network/networkd-netdev.c index 4439374a67..1519419c1f 100644 --- a/src/network/networkd-netdev.c +++ b/src/network/networkd-netdev.c @@ -39,6 +39,7 @@ static const char* const netdev_kind_table[_NETDEV_KIND_MAX] = { [NETDEV_KIND_GRE] = "gre", [NETDEV_KIND_SIT] = "sit", [NETDEV_KIND_VETH] = "veth", + [NETDEV_KIND_VTI] = "vti" }; DEFINE_STRING_TABLE_LOOKUP(netdev_kind, NetDevKind); @@ -393,7 +394,8 @@ int netdev_enslave(NetDev *netdev, Link *link, sd_rtnl_message_handler_t callbac if(netdev->kind == NETDEV_KIND_IPIP || netdev->kind == NETDEV_KIND_GRE || - netdev->kind == NETDEV_KIND_SIT) + netdev->kind == NETDEV_KIND_SIT || + netdev->kind == NETDEV_KIND_VTI) return netdev_create_tunnel(link, netdev_create_handler); if (netdev->state == NETDEV_STATE_READY) { @@ -606,7 +608,8 @@ static int netdev_load_one(Manager *manager, const char *filename) { netdev->kind != NETDEV_KIND_MACVLAN && netdev->kind != NETDEV_KIND_IPIP && netdev->kind != NETDEV_KIND_GRE && - netdev->kind != NETDEV_KIND_SIT) { + netdev->kind != NETDEV_KIND_SIT && + netdev->kind != NETDEV_KIND_VTI) { r = netdev_create(netdev, NULL, NULL); if (r < 0) return r; |