chiark / gitweb /
socket: if we fail to create an instantiated service for a socket, don't put the...
authorLennart Poettering <lennart@poettering.net>
Wed, 14 Mar 2012 02:01:27 +0000 (03:01 +0100)
committerLennart Poettering <lennart@poettering.net>
Wed, 14 Mar 2012 02:01:27 +0000 (03:01 +0100)
An incoming connection that is immediately terminated might result in
getpeername() or a similar call failing. Hence it is quite possible that
while we are setting up an instantiated service for a socket we might
get an error and we shouldn't take this as hint to take the listening
socket down.

https://bugs.freedesktop.org/show_bug.cgi?id=45297
https://bugzilla.novell.com/show_bug.cgi?id=741590

TODO
src/socket.c

diff --git a/TODO b/TODO
index 249c0e410899027f3eecc513f76af9fa4118865c..7bcb94f1fefe54358ea7d051d4f50d745f20ec5c 100644 (file)
--- a/TODO
+++ b/TODO
@@ -18,6 +18,12 @@ Bugfixes:
 
 Features:
 
+* add DeleteSocketsOnStop=yes|no option to socket units
+
+* add shutdown inhibit API for usage by libvirt and friends
+
+* journal: store euid in journal if it differs from uid
+
 * support chrony in addition to ntpd in timedated
 
 * journal: extend sd-journal.h logging calls to implicitly log function names/line numbers/...
index ecaf3d21488722e913ff9f70e26effdb6aac18a7..8704eff41dab7cee41acda26e70a8cdf763afee3 100644 (file)
@@ -1491,7 +1491,6 @@ static void socket_enter_running(Socket *s, int cfd) {
 
 fail:
         log_warning("%s failed to queue socket startup job: %s", UNIT(s)->id, bus_error(&error, r));
-        socket_enter_stop_pre(s, SOCKET_FAILURE_RESOURCES);
 
         if (cfd >= 0)
                 close_nointr_nofail(cfd);