Merge pull request #3992 from poettering/hostname-fix2
some hostname fixes, triggered by #3979
This commit is contained in:
+15
-28
@@ -71,10 +71,9 @@
|
||||
set, and is valid (something other than localhost), then the
|
||||
transient hostname is not used.</para>
|
||||
|
||||
<para>Note that the pretty hostname has little restrictions on the
|
||||
characters used, while the static and transient hostnames are
|
||||
limited to the usually accepted characters of Internet domain
|
||||
names.</para>
|
||||
<para>Note that the pretty hostname has little restrictions on the characters and length used, while the static and
|
||||
transient hostnames are limited to the usually accepted characters of Internet domain names, and 64 characters at
|
||||
maximum (the latter being a Linux limitation).</para>
|
||||
|
||||
<para>The static hostname is stored in
|
||||
<filename>/etc/hostname</filename>, see
|
||||
@@ -107,15 +106,11 @@
|
||||
<term><option>--transient</option></term>
|
||||
<term><option>--pretty</option></term>
|
||||
|
||||
<listitem><para>If <command>status</command> is used (or no
|
||||
explicit command is given) and one of those fields is given,
|
||||
<command>hostnamectl</command> will print out just this
|
||||
selected hostname.</para>
|
||||
<listitem><para>If <command>status</command> is invoked (or no explicit command is given) and one of these
|
||||
switches is specified, <command>hostnamectl</command> will print out just this selected hostname.</para>
|
||||
|
||||
<para>If used with <command>set-hostname</command>, only the
|
||||
selected hostname(s) will be updated. When more than one of
|
||||
those options is used, all the specified hostnames will be
|
||||
updated. </para></listitem>
|
||||
<para>If used with <command>set-hostname</command>, only the selected hostname(s) will be updated. When more
|
||||
than one of these switches are specified, all the specified hostnames will be updated. </para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<xi:include href="user-system-options.xml" xpointer="host" />
|
||||
@@ -139,22 +134,14 @@
|
||||
<varlistentry>
|
||||
<term><command>set-hostname <replaceable>NAME</replaceable></command></term>
|
||||
|
||||
<listitem><para>Set the system hostname to
|
||||
<replaceable>NAME</replaceable>. By default, this will alter
|
||||
the pretty, the static, and the transient hostname alike;
|
||||
however, if one or more of <option>--static</option>,
|
||||
<option>--transient</option>, <option>--pretty</option> are
|
||||
used, only the selected hostnames are changed. If the pretty
|
||||
hostname is being set, and static or transient are being set
|
||||
as well, the specified hostname will be simplified in regards
|
||||
to the character set used before the latter are updated. This
|
||||
is done by replacing spaces with <literal>-</literal> and
|
||||
removing special characters. This ensures that the pretty and
|
||||
the static hostname are always closely related while still
|
||||
following the validity rules of the specific name. This
|
||||
simplification of the hostname string is not done if only the
|
||||
transient and/or static host names are set, and the pretty
|
||||
host name is left untouched.</para>
|
||||
<listitem><para>Set the system hostname to <replaceable>NAME</replaceable>. By default, this will alter the
|
||||
pretty, the static, and the transient hostname alike; however, if one or more of <option>--static</option>,
|
||||
<option>--transient</option>, <option>--pretty</option> are used, only the selected hostnames are changed. If
|
||||
the pretty hostname is being set, and static or transient are being set as well, the specified hostname will be
|
||||
simplified in regards to the character set used before the latter are updated. This is done by removing special
|
||||
characters and spaces. This ensures that the pretty and the static hostname are always closely related while
|
||||
still following the validity rules of the specific name. This simplification of the hostname string is not done
|
||||
if only the transient and/or static host names are set, and the pretty host name is left untouched.</para>
|
||||
|
||||
<para>Pass the empty string <literal></literal> as the
|
||||
hostname to reset the selected hostnames to their default
|
||||
|
||||
@@ -42,6 +42,7 @@ static void test_hostname_is_valid(void) {
|
||||
assert_se(!hostname_is_valid("foo..bar", false));
|
||||
assert_se(!hostname_is_valid("foo.bar..", false));
|
||||
assert_se(!hostname_is_valid("xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", false));
|
||||
assert_se(!hostname_is_valid("au-xph5-rvgrdsb5hcxc-47et3a5vvkrc-server-wyoz4elpdpe3.openstack.local", false));
|
||||
|
||||
assert_se(hostname_is_valid("foobar", true));
|
||||
assert_se(hostname_is_valid("foobar.com", true));
|
||||
|
||||
Reference in New Issue
Block a user