chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
4de8561
)
socket: only add dependency on kmsg socket to socket units which have any kind of...
author
Lennart Poettering
<lennart@poettering.net>
Tue, 3 Jan 2012 19:33:28 +0000
(20:33 +0100)
committer
Lennart Poettering
<lennart@poettering.net>
Tue, 3 Jan 2012 20:08:57 +0000
(21:08 +0100)
src/socket.c
patch
|
blob
|
history
diff --git
a/src/socket.c
b/src/socket.c
index bbfc842c70370811143edb9afa32914a4f513dc0..1f5e0673371b67e56468236071f2cc45956f8773 100644
(file)
--- a/
src/socket.c
+++ b/
src/socket.c
@@
-323,6
+323,17
@@
static int socket_add_default_dependencies(Socket *s) {
return unit_add_two_dependencies_by_name(UNIT(s), UNIT_BEFORE, UNIT_CONFLICTS, SPECIAL_SHUTDOWN_TARGET, NULL, true);
}
return unit_add_two_dependencies_by_name(UNIT(s), UNIT_BEFORE, UNIT_CONFLICTS, SPECIAL_SHUTDOWN_TARGET, NULL, true);
}
+static bool socket_has_exec(Socket *s) {
+ unsigned i;
+ assert(s);
+
+ for (i = 0; i < _SOCKET_EXEC_COMMAND_MAX; i++)
+ if (s->exec_command[i])
+ return true;
+
+ return false;
+}
+
static int socket_load(Unit *u) {
Socket *s = SOCKET(u);
int r;
static int socket_load(Unit *u) {
Socket *s = SOCKET(u);
int r;
@@
-352,8
+363,9
@@
static int socket_load(Unit *u) {
if ((r = socket_add_device_link(s)) < 0)
return r;
if ((r = socket_add_device_link(s)) < 0)
return r;
- if ((r = unit_add_exec_dependencies(u, &s->exec_context)) < 0)
- return r;
+ if (socket_has_exec(s))
+ if ((r = unit_add_exec_dependencies(u, &s->exec_context)) < 0)
+ return r;
if ((r = unit_add_default_cgroups(u)) < 0)
return r;
if ((r = unit_add_default_cgroups(u)) < 0)
return r;