[systemd-commits] 2 commits - src/core src/journal TODO
Zbigniew JÄdrzejewski-Szmek
zbyszek at kemper.freedesktop.org
Sun Oct 12 08:21:24 PDT 2014
TODO | 2 --
src/core/load-fragment.c | 14 ++++++--------
src/core/service.c | 11 +----------
src/journal/journald-server.c | 5 ++---
4 files changed, 9 insertions(+), 23 deletions(-)
New commits:
commit a158dbf156acc8899806fe07daa295464e82b52b
Author: Brandon L Black <blblack at gmail.com>
Date: Sat Oct 11 23:36:06 2014 +0000
Set $NOTIFY_SOCKET for control procs if NotifyAccess=all
diff --git a/TODO b/TODO
index 69ed60e..05a61a3 100644
--- a/TODO
+++ b/TODO
@@ -167,8 +167,6 @@ Features:
* journalctl: add the ability to look for the most recent process of a binary. journalctl /usr/bin/X11 --pid=-1 or so...
-* set NOTIFY_SOCKET also for control processes
-
* mount_cgroup_controllers(): symlinks need to get the label applied
* For timer units: add some mechanisms so that timer units that trigger immediately on boot do not have the services
diff --git a/src/core/service.c b/src/core/service.c
index f551061..7676344 100644
--- a/src/core/service.c
+++ b/src/core/service.c
@@ -883,7 +883,6 @@ static int service_spawn(
bool apply_permissions,
bool apply_chroot,
bool apply_tty_stdin,
- bool set_notify_socket,
bool is_control,
pid_t *_pid) {
@@ -948,7 +947,7 @@ static int service_spawn(
goto fail;
}
- if (set_notify_socket)
+ if (is_control ? s->notify_access == NOTIFY_ALL : s->notify_access != NOTIFY_NONE)
if (asprintf(our_env + n_env++, "NOTIFY_SOCKET=%s", UNIT(s)->manager->notify_socket) < 0) {
r = -ENOMEM;
goto fail;
@@ -1153,7 +1152,6 @@ static void service_enter_stop_post(Service *s, ServiceResult f) {
!s->permissions_start_only,
!s->root_directory_start_only,
true,
- false,
true,
&s->control_pid);
if (r < 0)
@@ -1253,7 +1251,6 @@ static void service_enter_stop(Service *s, ServiceResult f) {
!s->permissions_start_only,
!s->root_directory_start_only,
false,
- false,
true,
&s->control_pid);
if (r < 0)
@@ -1316,7 +1313,6 @@ static void service_enter_start_post(Service *s) {
!s->permissions_start_only,
!s->root_directory_start_only,
false,
- false,
true,
&s->control_pid);
if (r < 0)
@@ -1383,7 +1379,6 @@ static void service_enter_start(Service *s) {
true,
true,
true,
- s->notify_access != NOTIFY_NONE,
false,
&pid);
if (r < 0)
@@ -1449,7 +1444,6 @@ static void service_enter_start_pre(Service *s) {
!s->permissions_start_only,
!s->root_directory_start_only,
true,
- false,
true,
&s->control_pid);
if (r < 0)
@@ -1530,7 +1524,6 @@ static void service_enter_reload(Service *s) {
!s->permissions_start_only,
!s->root_directory_start_only,
false,
- false,
true,
&s->control_pid);
if (r < 0)
@@ -1568,7 +1561,6 @@ static void service_run_next_control(Service *s) {
!s->root_directory_start_only,
s->control_command_id == SERVICE_EXEC_START_PRE ||
s->control_command_id == SERVICE_EXEC_STOP_POST,
- false,
true,
&s->control_pid);
if (r < 0)
@@ -1611,7 +1603,6 @@ static void service_run_next_main(Service *s) {
true,
true,
true,
- s->notify_access != NOTIFY_NONE,
false,
&pid);
if (r < 0)
commit b1389b0d0805392570085acc7cb10eafcf885405
Author: Zbigniew JÄdrzejewski-Szmek <zbyszek at in.waw.pl>
Date: Sat Oct 11 11:37:37 2014 -0400
Modernization
diff --git a/src/core/load-fragment.c b/src/core/load-fragment.c
index 0620882..6b6f990 100644
--- a/src/core/load-fragment.c
+++ b/src/core/load-fragment.c
@@ -288,7 +288,8 @@ int config_parse_socket_listen(const char *unit,
void *data,
void *userdata) {
- SocketPort *p, *tail;
+ _cleanup_free_ SocketPort *p = NULL;
+ SocketPort *tail;
Socket *s;
int r;
@@ -315,10 +316,9 @@ int config_parse_socket_listen(const char *unit,
r = unit_full_printf(UNIT(s), rvalue, &p->path);
if (r < 0) {
p->path = strdup(rvalue);
- if (!p->path) {
- free(p);
+ if (!p->path)
return log_oom();
- } else
+ else
log_syntax(unit, LOG_ERR, filename, line, -r,
"Failed to resolve unit specifiers on %s, ignoring: %s", rvalue, strerror(-r));
}
@@ -334,11 +334,10 @@ int config_parse_socket_listen(const char *unit,
log_syntax(unit, LOG_ERR, filename, line, -r,
"Failed to resolve unit specifiers on %s, ignoring: %s", rvalue, strerror(-r));
- r = socket_address_parse_netlink(&p->address, k ? k : rvalue);
+ r = socket_address_parse_netlink(&p->address, k ?: rvalue);
if (r < 0) {
log_syntax(unit, LOG_ERR, filename, line, -r,
"Failed to parse address value, ignoring: %s", rvalue);
- free(p);
return 0;
}
@@ -355,7 +354,6 @@ int config_parse_socket_listen(const char *unit,
if (r < 0) {
log_syntax(unit, LOG_ERR, filename, line, -r,
"Failed to parse address value, ignoring: %s", rvalue);
- free(p);
return 0;
}
@@ -371,7 +369,6 @@ int config_parse_socket_listen(const char *unit,
if (socket_address_family(&p->address) != AF_LOCAL && p->address.type == SOCK_SEQPACKET) {
log_syntax(unit, LOG_ERR, filename, line, ENOTSUP,
"Address family not supported, ignoring: %s", rvalue);
- free(p);
return 0;
}
}
@@ -384,6 +381,7 @@ int config_parse_socket_listen(const char *unit,
LIST_INSERT_AFTER(port, s->ports, tail, p);
} else
LIST_PREPEND(port, s->ports, p);
+ p = NULL;
return 0;
}
diff --git a/src/journal/journald-server.c b/src/journal/journald-server.c
index 3df7416..52111f7 100644
--- a/src/journal/journald-server.c
+++ b/src/journal/journald-server.c
@@ -1475,9 +1475,8 @@ int server_init(Server *s) {
server_parse_config_file(s);
server_parse_proc_cmdline(s);
if (!!s->rate_limit_interval ^ !!s->rate_limit_burst) {
- log_debug("Setting both rate limit interval and burst from %llu,%u to 0,0",
- (long long unsigned) s->rate_limit_interval,
- s->rate_limit_burst);
+ log_debug("Setting both rate limit interval and burst from "USEC_FMT",%u to 0,0",
+ s->rate_limit_interval, s->rate_limit_burst);
s->rate_limit_interval = s->rate_limit_burst = 0;
}
More information about the systemd-commits
mailing list