|
Zbigniew Jędrzejewski-Szmek |
43ff24 |
From b374a6f62172bf5352cc1ad825ace44d78430e0c Mon Sep 17 00:00:00 2001
|
|
Zbigniew Jędrzejewski-Szmek |
43ff24 |
From: Lennart Poettering <lennart@poettering.net>
|
|
Zbigniew Jędrzejewski-Szmek |
43ff24 |
Date: Wed, 9 Jul 2014 19:21:42 +0200
|
|
Zbigniew Jędrzejewski-Szmek |
43ff24 |
Subject: [PATCH] sysusers: don't allow control characters in gecos fields
|
|
Zbigniew Jędrzejewski-Szmek |
43ff24 |
|
|
Zbigniew Jędrzejewski-Szmek |
43ff24 |
(cherry picked from commit 38c74dad1c3d605018e61074e0b80f6b9523b1c8)
|
|
Zbigniew Jędrzejewski-Szmek |
43ff24 |
---
|
|
Zbigniew Jędrzejewski-Szmek |
43ff24 |
src/sysusers/sysusers.c | 6 +++++-
|
|
Zbigniew Jędrzejewski-Szmek |
43ff24 |
1 file changed, 5 insertions(+), 1 deletion(-)
|
|
Zbigniew Jędrzejewski-Szmek |
43ff24 |
|
|
Zbigniew Jędrzejewski-Szmek |
43ff24 |
diff --git a/src/sysusers/sysusers.c b/src/sysusers/sysusers.c
|
|
Zbigniew Jędrzejewski-Szmek |
43ff24 |
index f3ba8cf7b3..16ea0c9c57 100644
|
|
Zbigniew Jędrzejewski-Szmek |
43ff24 |
--- a/src/sysusers/sysusers.c
|
|
Zbigniew Jędrzejewski-Szmek |
43ff24 |
+++ b/src/sysusers/sysusers.c
|
|
Zbigniew Jędrzejewski-Szmek |
43ff24 |
@@ -1107,7 +1107,11 @@ static bool valid_gecos(const char *d) {
|
|
Zbigniew Jędrzejewski-Szmek |
43ff24 |
if (!utf8_is_valid(d))
|
|
Zbigniew Jędrzejewski-Szmek |
43ff24 |
return false;
|
|
Zbigniew Jędrzejewski-Szmek |
43ff24 |
|
|
Zbigniew Jędrzejewski-Szmek |
43ff24 |
- if (strpbrk(d, ":\n"))
|
|
Zbigniew Jędrzejewski-Szmek |
43ff24 |
+ if (string_has_cc(d, NULL))
|
|
Zbigniew Jędrzejewski-Szmek |
43ff24 |
+ return false;
|
|
Zbigniew Jędrzejewski-Szmek |
43ff24 |
+
|
|
Zbigniew Jędrzejewski-Szmek |
43ff24 |
+ /* Colons are used as field separators, and hence not OK */
|
|
Zbigniew Jędrzejewski-Szmek |
43ff24 |
+ if (strchr(d, ':'))
|
|
Zbigniew Jędrzejewski-Szmek |
43ff24 |
return false;
|
|
Zbigniew Jędrzejewski-Szmek |
43ff24 |
|
|
Zbigniew Jędrzejewski-Szmek |
43ff24 |
return true;
|