diff options
author | Anita Zhang <the.anitazha@gmail.com> | 2019-10-04 16:03:04 -0700 |
---|---|---|
committer | Anita Zhang <the.anitazha@gmail.com> | 2019-10-07 12:02:12 -0700 |
commit | e23d911664b4fd86eb2c24b64233cb9f23cffdd1 (patch) | |
tree | 8ab06f0dd7a626ed1ca9603240c37a9ca2e9cf5f /src/test/test-unit-name.c | |
parent | 0490b44031f0406ad053e150349666605b22ab15 (diff) | |
download | systemd-e23d911664b4fd86eb2c24b64233cb9f23cffdd1.tar.gz |
core: disallow using '-.service' as a service name
-.service.d will become a special top level drop in so don't let it be a
usable service name (otherwise the interaction gets complicated).
Diffstat (limited to 'src/test/test-unit-name.c')
-rw-r--r-- | src/test/test-unit-name.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/test/test-unit-name.c b/src/test/test-unit-name.c index 25c649828e..aa072c4ca8 100644 --- a/src/test/test-unit-name.c +++ b/src/test/test-unit-name.c @@ -355,6 +355,24 @@ static void test_unit_name_build(void) { free(t); } +static void test_service_unit_name_is_valid(void) { + assert_se(service_unit_name_is_valid("foo.service")); + assert_se(service_unit_name_is_valid("foo@bar.service")); + assert_se(service_unit_name_is_valid("foo@bar@bar.service")); + assert_se(service_unit_name_is_valid("--.service")); + assert_se(service_unit_name_is_valid(".-.service")); + assert_se(service_unit_name_is_valid("-foo-bar.service")); + assert_se(service_unit_name_is_valid("-foo-bar-.service")); + assert_se(service_unit_name_is_valid("foo-bar-.service")); + + assert_se(!service_unit_name_is_valid("-.service")); + assert_se(!service_unit_name_is_valid("")); + assert_se(!service_unit_name_is_valid("foo.slice")); + assert_se(!service_unit_name_is_valid("@.service")); + assert_se(!service_unit_name_is_valid("@bar.service")); + assert_se(!service_unit_name_is_valid("-@.service")); +} + static void test_slice_name_is_valid(void) { assert_se( slice_name_is_valid(SPECIAL_ROOT_SLICE)); assert_se( slice_name_is_valid("foo.slice")); @@ -840,6 +858,7 @@ int main(int argc, char* argv[]) { test_unit_prefix_is_valid(); test_unit_name_change_suffix(); test_unit_name_build(); + test_service_unit_name_is_valid(); test_slice_name_is_valid(); test_build_subslice(); test_build_parent_slice(); |