From bfa1f358a22d6473ea44548b72c1e9463982f778 Mon Sep 17 00:00:00 2001 From: Michael Biebl Date: Sat, 15 Aug 2020 20:30:35 +0200 Subject: [PATCH] New upstream version 246.1 --- man/journald.conf.xml | 18 ++++++++++++------ man/systemd.exec.xml | 4 +++- man/systemd.network.xml | 5 +---- man/systemd.service.xml | 2 +- src/core/transaction.c | 1 + src/nspawn/nspawn.c | 2 +- src/shared/pretty-print.c | 6 ++++++ src/systemctl/systemctl.c | 2 +- src/systemd/_sd-common.h | 2 +- 9 files changed, 27 insertions(+), 15 deletions(-) diff --git a/man/journald.conf.xml b/man/journald.conf.xml index bfd359a90..d792ef722 100644 --- a/man/journald.conf.xml +++ b/man/journald.conf.xml @@ -67,12 +67,18 @@ persistent, data will be stored preferably on disk, i.e. below the /var/log/journal hierarchy (which is created if needed), with a fallback to /run/log/journal (which is created if needed), during early boot and if the disk - is not writable. auto is similar to persistent but the - directory /var/log/journal is not created if needed, so that its existence - controls where log data goes. none turns off all storage, all log data received - will be dropped. Forwarding to other targets, such as the console, the kernel log buffer, or a syslog - socket will still work however. Defaults to auto in the default journal namespace, - and persistent in all others. + is not writable. auto behaves like persistent if the + /var/log/journal directory exists, and volatile otherwise + (the existence of the directory controls the storage mode). none turns off all + storage, all log data received will be dropped (but forwarding to other targets, such as the console, + the kernel log buffer, or a syslog socket will still work). Defaults to auto in + the default journal namespace, and persistent in all others. + + Note that when this option is changed to volatile, existing persistent data + is not removed. In the other direction, + journalctl1 with + the option may be used to move volatile data to persistent storage. + diff --git a/man/systemd.exec.xml b/man/systemd.exec.xml index 3618b5280..9c0ad7af4 100644 --- a/man/systemd.exec.xml +++ b/man/systemd.exec.xml @@ -2378,7 +2378,9 @@ StandardInputData=SWNrIHNpdHplIGRhIHVuJyBlc3NlIEtsb3BzLAp1ZmYgZWVtYWwga2xvcHAncy so that they are automatically established prior to the unit starting up. Note that when this option is used log output of this service does not appear in the regular journalctl1 - output, unless the option is used. + output, unless the option is used. + + diff --git a/man/systemd.network.xml b/man/systemd.network.xml index 77986192d..e75d612c0 100644 --- a/man/systemd.network.xml +++ b/man/systemd.network.xml @@ -3533,10 +3533,7 @@ DHCP=ipv6 Name=enp2s0 [Network] -IPv6PrefixDelegation=dhcpv6 - -[DHCPv6] -AssignAcquiredDelegatedPrefixAddress=yes +IPv6PrefixDelegation=dhcpv6 This will enable IPv6 PD on the interface enp1s0 as an upstream interface where the DHCPv6 client is running and enp2s0 as a downstream interface where the prefix is delegated to. diff --git a/man/systemd.service.xml b/man/systemd.service.xml index 4e281ec6d..cc13bff75 100644 --- a/man/systemd.service.xml +++ b/man/systemd.service.xml @@ -901,7 +901,7 @@ SuccessExitStatus=TEMPFAIL 250 SIGUSR1 Exit status 75 (TEMPFAIL), 250, and the termination signal - SIGKILL are considered clean service terminations. + SIGUSR1 are considered clean service terminations. Note: systemd-analyze exit-status may be used to list exit statuses and diff --git a/src/core/transaction.c b/src/core/transaction.c index 4a57b8e3f..958243bc9 100644 --- a/src/core/transaction.c +++ b/src/core/transaction.c @@ -966,6 +966,7 @@ int transaction_add_job_and_dependencies( * Given building up the transaction is a synchronous operation, attempt * to load the unit immediately. */ if (r < 0 && manager_unit_file_maybe_loadable_from_cache(unit)) { + sd_bus_error_free(e); unit->load_state = UNIT_STUB; r = unit_load(unit); if (r < 0 || unit->load_state == UNIT_STUB) diff --git a/src/nspawn/nspawn.c b/src/nspawn/nspawn.c index 3b9493f23..eb7c3321a 100644 --- a/src/nspawn/nspawn.c +++ b/src/nspawn/nspawn.c @@ -3259,7 +3259,7 @@ static int inner_child( * binary. */ dollar_path = strv_env_get(env_use, "PATH"); if (dollar_path) { - if (putenv((char*) dollar_path) != 0) + if (setenv("PATH", dollar_path, 1) < 0) return log_error_errno(errno, "Failed to update $PATH: %m"); } diff --git a/src/shared/pretty-print.c b/src/shared/pretty-print.c index 69bae6883..edba23985 100644 --- a/src/shared/pretty-print.c +++ b/src/shared/pretty-print.c @@ -234,6 +234,12 @@ static int guess_type(const char **name, char ***prefixes, bool *is_collection, if (!n) return log_oom(); + /* All systemd-style config files should support the /usr-/etc-/run split and + * dropins. Let's add a blanket rule that allows us to support them without keeping + * an explicit list. */ + if (path_startswith(n, "systemd") && endswith(n, ".conf")) + usr = true; + delete_trailing_chars(n, "/"); if (endswith(n, ".d")) diff --git a/src/systemctl/systemctl.c b/src/systemctl/systemctl.c index c58a19a09..eafae6e4f 100644 --- a/src/systemctl/systemctl.c +++ b/src/systemctl/systemctl.c @@ -7718,7 +7718,7 @@ static int systemctl_help(void) { " -M --machine=CONTAINER Operate on a local container\n" " -t --type=TYPE List units of a particular type\n" " --state=STATE List units with particular LOAD or SUB or ACTIVE state\n" - " --failed Shorcut for --state=failed\n" + " --failed Shortcut for --state=failed\n" " -p --property=NAME Show only properties by this name\n" " -P NAME Equivalent to --value --property=NAME\n" " -a --all Show all properties/all units currently in memory,\n" diff --git a/src/systemd/_sd-common.h b/src/systemd/_sd-common.h index 8158ee733..1055b00d0 100644 --- a/src/systemd/_sd-common.h +++ b/src/systemd/_sd-common.h @@ -19,7 +19,7 @@ /* This is a private header; never even think of including this directly! */ -#if defined(__INCLUDE_LEVEL__) && __INCLUDE_LEVEL__ <= 1 +#if defined(__INCLUDE_LEVEL__) && __INCLUDE_LEVEL__ <= 1 && !defined(__COVERITY__) # error "Do not include _sd-common.h directly; it is a private header." #endif