mirror of
https://github.com/systemd/systemd.git
synced 2024-11-02 19:21:53 +03:00
networkd: replace geneve/vxlan port parsing with generic config_parse_ip_port
This commit is contained in:
parent
177d0b2032
commit
9cdf4e3d7d
@ -238,36 +238,6 @@ int config_parse_geneve_address(const char *unit,
|
||||
return 0;
|
||||
}
|
||||
|
||||
int config_parse_geneve_destination_port(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) {
|
||||
Geneve *v = userdata;
|
||||
uint16_t port;
|
||||
int r;
|
||||
|
||||
assert(filename);
|
||||
assert(lvalue);
|
||||
assert(rvalue);
|
||||
assert(data);
|
||||
|
||||
r = parse_ip_port(rvalue, &port);
|
||||
if (r < 0) {
|
||||
log_syntax(unit, LOG_ERR, filename, line, r, "Failed to parse Geneve destination port '%s'.", rvalue);
|
||||
return 0;
|
||||
}
|
||||
|
||||
v->dest_port = port;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
int config_parse_geneve_flow_label(const char *unit,
|
||||
const char *filename,
|
||||
unsigned line,
|
||||
|
@ -73,17 +73,6 @@ int config_parse_geneve_address(const char *unit,
|
||||
void *data,
|
||||
void *userdata);
|
||||
|
||||
int config_parse_geneve_destination_port(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_geneve_flow_label(const char *unit,
|
||||
const char *filename,
|
||||
unsigned line,
|
||||
|
@ -79,7 +79,7 @@ VXLAN.FDBAgeingSec, config_parse_sec, 0,
|
||||
VXLAN.GroupPolicyExtension, config_parse_bool, 0, offsetof(VxLan, group_policy)
|
||||
VXLAN.MaximumFDBEntries, config_parse_unsigned, 0, offsetof(VxLan, max_fdb)
|
||||
VXLAN.PortRange, config_parse_port_range, 0, 0
|
||||
VXLAN.DestinationPort, config_parse_destination_port, 0, offsetof(VxLan, dest_port)
|
||||
VXLAN.DestinationPort, config_parse_ip_port, 0, offsetof(VxLan, dest_port)
|
||||
VXLAN.FlowLabel, config_parse_flow_label, 0, 0
|
||||
GENEVE.Id, config_parse_geneve_vni, 0, offsetof(Geneve, id)
|
||||
GENEVE.Remote, config_parse_geneve_address, 0, offsetof(Geneve, remote)
|
||||
@ -88,7 +88,7 @@ GENEVE.TTL, config_parse_uint8, 0,
|
||||
GENEVE.UDPChecksum, config_parse_bool, 0, offsetof(Geneve, udpcsum)
|
||||
GENEVE.UDP6ZeroCheckSumRx, config_parse_bool, 0, offsetof(Geneve, udp6zerocsumrx)
|
||||
GENEVE.UDP6ZeroCheckSumTx, config_parse_bool, 0, offsetof(Geneve, udp6zerocsumtx)
|
||||
GENEVE.DestinationPort, config_parse_geneve_destination_port, 0, offsetof(Geneve, dest_port)
|
||||
GENEVE.DestinationPort, config_parse_ip_port, 0, offsetof(Geneve, dest_port)
|
||||
GENEVE.FlowLabel, config_parse_geneve_flow_label, 0, 0
|
||||
Tun.OneQueue, config_parse_bool, 0, offsetof(TunTap, one_queue)
|
||||
Tun.MultiQueue, config_parse_bool, 0, offsetof(TunTap, multi_queue)
|
||||
|
@ -271,36 +271,6 @@ int config_parse_port_range(const char *unit,
|
||||
return 0;
|
||||
}
|
||||
|
||||
int config_parse_destination_port(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) {
|
||||
VxLan *v = userdata;
|
||||
uint16_t port;
|
||||
int r;
|
||||
|
||||
assert(filename);
|
||||
assert(lvalue);
|
||||
assert(rvalue);
|
||||
assert(data);
|
||||
|
||||
r = parse_ip_port(rvalue, &port);
|
||||
if (r < 0) {
|
||||
log_syntax(unit, LOG_ERR, filename, line, r, "Failed to parse VXLAN destination port '%s'.", rvalue);
|
||||
return 0;
|
||||
}
|
||||
|
||||
v->dest_port = port;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
int config_parse_flow_label(const char *unit,
|
||||
const char *filename,
|
||||
unsigned line,
|
||||
|
@ -86,17 +86,6 @@ int config_parse_port_range(const char *unit,
|
||||
void *data,
|
||||
void *userdata);
|
||||
|
||||
int config_parse_destination_port(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_flow_label(const char *unit,
|
||||
const char *filename,
|
||||
unsigned line,
|
||||
|
Loading…
Reference in New Issue
Block a user