diff --git a/coccinelle/iovec-make.cocci b/coccinelle/iovec-make.cocci index 79116882fc..bbbf4a2b00 100644 --- a/coccinelle/iovec-make.cocci +++ b/coccinelle/iovec-make.cocci @@ -13,9 +13,13 @@ expression x, p, l; - x.iov_len = l; + x = IOVEC_MAKE(p, l); @@ +/* Don't run this transformation on iovec_done() and iovec_done_erase(), + * since the result, albeit correct, is a bit funky. */ + position pos : script:python() { pos[0].current_element != "iovec_done" and + pos[0].current_element != "iovec_done_erase" }; expression x, p, l; @@ -- x->iov_base = p; +- x->iov_base@pos = p; - x->iov_len = l; + *x = IOVEC_MAKE(p, l); @@ diff --git a/src/core/unit.c b/src/core/unit.c index e5598d32dd..d12829c31f 100644 --- a/src/core/unit.c +++ b/src/core/unit.c @@ -5390,7 +5390,7 @@ int unit_set_exec_params(Unit *u, ExecParameters *p) { p->received_credentials_directory = u->manager->received_credentials_directory; p->received_encrypted_credentials_directory = u->manager->received_encrypted_credentials_directory; - p->shall_confirm_spawn = !!u->manager->confirm_spawn; + p->shall_confirm_spawn = u->manager->confirm_spawn; p->fallback_smack_process_label = u->manager->defaults.smack_process_label; diff --git a/src/journal/journalctl.c b/src/journal/journalctl.c index 9b2eb8fa8e..c52a8d13be 100644 --- a/src/journal/journalctl.c +++ b/src/journal/journalctl.c @@ -318,7 +318,7 @@ static int parse_lines(const char *arg, bool graceful) { } arg_lines = n; - arg_lines_oldest = !!l; + arg_lines_oldest = l; return 1; diff --git a/src/libsystemd-network/ndisc-router.c b/src/libsystemd-network/ndisc-router.c index 74331591f0..5162df799c 100644 --- a/src/libsystemd-network/ndisc-router.c +++ b/src/libsystemd-network/ndisc-router.c @@ -593,7 +593,7 @@ int sd_ndisc_router_route_get_preference(sd_ndisc_router *rt, unsigned *ret) { return r; if (!IN_SET((ri[3] >> 3) & 3, SD_NDISC_PREFERENCE_LOW, SD_NDISC_PREFERENCE_MEDIUM, SD_NDISC_PREFERENCE_HIGH)) - return -ENOTSUP; + return -EOPNOTSUPP; *ret = (ri[3] >> 3) & 3; return 0; diff --git a/src/network/networkd-radv.c b/src/network/networkd-radv.c index 80c0fe43a8..fc36a001f8 100644 --- a/src/network/networkd-radv.c +++ b/src/network/networkd-radv.c @@ -1607,7 +1607,7 @@ int config_parse_router_home_agent_lifetime( return 0; } - if (usec == USEC_INFINITY || usec == 0 || + if (!timestamp_is_set(usec) || usec > RADV_HOME_AGENT_MAX_LIFETIME_USEC) { log_syntax(unit, LOG_WARNING, filename, line, 0, "Invalid [%s] %s=, ignoring assignment: %s", section, lvalue, rvalue); diff --git a/src/udev/udev-builtin-net_id.c b/src/udev/udev-builtin-net_id.c index d88d4f7dd5..91b40088f4 100644 --- a/src/udev/udev-builtin-net_id.c +++ b/src/udev/udev-builtin-net_id.c @@ -921,7 +921,7 @@ static int get_usb_specifier(sd_device *dev, char **ret) { return log_device_debug_errno(dev, SYNTHETIC_ERRNO(EINVAL), "sysname \"%s\" does not have '-' in the expected place.", sysname); - ports = strdupa(s + 1); + ports = strdupa_safe(s + 1); s = strchr(ports, ':'); if (!s) return log_device_debug_errno(dev, SYNTHETIC_ERRNO(EINVAL),