]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
tmpfiles: ERRNO_IS_NOINFO -> _IS_NEG_, correct negative errno checks 34496/head
authorMike Yuan <me@yhndnzj.com>
Thu, 19 Sep 2024 11:38:47 +0000 (13:38 +0200)
committerMike Yuan <me@yhndnzj.com>
Thu, 19 Sep 2024 22:00:01 +0000 (00:00 +0200)
src/tmpfiles/tmpfiles.c

index a9faa5c474afdc5482342c7c05d5fa710c319011..79c1a07f9da5733be2b67353eb74d4e715bcf711 100644 (file)
@@ -250,12 +250,12 @@ static void context_done(Context *c) {
 }
 
 /* Different kinds of errors that mean that information is not available in the environment. */
-static bool ERRNO_IS_NOINFO(int r) {
-        return IN_SET(abs(r),
-                      EUNATCH,    /* os-release or machine-id missing */
-                      ENOMEDIUM,  /* machine-id or another file empty */
-                      ENOPKG,     /* machine-id is uninitialized */
-                      ENXIO);     /* env var is unset */
+static bool ERRNO_IS_NEG_NOINFO(intmax_t r) {
+        return IN_SET(r,
+                      -EUNATCH,    /* os-release or machine-id missing */
+                      -ENOMEDIUM,  /* machine-id or another file empty */
+                      -ENOPKG,     /* machine-id is uninitialized */
+                      -ENXIO);     /* env var is unset */
 }
 
 static int specifier_directory(
@@ -360,15 +360,15 @@ static int user_config_paths(char*** ret) {
                 return r;
 
         r = xdg_user_config_dir(&persistent_config, "/user-tmpfiles.d");
-        if (r < 0 && !ERRNO_IS_NOINFO(r))
+        if (r < 0 && !ERRNO_IS_NEG_NOINFO(r))
                 return r;
 
         r = xdg_user_runtime_dir(&runtime_config, "/user-tmpfiles.d");
-        if (r < 0 && !ERRNO_IS_NOINFO(r))
+        if (r < 0 && !ERRNO_IS_NEG_NOINFO(r))
                 return r;
 
         r = xdg_user_data_dir(&data_home, "/user-tmpfiles.d");
-        if (r < 0 && !ERRNO_IS_NOINFO(r))
+        if (r < 0 && !ERRNO_IS_NEG_NOINFO(r))
                 return r;
 
         r = strv_extend_strv_concat(&res, (const char* const*) config_dirs, "/user-tmpfiles.d");
@@ -3694,7 +3694,7 @@ static int parse_line(
         i.purge = purge;
 
         r = specifier_printf(path, PATH_MAX-1, specifier_table, arg_root, NULL, &i.path);
-        if (ERRNO_IS_NOINFO(r))
+        if (ERRNO_IS_NEG_NOINFO(r))
                 return log_unresolvable_specifier(fname, line);
         if (r < 0) {
                 if (IN_SET(r, -EINVAL, -EBADSLT))
@@ -3858,7 +3858,7 @@ static int parse_line(
         if (!unbase64) {
                 /* Do specifier expansion except if base64 mode is enabled */
                 r = specifier_expansion_from_arg(specifier_table, &i);
-                if (ERRNO_IS_NOINFO(r))
+                if (ERRNO_IS_NEG_NOINFO(r))
                         return log_unresolvable_specifier(fname, line);
                 if (r < 0) {
                         if (IN_SET(r, -EINVAL, -EBADSLT))
@@ -4702,7 +4702,7 @@ static int run(int argc, char *argv[]) {
                         RET_GATHER(r, process_item_array(&c, a, op));
         }
 
-        if (ERRNO_IS_RESOURCE(r))
+        if (ERRNO_IS_NEG_RESOURCE(r))
                 return r;
         if (invalid_config)
                 return EX_DATAERR;