chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
device: allow easy identification of network interfaces without their full sysfs...
[elogind.git]
/
socket.c
diff --git
a/socket.c
b/socket.c
index b517344e70ab19b52efb9a47677921c553373eab..402eeaf628b04fa3336f1fe0c98417789a941c3e 100644
(file)
--- a/
socket.c
+++ b/
socket.c
@@
-453,7
+453,7
@@
static int socket_watch_fds(Socket *s) {
if (p->fd < 0)
continue;
if (p->fd < 0)
continue;
- p->fd_watch.
data.
socket_accept =
+ p->fd_watch.socket_accept =
s->accept &&
p->type == SOCKET_SOCKET &&
socket_address_can_accept(&p->address);
s->accept &&
p->type == SOCKET_SOCKET &&
socket_address_can_accept(&p->address);
@@
-578,6
+578,7
@@
static int socket_spawn(Socket *s, ExecCommand *c, pid_t *_pid) {
argv,
&s->exec_context,
NULL, 0,
argv,
&s->exec_context,
NULL, 0,
+ s->meta.manager->environment,
true,
true,
UNIT(s)->meta.manager->confirm_spawn,
true,
true,
UNIT(s)->meta.manager->confirm_spawn,
@@
-667,7
+668,7
@@
static void socket_enter_signal(Socket *s, SocketState state, bool success) {
}
}
}
}
- if (sent) {
+ if (sent
&& s->control_pid > 0
) {
if ((r = unit_watch_timer(UNIT(s), s->timeout_usec, &s->timer_watch)) < 0)
goto fail;
if ((r = unit_watch_timer(UNIT(s), s->timeout_usec, &s->timer_watch)) < 0)
goto fail;
@@
-1094,7
+1095,7
@@
static void socket_fd_event(Unit *u, int fd, uint32_t events, Watch *w) {
goto fail;
}
goto fail;
}
- if (w->
data.
socket_accept) {
+ if (w->socket_accept) {
for (;;) {
if ((cfd = accept4(fd, NULL, NULL, SOCK_NONBLOCK)) < 0) {
for (;;) {
if ((cfd = accept4(fd, NULL, NULL, SOCK_NONBLOCK)) < 0) {
@@
-1110,7
+1111,6
@@
static void socket_fd_event(Unit *u, int fd, uint32_t events, Watch *w) {
}
}
}
}
- log_debug("cfd=%i", cfd);
socket_enter_running(s, cfd);
return;
socket_enter_running(s, cfd);
return;