mirror of
https://github.com/systemd/systemd-stable.git
synced 2025-03-08 20:58:20 +03:00
journal-remote: convert to parse_boolean_argument() and fix type confusion
We were passing a reference to 'int arg_seal' to config_parse_bool(), which expects a 'bool *'. Luckily, this would work, because 'bool' is smaller than 'int', so config_parse_bool() would set the least-significant byte of arg_seal. At least I think so. But let's use consistent types ;) Also, modernize style a bit and don't use integers in boolean context.
This commit is contained in:
parent
c3470872c6
commit
9c7f220173
@ -14,6 +14,7 @@
|
||||
#include "journal-remote.h"
|
||||
#include "main-func.h"
|
||||
#include "memory-util.h"
|
||||
#include "parse-argument.h"
|
||||
#include "pretty-print.h"
|
||||
#include "process-util.h"
|
||||
#include "rlimit-util.h"
|
||||
@ -34,8 +35,8 @@ static const char* arg_listen_raw = NULL;
|
||||
static const char* arg_listen_http = NULL;
|
||||
static const char* arg_listen_https = NULL;
|
||||
static char** arg_files = NULL; /* Do not free this. */
|
||||
static int arg_compress = true;
|
||||
static int arg_seal = false;
|
||||
static bool arg_compress = true;
|
||||
static bool arg_seal = false;
|
||||
static int http_socket = -1, https_socket = -1;
|
||||
static char** arg_gnutls_log = NULL;
|
||||
|
||||
@ -965,28 +966,15 @@ static int parse_argv(int argc, char *argv[]) {
|
||||
break;
|
||||
|
||||
case ARG_COMPRESS:
|
||||
if (optarg) {
|
||||
r = parse_boolean(optarg);
|
||||
if (r < 0)
|
||||
return log_error_errno(r, "Failed to parse --compress= parameter.");
|
||||
|
||||
arg_compress = !!r;
|
||||
} else
|
||||
arg_compress = true;
|
||||
|
||||
r = parse_boolean_argument("--compress", optarg, &arg_compress);
|
||||
if (r < 0)
|
||||
return r;
|
||||
break;
|
||||
|
||||
case ARG_SEAL:
|
||||
if (optarg) {
|
||||
r = parse_boolean(optarg);
|
||||
if (r < 0)
|
||||
return log_error_errno(SYNTHETIC_ERRNO(EINVAL),
|
||||
"Failed to parse --seal= parameter.");
|
||||
|
||||
arg_seal = !!r;
|
||||
} else
|
||||
arg_seal = true;
|
||||
|
||||
r = parse_boolean_argument("--seal", optarg, &arg_seal);
|
||||
if (r < 0)
|
||||
return r;
|
||||
break;
|
||||
|
||||
case ARG_GNUTLS_LOG: {
|
||||
|
@ -22,6 +22,7 @@
|
||||
#include "log.h"
|
||||
#include "main-func.h"
|
||||
#include "mkdir.h"
|
||||
#include "parse-argument.h"
|
||||
#include "parse-util.h"
|
||||
#include "path-util.h"
|
||||
#include "pretty-print.h"
|
||||
@ -356,7 +357,7 @@ static int open_file_for_upload(Uploader *u, const char *filename) {
|
||||
|
||||
u->input = fd;
|
||||
|
||||
if (arg_follow) {
|
||||
if (arg_follow != 0) {
|
||||
r = sd_event_add_io(u->events, &u->input_event,
|
||||
fd, EPOLLIN, dispatch_fd_input, u);
|
||||
if (r < 0) {
|
||||
@ -747,16 +748,10 @@ static int parse_argv(int argc, char *argv[]) {
|
||||
break;
|
||||
|
||||
case ARG_FOLLOW:
|
||||
if (optarg) {
|
||||
r = parse_boolean(optarg);
|
||||
if (r < 0)
|
||||
return log_error_errno(SYNTHETIC_ERRNO(EINVAL),
|
||||
"Failed to parse --follow= parameter.");
|
||||
|
||||
arg_follow = !!r;
|
||||
} else
|
||||
arg_follow = true;
|
||||
|
||||
r = parse_boolean_argument("--follow", optarg, NULL);
|
||||
if (r < 0)
|
||||
return r;
|
||||
arg_follow = r;
|
||||
break;
|
||||
|
||||
case ARG_SAVE_STATE:
|
||||
@ -857,7 +852,7 @@ static int run(int argc, char **argv) {
|
||||
r = open_journal_for_upload(&u, j,
|
||||
arg_cursor ?: u.last_cursor,
|
||||
arg_cursor ? arg_after_cursor : true,
|
||||
!!arg_follow);
|
||||
arg_follow != 0);
|
||||
if (r < 0)
|
||||
return r;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user