summaryrefslogtreecommitdiff
path: root/src/basic
diff options
context:
space:
mode:
Diffstat (limited to 'src/basic')
-rw-r--r--src/basic/hostname-util.c11
-rw-r--r--src/basic/hostname-util.h1
2 files changed, 12 insertions, 0 deletions
diff --git a/src/basic/hostname-util.c b/src/basic/hostname-util.c
index d901a5e82b..dc5434fcd1 100644
--- a/src/basic/hostname-util.c
+++ b/src/basic/hostname-util.c
@@ -151,6 +151,17 @@ bool is_localhost(const char *hostname) {
endswith_no_case(hostname, ".localdomain.");
}
+bool is_gateway_hostname(const char *hostname) {
+ assert(hostname);
+
+ /* This tries to identify the valid syntaxes for the our
+ * synthetic "gateway" host. */
+
+ return
+ strcaseeq(hostname, "gateway") ||
+ strcaseeq(hostname, "gateway.");
+}
+
int sethostname_idempotent(const char *s) {
char buf[HOST_NAME_MAX + 1] = {};
diff --git a/src/basic/hostname-util.h b/src/basic/hostname-util.h
index 6f2b5b66ff..a1ca94980d 100644
--- a/src/basic/hostname-util.h
+++ b/src/basic/hostname-util.h
@@ -33,6 +33,7 @@ bool hostname_is_valid(const char *s, bool relax) _pure_;
char* hostname_cleanup(char *s);
bool is_localhost(const char *hostname);
+bool is_gateway_hostname(const char *hostname);
int sethostname_idempotent(const char *s);