diff options
author | Susant Sahani <145210+ssahani@users.noreply.github.com> | 2018-02-08 10:22:46 +0100 |
---|---|---|
committer | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2018-02-08 10:22:46 +0100 |
commit | bf443be99565e4327f1c8c12b79d98b4c1529cf1 (patch) | |
tree | b39a0770f4c1d457dd628d81897720e658989fee /src/network/netdev/vxlan.c | |
parent | man: .service <filename> to <literal> (#8126) (diff) | |
download | systemd-bf443be99565e4327f1c8c12b79d98b4c1529cf1.tar.xz systemd-bf443be99565e4327f1c8c12b79d98b4c1529cf1.zip |
networkd: vxlan require Remote= to be a non multicast address (#8117)
Remote= must be a non multicast address. ip-link(8) says:
> remote IPADDR - specifies the unicast destination IP address to
> use in outgoing packets when the destination link layer address
> is not known in the VXLAN device forwarding database.
Closes #8088.
Diffstat (limited to 'src/network/netdev/vxlan.c')
-rw-r--r-- | src/network/netdev/vxlan.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/network/netdev/vxlan.c b/src/network/netdev/vxlan.c index 580e5e6505..ad050efeca 100644 --- a/src/network/netdev/vxlan.c +++ b/src/network/netdev/vxlan.c @@ -198,7 +198,7 @@ int config_parse_vxlan_address(const char *unit, r = in_addr_is_multicast(f, &buffer); - if (STR_IN_SET(lvalue, "Group", "Remote")) { + if (streq(lvalue, "Group")) { if (r <= 0) { log_syntax(unit, LOG_ERR, filename, line, 0, "vxlan invalid multicast '%s' address, ignoring assignment: %s", lvalue, rvalue); return 0; @@ -211,7 +211,10 @@ int config_parse_vxlan_address(const char *unit, return 0; } - v->local_family = f; + if (streq(lvalue, "Remote")) + v->remote_family = f; + else + v->local_family = f; } *addr = buffer; |