|author||Peter Seebach <email@example.com>||2016-03-01 16:21:15 -0600|
|committer||Peter Seebach <firstname.lastname@example.org>||2016-03-01 16:21:24 -0600|
Server launch reworking.
This is the big overhaul to have the server provide meaningful exit status to clients. In the process, I discovered that the server was running with signals blocked if launched by a client, which is not a good thing, and prevented this from working as intended. Still looking to see why more than one server spawn seems to happen.
Diffstat (limited to 'enums')
1 files changed, 16 insertions, 0 deletions
diff --git a/enums/exit_status.in b/enums/exit_status.in
new file mode 100644
@@ -0,0 +1,16 @@
+exit_status: PSEUDO_EXIT; char * message = "exit status unknown"
+# 0 indicates success. The others indicate where in the startup process
+# something went wrong, for any point at which we'd exit.
+general, "unspecified error"
+fork_failed, "fork failed"
+lock_path, "path allocation failure for lock file"
+lock_held, "lock already held by another process"
+lock_failed, "could not create/lock lockfile"
+timeout, "child process timed out"
+waitpid, "waitpid() for child process failed unexpectedly"
+socket_create, "couldn't create socket"
+socket_fd, "couldn't move socket to safe file descriptor"
+socket_path, "path allocation failure for server socket"
+socket_unlink, "couldn't unlink existing server socket"
+socket_bind, "couldn't bind server socket"
+socket_listen, "couldn't listen on server socket"