socket: when the socket is supposed to stop, don't accept any connections anymore

This commit is contained in:
Lennart Poettering
2010-07-13 00:27:27 +02:00
parent a974d58e83
commit ba3e67a785
4 changed files with 22 additions and 0 deletions
+7
View File
@@ -1030,6 +1030,13 @@ static void socket_enter_running(Socket *s, int cfd) {
assert(s);
dbus_error_init(&error);
/* We don't take connections anymore if we are supposed to
* shut down anyway */
if (s->meta.job && s->meta.job->type == JOB_STOP) {
close_nointr_nofail(cfd);
return;
}
if (cfd < 0) {
if ((r = manager_add_job(s->meta.manager, JOB_START, UNIT(s->service), JOB_REPLACE, true, &error, NULL)) < 0)
goto fail;