summaryrefslogtreecommitdiff
path: root/src/basic
diff options
context:
space:
mode:
Diffstat (limited to 'src/basic')
-rw-r--r--src/basic/fd-util.c27
-rw-r--r--src/basic/fd-util.h2
-rw-r--r--src/basic/util.c27
-rw-r--r--src/basic/util.h2
4 files changed, 29 insertions, 29 deletions
diff --git a/src/basic/fd-util.c b/src/basic/fd-util.c
index 830522cdb5..d1b1db3a4d 100644
--- a/src/basic/fd-util.c
+++ b/src/basic/fd-util.c
@@ -322,3 +322,30 @@ void cmsg_close_all(struct msghdr *mh) {
if (cmsg->cmsg_level == SOL_SOCKET && cmsg->cmsg_type == SCM_RIGHTS)
close_many((int*) CMSG_DATA(cmsg), (cmsg->cmsg_len - CMSG_LEN(0)) / sizeof(int));
}
+
+bool fdname_is_valid(const char *s) {
+ const char *p;
+
+ /* Validates a name for $LISTEN_FDNAMES. We basically allow
+ * everything ASCII that's not a control character. Also, as
+ * special exception the ":" character is not allowed, as we
+ * use that as field separator in $LISTEN_FDNAMES.
+ *
+ * Note that the empty string is explicitly allowed
+ * here. However, we limit the length of the names to 255
+ * characters. */
+
+ if (!s)
+ return false;
+
+ for (p = s; *p; p++) {
+ if (*p < ' ')
+ return false;
+ if (*p >= 127)
+ return false;
+ if (*p == ':')
+ return false;
+ }
+
+ return p - s < 256;
+}
diff --git a/src/basic/fd-util.h b/src/basic/fd-util.h
index be00d881c3..1ca10f0383 100644
--- a/src/basic/fd-util.h
+++ b/src/basic/fd-util.h
@@ -67,3 +67,5 @@ int close_all_fds(const int except[], unsigned n_except);
int same_fd(int a, int b);
void cmsg_close_all(struct msghdr *mh);
+
+bool fdname_is_valid(const char *s);
diff --git a/src/basic/util.c b/src/basic/util.c
index 7d9dad472b..08bdcd28f2 100644
--- a/src/basic/util.c
+++ b/src/basic/util.c
@@ -838,30 +838,3 @@ int version(void) {
SYSTEMD_FEATURES);
return 0;
}
-
-bool fdname_is_valid(const char *s) {
- const char *p;
-
- /* Validates a name for $LISTEN_FDNAMES. We basically allow
- * everything ASCII that's not a control character. Also, as
- * special exception the ":" character is not allowed, as we
- * use that as field separator in $LISTEN_FDNAMES.
- *
- * Note that the empty string is explicitly allowed
- * here. However, we limit the length of the names to 255
- * characters. */
-
- if (!s)
- return false;
-
- for (p = s; *p; p++) {
- if (*p < ' ')
- return false;
- if (*p >= 127)
- return false;
- if (*p == ':')
- return false;
- }
-
- return p - s < 256;
-}
diff --git a/src/basic/util.h b/src/basic/util.h
index 57dc5e8d46..2c2cb36190 100644
--- a/src/basic/util.h
+++ b/src/basic/util.h
@@ -194,5 +194,3 @@ union inotify_event_buffer {
};
int version(void);
-
-bool fdname_is_valid(const char *s);