chiark / gitweb /
exit-status.c: bring EXIT_BUS_ENDPOINT label in line with others
[elogind.git] / src / shared / exit-status.c
index 902f55ac659276c55268f38471cca37587aef4e4..5c73b4d3c0d1384c27e6edf748d8fa2cf162d357 100644 (file)
@@ -113,9 +113,6 @@ const char* exit_status_to_string(ExitStatus status, ExitStatusLevel level) {
                 case EXIT_STDERR:
                         return "STDERR";
 
-                case EXIT_TCPWRAP:
-                        return "TCPWRAP";
-
                 case EXIT_PAM:
                         return "PAM";
 
@@ -139,6 +136,21 @@ const char* exit_status_to_string(ExitStatus status, ExitStatusLevel level) {
 
                 case EXIT_APPARMOR_PROFILE:
                         return "APPARMOR";
+
+                case EXIT_ADDRESS_FAMILIES:
+                        return "ADDRESS_FAMILIES";
+
+                case EXIT_RUNTIME_DIRECTORY:
+                        return "RUNTIME_DIRECTORY";
+
+                case EXIT_CHOWN:
+                        return "CHOWN";
+
+                case EXIT_MAKE_STARTER:
+                        return "MAKE_STARTER";
+
+                case EXIT_BUS_ENDPOINT:
+                        return "BUS_ENDPOINT";
                 }
         }
 
@@ -174,7 +186,7 @@ bool is_clean_exit(int code, int status, ExitStatusSet *success_status) {
         if (code == CLD_EXITED)
                 return status == 0 ||
                        (success_status &&
-                       set_contains(success_status->code, INT_TO_PTR(status)));
+                       set_contains(success_status->status, INT_TO_PTR(status)));
 
         /* If a daemon does not implement handlers for some of the
          * signals that's not considered an unclean shutdown */
@@ -200,19 +212,17 @@ bool is_clean_exit_lsb(int code, int status, ExitStatusSet *success_status) {
                 (status == EXIT_NOTINSTALLED || status == EXIT_NOTCONFIGURED);
 }
 
-int parse_show_status(const char *v, ShowStatus *ret) {
-        int r;
+void exit_status_set_free(ExitStatusSet *x) {
+        assert(x);
 
-        assert(v);
-        assert(ret);
+        set_free(x->status);
+        set_free(x->signal);
+        x->status = x->signal = NULL;
+}
 
-        if (streq(v, "auto")) {
-                *ret = SHOW_STATUS_AUTO;
-                return 0;
-        }
-        r = parse_boolean(v);
-        if (r < 0)
-                return r;
-        *ret = r ? SHOW_STATUS_YES : SHOW_STATUS_NO;
-        return 0;
+bool exit_status_set_is_empty(ExitStatusSet *x) {
+        if (!x)
+                return true;
+
+        return set_isempty(x->status) && set_isempty(x->signal);
 }