summaryrefslogtreecommitdiff
path: root/src/hostname
diff options
context:
space:
mode:
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2013-09-11 21:50:16 -0400
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2013-09-11 21:58:22 -0400
commitac4c8d6da8b5ebc35f02c9c6cb7595be7b134a05 (patch)
treed666c2db49efa06b0cdc4511ab0276f2bc38ea68 /src/hostname
parent0b429ab7fca2aa139ffbeeac8bdcfbbd21cc1a60 (diff)
Allow tabs in environment files
bash allows them, and so should we. string_has_cc is changed to allow tabs, and if they are not wanted, they must be now checked for explicitly. There are two other callers, apart from the env file loaders, and one already checked anyway, and the other is changed to check. https://bugs.freedesktop.org/show_bug.cgi?id=68592 https://bugs.gentoo.org/show_bug.cgi?id=481554
Diffstat (limited to 'src/hostname')
-rw-r--r--src/hostname/hostnamed.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/hostname/hostnamed.c b/src/hostname/hostnamed.c
index 0437e33a66..6a43aeb840 100644
--- a/src/hostname/hostnamed.c
+++ b/src/hostname/hostnamed.c
@@ -553,7 +553,8 @@ static DBusHandlerResult hostname_message_handler(
* safe than sorry */
if (k == PROP_ICON_NAME && !filename_is_safe(name))
return bus_send_error_reply(connection, message, NULL, -EINVAL);
- if (k == PROP_PRETTY_HOSTNAME && string_has_cc(name))
+ if (k == PROP_PRETTY_HOSTNAME &&
+ (string_has_cc(name) || chars_intersect(name, "\t")))
return bus_send_error_reply(connection, message, NULL, -EINVAL);
if (k == PROP_CHASSIS && !valid_chassis(name))
return bus_send_error_reply(connection, message, NULL, -EINVAL);