summaryrefslogtreecommitdiff
path: root/src/basic/hostname-util.c
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2020-04-30 15:07:45 +0200
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2020-05-04 10:11:19 +0200
commitddd6a22a0fb034c763495fa1f3b6ebdd6a669e27 (patch)
treeac7bfb9eec91128813c0c9a54522f3983d411a36 /src/basic/hostname-util.c
parent2d4f8cf467b6825c91276808250823a29ab461fe (diff)
downloadsystemd-ddd6a22a0fb034c763495fa1f3b6ebdd6a669e27.tar.gz
basic: add STRCASE_IN_SET() which is to STR_IN_SET() what strcaseeq() is to streq()
Diffstat (limited to 'src/basic/hostname-util.c')
-rw-r--r--src/basic/hostname-util.c19
1 files changed, 11 insertions, 8 deletions
diff --git a/src/basic/hostname-util.c b/src/basic/hostname-util.c
index 8932c552c8..5a2d60f21d 100644
--- a/src/basic/hostname-util.c
+++ b/src/basic/hostname-util.c
@@ -12,6 +12,7 @@
#include "hostname-util.h"
#include "macro.h"
#include "string-util.h"
+#include "strv.h"
bool hostname_is_set(void) {
struct utsname u;
@@ -180,14 +181,16 @@ bool is_localhost(const char *hostname) {
/* This tries to identify local host and domain names
* described in RFC6761 plus the redhatism of localdomain */
- return strcaseeq(hostname, "localhost") ||
- strcaseeq(hostname, "localhost.") ||
- strcaseeq(hostname, "localhost.localdomain") ||
- strcaseeq(hostname, "localhost.localdomain.") ||
- endswith_no_case(hostname, ".localhost") ||
- endswith_no_case(hostname, ".localhost.") ||
- endswith_no_case(hostname, ".localhost.localdomain") ||
- endswith_no_case(hostname, ".localhost.localdomain.");
+ return STRCASE_IN_SET(
+ hostname,
+ "localhost",
+ "localhost.",
+ "localhost.localdomain",
+ "localhost.localdomain.") ||
+ endswith_no_case(hostname, ".localhost") ||
+ endswith_no_case(hostname, ".localhost.") ||
+ endswith_no_case(hostname, ".localhost.localdomain") ||
+ endswith_no_case(hostname, ".localhost.localdomain.");
}
bool is_gateway_hostname(const char *hostname) {