X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fjournal-remote%2Fjournal-remote.c;h=8f32a9a988e94d65896b89393f06c18d5db69c1d;hb=f4f01ec146d91cb6943828851d98eee6a1ad4dd9;hp=32e2d33e99b16d7033592287d654eaa18fcc0a50;hpb=23bbb0de4e3f85d9704a5c12a5afa2dfa0159e41;p=elogind.git diff --git a/src/journal-remote/journal-remote.c b/src/journal-remote/journal-remote.c index 32e2d33e9..8f32a9a98 100644 --- a/src/journal-remote/journal-remote.c +++ b/src/journal-remote/journal-remote.c @@ -84,17 +84,15 @@ static int spawn_child(const char* child, char** argv) { pid_t parent_pid, child_pid; int r; - if (pipe(fd) < 0) { - log_error("Failed to create pager pipe: %m"); - return -errno; - } + if (pipe(fd) < 0) + return log_error_errno(errno, "Failed to create pager pipe: %m"); parent_pid = getpid(); child_pid = fork(); if (child_pid < 0) { r = -errno; - log_error("Failed to fork: %m"); + log_error_errno(errno, "Failed to fork: %m"); safe_close_pair(fd); return r; } @@ -103,7 +101,7 @@ static int spawn_child(const char* child, char** argv) { if (child_pid == 0) { r = dup2(fd[1], STDOUT_FILENO); if (r < 0) { - log_error("Failed to dup pipe to stdout: %m"); + log_error_errno(errno, "Failed to dup pipe to stdout: %m"); _exit(EXIT_FAILURE); } @@ -119,13 +117,13 @@ static int spawn_child(const char* child, char** argv) { _exit(EXIT_SUCCESS); execvp(child, argv); - log_error("Failed to exec child %s: %m", child); + log_error_errno(errno, "Failed to exec child %s: %m", child); _exit(EXIT_FAILURE); } r = close(fd[1]); if (r < 0) - log_warning("Failed to close write end of pipe: %m"); + log_warning_errno(errno, "Failed to close write end of pipe: %m"); return fd[0]; } @@ -140,7 +138,7 @@ static int spawn_curl(const char* url) { r = spawn_child("curl", argv); if (r < 0) - log_error("Failed to spawn curl: %m"); + log_error_errno(errno, "Failed to spawn curl: %m"); return r; } @@ -159,7 +157,7 @@ static int spawn_getter(const char *getter, const char *url) { r = spawn_child(words[0], words); if (r < 0) - log_error("Failed to spawn getter %s: %m", getter); + log_error_errno(errno, "Failed to spawn getter %s: %m", getter); return r; } @@ -408,7 +406,7 @@ static int add_source(RemoteServer *s, int fd, char* name, bool own_name) { static int add_raw_socket(RemoteServer *s, int fd) { int r; _cleanup_close_ int fd_ = fd; - char name[strlen("raw-socket-") + DECIMAL_STR_MAX(int)]; + char name[sizeof("raw-socket-")-1 + DECIMAL_STR_MAX(int) + 1]; assert(fd >= 0); @@ -418,7 +416,7 @@ static int add_raw_socket(RemoteServer *s, int fd) { if (r < 0) return r; - snprintf(name, sizeof(name), "raw-socket-%d", fd); + xsprintf(name, "raw-socket-%d", fd); r = sd_event_source_set_description(s->listen_event, name); if (r < 0) @@ -653,10 +651,8 @@ static int setup_microhttpd_server(RemoteServer *s, assert(fd >= 0); r = fd_nonblock(fd, true); - if (r < 0) { - log_error_errno(r, "Failed to make fd:%d nonblocking: %m", fd); - return r; - } + if (r < 0) + return log_error_errno(r, "Failed to make fd:%d nonblocking: %m", fd); if (key) { assert(cert); @@ -889,7 +885,7 @@ static int remoteserver_init(RemoteServer *s, if (arg_url) { const char *url, *hostname; - url = strappenda(arg_url, "/entries"); + url = strjoina(arg_url, "/entries"); if (arg_getter) { log_info("Spawning getter %s...", url); @@ -942,10 +938,8 @@ static int remoteserver_init(RemoteServer *s, log_info("Reading file %s...", *file); fd = open(*file, O_RDONLY|O_CLOEXEC|O_NOCTTY|O_NONBLOCK); - if (fd < 0) { - log_error("Failed to open %s: %m", *file); - return -errno; - } + if (fd < 0) + return log_error_errno(errno, "Failed to open %s: %m", *file); output_name = *file; } @@ -1027,7 +1021,7 @@ static int dispatch_raw_source_event(sd_event_source *event, if (remaining > 0) log_warning("Premature EOF. %zu bytes lost.", remaining); remove_source(s, source->fd); - log_info("%zd active sources remaining", s->active); + log_info("%zu active sources remaining", s->active); return 0; } else if (r == -E2BIG) { log_error("Entry too big, skipped"); @@ -1055,10 +1049,8 @@ static int accept_connection(const char* type, int fd, log_debug("Accepting new %s connection on fd:%d", type, fd); fd2 = accept4(fd, &addr->sockaddr.sa, &addr->size, SOCK_NONBLOCK|SOCK_CLOEXEC); - if (fd2 < 0) { - log_error("accept() on fd:%d failed: %m", fd); - return -errno; - } + if (fd2 < 0) + return log_error_errno(errno, "accept() on fd:%d failed: %m", fd); switch(socket_address_family(addr)) { case AF_INET: @@ -1139,10 +1131,10 @@ static int parse_config(void) { { "Remote", "TrustedCertificateFile", config_parse_path, 0, &arg_trust }, {}}; - return config_parse(NULL, PKGSYSCONFDIR "/journal-remote.conf", NULL, - "Remote\0", - config_item_table_lookup, items, - false, false, true, NULL); + return config_parse_many(PKGSYSCONFDIR "/journal-remote.conf", + CONF_DIRS_NULSTR("systemd/journal-remote.conf"), + "Remote\0", config_item_table_lookup, items, + false, NULL); } static void help(void) { @@ -1477,13 +1469,13 @@ static int setup_gnutls_logger(char **categories) { gnutls_global_set_log_function(log_func_gnutls); - if (categories) + if (categories) { STRV_FOREACH(cat, categories) { r = log_enable_gnutls_category(*cat); if (r < 0) return r; } - else + } else log_reset_gnutls_level(); } #endif