On Fri, 12.07.13 09:19, Umut Tezduyar (u...@tezduyar.com) wrote: > >> + if ((se->state == SERVICE_DEAD || > >> + se->state == SERVICE_STOP || > >> + se->state == SERVICE_STOP_SIGTERM || > >> + se->state == SERVICE_STOP_SIGKILL || > >> + se->state == SERVICE_STOP_POST || > >> + se->state == SERVICE_FINAL_SIGTERM || > >> + se->state == SERVICE_FINAL_SIGKILL || > >> + se->state == SERVICE_AUTO_RESTART) && > >> + se->socket_fd < 0) > >> + socket_notify_service_dead(s, false); > >> + > >> + if (se->state == SERVICE_RUNNING) > >> + socket_set_state(s, SOCKET_RUNNING); > > This doesn't work for socket activated/instantiated services. I should > > be able to detect if a service is instantiated.. > > Lennart, do you have a solution for this that I can take in and > re-send the patch? It works great for socket activated services that > when service is running, the triggered by socket is set to running too > but it is not working for instantiated services. For instantiated > services, socket needs to stay in "listening" stay all the time.
I am not really grokking the problem, but I figure the entire trigger callback should be skipped (with an early return) if s->accept is set. Are you looking for something else? Lennart -- Lennart Poettering - Red Hat, Inc. _______________________________________________ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel