mirror of
https://github.com/morgan9e/systemd
synced 2026-04-14 08:25:20 +09:00
network/radv: add [IPv6RoutePrefix] Preference= setting
This commit is contained in:
committed by
Luca Boccassi
parent
a10d6e0124
commit
fe9753841f
@@ -4420,6 +4420,15 @@ ServerAddress=192.168.0.1/24</programlisting>
|
||||
<xi:include href="version-info.xml" xpointer="v244"/></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>Preference=</varname></term>
|
||||
|
||||
<listitem><para>Specifies the preference of the route option. Takes one of <literal>high</literal>,
|
||||
<literal>medium</literal>, or <literal>low</literal>. Defaults to <literal>medium</literal>.</para>
|
||||
|
||||
<xi:include href="version-info.xml" xpointer="v258"/></listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
|
||||
@@ -429,6 +429,7 @@ IPv6Prefix.RouteMetric, config_parse_prefix_metric,
|
||||
IPv6Prefix.Token, config_parse_prefix_token, 0, 0
|
||||
IPv6RoutePrefix.Route, config_parse_route_prefix, 0, 0
|
||||
IPv6RoutePrefix.LifetimeSec, config_parse_route_prefix_lifetime, 0, 0
|
||||
IPv6RoutePrefix.Preference, config_parse_route_prefix_preference, 0, 0
|
||||
IPv6PREF64Prefix.Prefix, config_parse_pref64_prefix, 0, 0
|
||||
IPv6PREF64Prefix.LifetimeSec, config_parse_pref64_prefix_lifetime, 0, 0
|
||||
LLDP.MUDURL, config_parse_mud_url, 0, offsetof(Network, lldp_mudurl)
|
||||
|
||||
@@ -1134,6 +1134,37 @@ int config_parse_route_prefix_lifetime(
|
||||
return 0;
|
||||
}
|
||||
|
||||
int config_parse_route_prefix_preference(
|
||||
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) {
|
||||
|
||||
_cleanup_(route_prefix_free_or_set_invalidp) RoutePrefix *p = NULL;
|
||||
Network *network = ASSERT_PTR(userdata);
|
||||
int r;
|
||||
|
||||
assert(filename);
|
||||
|
||||
r = route_prefix_new_static(network, filename, section_line, &p);
|
||||
if (r < 0)
|
||||
return log_oom();
|
||||
|
||||
r = config_parse_router_preference(unit, filename, line, section, section_line,
|
||||
lvalue, ltype, rvalue, &p->route.preference, NULL);
|
||||
if (r <= 0)
|
||||
return r;
|
||||
|
||||
TAKE_PTR(p);
|
||||
return 0;
|
||||
}
|
||||
|
||||
int config_parse_pref64_prefix(
|
||||
const char *unit,
|
||||
const char *filename,
|
||||
|
||||
@@ -86,6 +86,7 @@ CONFIG_PARSER_PROTOTYPE(config_parse_radv_dns);
|
||||
CONFIG_PARSER_PROTOTYPE(config_parse_radv_search_domains);
|
||||
CONFIG_PARSER_PROTOTYPE(config_parse_route_prefix);
|
||||
CONFIG_PARSER_PROTOTYPE(config_parse_route_prefix_lifetime);
|
||||
CONFIG_PARSER_PROTOTYPE(config_parse_route_prefix_preference);
|
||||
CONFIG_PARSER_PROTOTYPE(config_parse_pref64_prefix);
|
||||
CONFIG_PARSER_PROTOTYPE(config_parse_pref64_prefix_lifetime);
|
||||
CONFIG_PARSER_PROTOTYPE(config_parse_router_home_agent_lifetime);
|
||||
|
||||
Reference in New Issue
Block a user