mirror of
https://github.com/systemd/systemd-stable.git
synced 2024-12-23 17:34:00 +03:00
network: dhcp: make IPServiceType= accept "none" to disable tos in the outgoing packet
Fixes #9874.
This commit is contained in:
parent
93485626a1
commit
b55093ce88
@ -1550,8 +1550,11 @@ Table=1234</programlisting></para>
|
|||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term><varname>IPServiceType=</varname></term>
|
<term><varname>IPServiceType=</varname></term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Takes string; <literal>CS6</literal> or <literal>CS4</literal>. Used to set IP
|
<para>Takes one of the special values <literal>none</literal>, <literal>CS6</literal>, or
|
||||||
service type to CS6 (network control) or CS4 (Realtime). Defaults to CS6.</para>
|
<literal>CS4</literal>. When <literal>none</literal> no IP sevice type is set to the packet
|
||||||
|
sent from the DHCPv4 client. When <literal>CS6</literal> (network control) or
|
||||||
|
<literal>CS4</literal> (realtime), the corresponding service type will be set. Defaults to
|
||||||
|
<literal>CS6</literal>.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
|
@ -1704,17 +1704,24 @@ int config_parse_dhcp_ip_service_type(
|
|||||||
void *data,
|
void *data,
|
||||||
void *userdata) {
|
void *userdata) {
|
||||||
|
|
||||||
|
int *tos = data;
|
||||||
|
|
||||||
assert(filename);
|
assert(filename);
|
||||||
assert(lvalue);
|
assert(lvalue);
|
||||||
assert(rvalue);
|
assert(rvalue);
|
||||||
|
assert(data);
|
||||||
|
|
||||||
if (streq(rvalue, "CS4"))
|
if (isempty(rvalue))
|
||||||
*((int *)data) = IPTOS_CLASS_CS4;
|
*tos = -1; /* use sd_dhcp_client's default (currently, CS6). */
|
||||||
|
else if (streq(rvalue, "none"))
|
||||||
|
*tos = 0;
|
||||||
|
else if (streq(rvalue, "CS4"))
|
||||||
|
*tos = IPTOS_CLASS_CS4;
|
||||||
else if (streq(rvalue, "CS6"))
|
else if (streq(rvalue, "CS6"))
|
||||||
*((int *)data) = IPTOS_CLASS_CS6;
|
*tos = IPTOS_CLASS_CS6;
|
||||||
else
|
else
|
||||||
log_syntax(unit, LOG_WARNING, filename, line, 0,
|
log_syntax(unit, LOG_WARNING, filename, line, 0,
|
||||||
"Failed to parse IPServiceType type '%s', ignoring.", rvalue);
|
"Failed to parse %s=, ignoring assignment: %s", lvalue, rvalue);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user