Rework the way the daemon and server are created. If we might want to create a daemon, try to grab the lockfile with O_EXCL. If we got it, create a server and daemon, otherwise try and connect to the server. If connecting to the server fails (including after sleeping a little in case the server was recently created), remove the lockfile and start over. Other fix: shut down network gracefully on daemon exit. Fixes #1638
11 KiB
11 KiB