Lennart Poettering [Thu, 31 Oct 2024 20:43:18 +0000 (21:43 +0100)]
machine: several follow-ups for recent change (#34882)
Follow-ups for #34761.
Lennart Poettering [Thu, 31 Oct 2024 14:39:34 +0000 (15:39 +0100)]
sd-json: don't accidentally convert between unsigned/signed when parsing signal
Mike Gilbert [Thu, 24 Oct 2024 16:24:35 +0000 (12:24 -0400)]
posix_spawn_wrapper: do not set POSIX_SPAWN_SETSIGDEF flag
Setting this flag is a noop without a corresponding call to
posix_spawnattr_setsigdefault.
If we call posix_spawnattr_setsigdefault with a full signal set,
it causes glibc's posix_spawn implementation to call sigaction 63 times,
once for each signal. That seems wasteful.
This feature is really only useful for signals which have their
disposition set to SIG_IGN. Otherwise the dispostion gets set to
SIG_DFL automatically, either by clone(CLONE_CLEAR_SIGHAND) or the
subsequent execve.
As far as I can tell, systemd does not have any signals set to SIG_IGN
under normal operating conditions.
Daan De Meyer [Thu, 31 Oct 2024 11:44:13 +0000 (12:44 +0100)]
mkosi: Install gdb in centos/fedora build image
Lack of gdb-add-index has become a fatal error in Rawhide/c10s so
let's install gdb to make rpmbuild happy.
Yu Watanabe [Thu, 31 Oct 2024 02:59:10 +0000 (11:59 +0900)]
resolve: do not try to send varlink error more than once
After
d2ebf5cc1d59e29139f06efaa3a9b2c184cdaa25, sd_varlink_error() and
friends return negative errno.
Fixes https://github.com/systemd/systemd/pull/34946#discussion_r1823703636.
Yu Watanabe [Thu, 31 Oct 2024 01:24:06 +0000 (10:24 +0900)]
machine: lookup_machine_by_name_or_pidref() returns negative errno on failure
This effectively reverts
d2c1451b7398f13439b694450a23def3cf31c8db.
After the commit
d2ebf5cc1d59e29139f06efaa3a9b2c184cdaa25, sd_varlink_error()
returns negative errno, hence the function always return negative errno
on failure.
Yu Watanabe [Fri, 25 Oct 2024 17:17:29 +0000 (02:17 +0900)]
machine: use JSON_BUILD_PAIR_STRV_ENV_PAIR_NON_EMPTY()
Also use JSON_BUILD_PAIR_UNSIGNED_NOT_EQUAL().
Yu Watanabe [Fri, 25 Oct 2024 17:09:01 +0000 (02:09 +0900)]
sd-json: introduce JSON_BUILD_PAIR_STRV_ENV_PAIR_NON_EMPTY() macro
It is similar to JSON_BUILD_PAIR_STRV_NON_EMPTY, but takes the
list of environment variables.
Yu Watanabe [Fri, 25 Oct 2024 17:07:02 +0000 (02:07 +0900)]
sd-json: use strv_env_get_merged()
Yu Watanabe [Fri, 25 Oct 2024 17:01:19 +0000 (02:01 +0900)]
env-util: introduce strv_env_get_merged()
Yu Watanabe [Fri, 25 Oct 2024 16:46:39 +0000 (01:46 +0900)]
env-util: replace 'char **' with 'char**'
Yu Watanabe [Thu, 31 Oct 2024 02:02:23 +0000 (11:02 +0900)]
TEST-13-NSPAWN: add test cases for listing multiple machines
Yu Watanabe [Thu, 24 Oct 2024 15:42:28 +0000 (00:42 +0900)]
TEST-13-NSPAWN: trivially kill all processes in the container on termination
Follow-up for
841988f80d2440501a3baddba712cdb955225ab7.
No functional change, as $PID is 0 when the trap is inserted.
Yu Watanabe [Thu, 24 Oct 2024 15:24:04 +0000 (00:24 +0900)]
TEST-13-NSPAWN: check returned machine list
Yu Watanabe [Wed, 23 Oct 2024 21:00:53 +0000 (06:00 +0900)]
TEST-13-NSPAWN: fix race between container exit and varlink call
Follow-up for
3cb72c7862d8950bc2a963aaa3ca3255eea374b6.
The test container exits shortly, hence when varlinkctl is called, the
container may be already terminated. Let's make the container live
infinitely.
Also, this makes the os-release files removed after the container is started.
Yu Watanabe [Thu, 24 Oct 2024 10:32:36 +0000 (19:32 +0900)]
Yu Watanabe [Thu, 24 Oct 2024 10:29:57 +0000 (19:29 +0900)]
machine: use sd_json_variant_append_arraybo() and JSON_BUILD_PAIR_VARIANT_NON_NULL()
Follow-up for
45755275e5ae747bf79e6c7bdd9a055711ebc71f.
Yu Watanabe [Thu, 31 Oct 2024 01:58:25 +0000 (10:58 +0900)]
NEWS: fix typo
Yu Watanabe [Thu, 31 Oct 2024 00:43:12 +0000 (09:43 +0900)]
sd-varlink: update comment
Lennart Poettering [Wed, 30 Oct 2024 14:31:08 +0000 (15:31 +0100)]
sd-varlink: change sd_varlink_error() to always return an error
Let's make sure that sd_varlink_error() always returns an error code, so
that we can use it in a style "return sd_varlink_error(…);" everywhere,
which has two effects: return a good error reply to clients, and exit
the current stack frame with a failure code.
Interestingly sd_varlink_error_invalid_parameter() already worked like
this in some cases, but sd_varlink_error() itself didn't.
This is an alternative to the error handling tweak proposed in #34882,
but I think is a lot more generically useful, since it establishes a
pattern.
I checked our codebase, and this change should generally be OK without
breaking callsites, since the current callers (with exception of the
machined case from #34882) called sd_varlink_error() in the outermost
varlink method call dispatch stack frame, where this behaviour change
does not alter anything.
This is similar btw, how sd_bus_error_setf() and friends always return
error codes too, synthesized from its parameters.
Lennart Poettering [Wed, 30 Oct 2024 14:30:16 +0000 (15:30 +0100)]
sd-varlink: add helper VARLINK_STATE_WANTS_REPLY()
Let's add a helper that detects whether we still need to reply to a
state. This should make the logic easier to follow.
Lennart Poettering [Wed, 30 Oct 2024 14:29:29 +0000 (15:29 +0100)]
sd-varlink: don't show error code we already decoded as part of the log message
Lennart Poettering [Wed, 30 Oct 2024 14:19:12 +0000 (15:19 +0100)]
sd-varlink: if we reply to errors without passing to callback, go through regular error path
If replying with an error fails, we should failt the whole connection,
and not leave the connection in a weird state.
Yu Watanabe [Wed, 30 Oct 2024 23:05:39 +0000 (08:05 +0900)]
firstboot: several cleanups (#34958)
Split out of #33226
Lennart Poettering [Wed, 30 Oct 2024 20:55:13 +0000 (21:55 +0100)]
sd-json: don't use C99 bool in public headers
All our public headers strive to C90 compatibility with a few
extensions, and thus avoided stdbool.h and bool.
The sd_json_format_enabled() helper seems like a poor place to start
requiring stdbool.h now.
Also drop __extension__ since we are not using it anywhere else in very
similar inline functions.
(And we probably should drop any _sd_const declarations on inline
functions. Given that the compiler has the function implementation
around always, because it's in the header there's really no reason to
specify this manually, the compiler can trivially figure this out on its
own. But that's for another time.)
Yu Watanabe [Wed, 30 Oct 2024 22:01:46 +0000 (07:01 +0900)]
network: support reconfiguring netdev (#34909)
Closes #9627
Closes #27177.
Closes #34907.
Replaces #22557.
Yu Watanabe [Mon, 28 Oct 2024 16:45:08 +0000 (01:45 +0900)]
man: update documentation for 'networkctl reload'
Yu Watanabe [Sun, 27 Oct 2024 05:23:08 +0000 (14:23 +0900)]
test-network: test for reload of .netdev file of stacked netdev
For issue #9627, #27177, and #34907.
Yu Watanabe [Sun, 27 Oct 2024 07:38:24 +0000 (16:38 +0900)]
network/netdev: replace old NetDev object with newer one on reload
Then, when a .netdev file of a stacked netdev is modified, the netdev
can be reconfigured with the updated setting by something like the
following way:
```
ip link del vlan99
networkctl reload
```
Note, removing the vlan interface in the above example may not be necessary,
e.g. when only VLAN flags, egress mapping, or ingress mapping are updated.
But, it is necessary when VLAN ID is updated.
Closes #9627.
Closes #27177.
Closes #34907.
Replaces #22557.
Yu Watanabe [Mon, 28 Oct 2024 14:42:38 +0000 (23:42 +0900)]
network/netdev: reconfigure netdev if possible
Some netdev configs can be modified after the interface is created.
Let's allow to reconfigure existing interfaces.
Yu Watanabe [Sun, 27 Oct 2024 07:37:17 +0000 (16:37 +0900)]
network/netdev: move calls of netdev_attach() and netdev_request_to_create() to netdev_load()
No functional change, preparation for later commits.
Daan De Meyer [Wed, 30 Oct 2024 18:03:49 +0000 (19:03 +0100)]
mkosi: Ensure we build with debuginfo
Michal Sekletar [Wed, 30 Oct 2024 13:55:09 +0000 (14:55 +0100)]
coredump: allow only empty messages after first "sentinel"
Michael Ferrari [Wed, 9 Oct 2024 15:30:44 +0000 (17:30 +0200)]
firstboot: generalize prompt_loop more
Allows unifying the custom logic for the hostname and root shell. Root
password prompting remains separate as it's logic is substantially
different to the other prompts.
Michael Ferrari [Tue, 8 Oct 2024 23:19:43 +0000 (01:19 +0200)]
firstboot: use consistent wording for prompts
Michael Ferrari [Tue, 8 Oct 2024 16:58:04 +0000 (18:58 +0200)]
firstboot: clean up welcome message
Michael Ferrari [Mon, 7 Oct 2024 09:02:16 +0000 (11:02 +0200)]
firstboot: order non-interactive options last
Yu Watanabe [Wed, 30 Oct 2024 19:04:55 +0000 (04:04 +0900)]
network/tunnel: reuse existing 6rd sit tunnel (#34938)
split-out of #34909.
Yu Watanabe [Wed, 30 Oct 2024 19:04:33 +0000 (04:04 +0900)]
network/netdev: do not try to update several parameters if the interface already exists (#34937)
split-out of #34909.
Yu Watanabe [Wed, 30 Oct 2024 19:04:10 +0000 (04:04 +0900)]
network: several cleanups for reloading .network files (#34933)
split-out of #34909.
Yu Watanabe [Wed, 30 Oct 2024 19:03:11 +0000 (04:03 +0900)]
network: process queued remove requests on stop (#34871)
Fixes a regression caused by
85a6f300c14d75d161cbfdb3eaf5af9594400ecd
and its later commits.
Fixes #34837.
Yu Watanabe [Wed, 30 Oct 2024 17:31:03 +0000 (02:31 +0900)]
mkosi: Update packaging specs to latest (#34951)
Yu Watanabe [Wed, 30 Oct 2024 17:08:20 +0000 (02:08 +0900)]
test-network: add test case for reuse of existing 6rd SIT tunnel
Lennart Poettering [Wed, 30 Oct 2024 16:44:40 +0000 (17:44 +0100)]
Fix display of qrcodes by bsod and other related cleanups (#34914)
Daan De Meyer [Wed, 30 Oct 2024 12:53:31 +0000 (13:53 +0100)]
ask-password: Allow configuring the keyring timeout via an environment variable
In mkosi, we want an easy way to set the keyring timeout for every
tool we invoke that might use systemd-ask-password to query for a
password which is then stored in the kernel keyring. Let's make this
possible via a new $SYSTEMD_ASK_PASSWORD_KEYRING_TIMEOUT_SEC environment
variable.
Using an environment variable means we don't have to modify every separate
tool to add a CLI option allowing to specify the timeout. In mkosi specifically,
we'll set up a new session keyring for the mkosi process linked to the user keyring
so that any pins in the user keyring are used if available, and otherwise we'll query
for and store password in mkosi's session keyring with a zero timeout so that they stay
in the keyring until the mkosi process exits at which point they're removed from the
keyring.
Luca Boccassi [Wed, 30 Oct 2024 13:44:00 +0000 (13:44 +0000)]
logind: add BlockWeakInhibited property
Fixes https://github.com/systemd/systemd/issues/34091
Follow-up for
804874d26ac73e0af07c4c5d7165c95372f03f6d
Łukasz Stelmach [Tue, 29 Oct 2024 14:53:45 +0000 (15:53 +0100)]
core: make mount(8) and swapon(8) inherit SMACK label from systemd
By default mount(8), umount(8), swapon(8) and swapoff(8) should run with
with the SMACK label inherited from systemd rather than the default one
meant for services.
Fixes:
aa5ae9711ef3cd0c69b7fcfbd65bca05fb704a8a
Follow-up-for:
20bbf5ee4c6c80599a91e7a4b7474e931a27db4a
Yu Watanabe [Tue, 29 Oct 2024 16:36:10 +0000 (01:36 +0900)]
network/ipvlan: do not try to update MAC address
Yu Watanabe [Tue, 29 Oct 2024 15:22:17 +0000 (00:22 +0900)]
network/macsec: IFLA_MACSEC_PORT attribute cannot be changed
Also, though currently not supported by networkd,
IFLA_MACSEC_CIPHER_SUITE, IFLA_MACSEC_ICV_LEN, IFLA_MACSEC_SCI
cannot be updated.
Yu Watanabe [Mon, 28 Oct 2024 20:30:39 +0000 (05:30 +0900)]
network/vxlan: do not try to update several parameters
Currently, netdev->ifindex is always zero when this function is called.
So, this does not change any behavior. Preparation for later commits.
Yu Watanabe [Tue, 29 Oct 2024 17:01:59 +0000 (02:01 +0900)]
network/netdev: introduce netdev_can_set_mac/mtu() helper functions
Several netdevs cannot set IFLA_ADDRESS or IFLA_MTU attribute on update.
Currently, the vtable field is unused, as we do not support updating
existing netdevs. Preparation for later commits.
Yu Watanabe [Mon, 28 Oct 2024 13:39:15 +0000 (22:39 +0900)]
network: use newly loaded Network object if a referenced NetDev object is updated
Even if .network file is not updated, referenced NetDev object may be
different. In that case, let's use the newly loaded Network object.
Yu Watanabe [Sun, 27 Oct 2024 07:29:24 +0000 (16:29 +0900)]
network: drop no-op cleanup
- network_load() is always called with an empty OrderedHashmap, renamed the output
parameter to 'ret'.
- When netdev_load() is called on startup, the hashmap is NULL. When it is
called on reloading, the hashmap is not cleaned up.
Hence, then these cleanups are always no-op. Let's drop them.
Yu Watanabe [Tue, 29 Oct 2024 15:16:10 +0000 (00:16 +0900)]
network/netdev: update state file when NetDev object assignment is changed
Yu Watanabe [Sun, 27 Oct 2024 13:58:25 +0000 (22:58 +0900)]
network: swap asterisk and space
Yu Watanabe [Thu, 24 Oct 2024 09:27:16 +0000 (18:27 +0900)]
github: drop workaround and use distro mold
Now, ubuntu-24.04 has mold-2.30.0+dfsg-1build1 .
See https://packages.ubuntu.com/noble/mold .
Yu Watanabe [Wed, 23 Oct 2024 20:25:41 +0000 (05:25 +0900)]
test-network: add test for DHCPv4 address removal on stop
For issue #34837.
Yu Watanabe [Wed, 23 Oct 2024 19:40:45 +0000 (04:40 +0900)]
network: process queued remove requests before networkd is stopped
This makes networkd process all queued remove requests when a
terminating or restarting signal is received. Otherwise, e.g. DHCPv4
address will not be removed on stop, especially when
KeepConfiguration=no.
Fixes a bug introduced by
85a6f300c14d75d161cbfdb3eaf5af9594400ecd and
its subsequent commits.
Fixes #34837.
Co-authored-by: Will Fancher <elvishjerricco@gmail.com>
Daan De Meyer [Wed, 30 Oct 2024 15:31:39 +0000 (16:31 +0100)]
mkosi: update debian commit reference
*
2f288667e0 Install sysupdate.feature manpage
*
384393a955 d/systemd.postrm: delete more internal state directories on purge
Daan De Meyer [Wed, 30 Oct 2024 15:29:43 +0000 (16:29 +0100)]
mkosi: update arch commit reference
*
62c224b60c Specify --no-rebuild when calling meson install
*
b5c20dc6b0 fix redirection for dash
*
7fef8e4cdd upgpkg: 256.7-1: new upstream release
Luca Boccassi [Wed, 30 Oct 2024 14:37:44 +0000 (14:37 +0000)]
coredump: AccessContainer= bunch of followups (#34333)
Fixes #34130
Zbigniew Jędrzejewski-Szmek [Sat, 26 Oct 2024 05:22:01 +0000 (07:22 +0200)]
NEWS: remove duplicated entry
The same item is described below.
Also reflow some paragraphs (presumably indented with emacs, which does this
wrong).
Zbigniew Jędrzejewski-Szmek [Mon, 28 Oct 2024 12:59:05 +0000 (13:59 +0100)]
cryptenroll,homectl,journalctl: adjust messages before qrcodes
Users will generally know what a qrcode is, so let's not treat them as dumb and
explain that it can be scanned. OTOH, we should say what the qrcode contains
and it is useful to give a hint why the users would want to scan it. Reword
messages accordingly.
(Also, don't say "to your phone", when somebody might be using a stolen phone,
or something else then a phone.)
Zbigniew Jędrzejewski-Szmek [Mon, 28 Oct 2024 12:51:25 +0000 (13:51 +0100)]
bsod: make message for qrcode more useful
People know what a qrcode is. We don't need to tell them to scan it.
Instead, we should say what the code contains.
While at it, rename "stream" to "f" in line with the usual style.
Michal Sekletar [Fri, 6 Sep 2024 17:23:09 +0000 (19:23 +0200)]
test: add test coverage for EnterNamespace=
Michal Sekletár [Tue, 29 Oct 2024 17:41:55 +0000 (17:41 +0000)]
coredump: return correct error variable
Michal Sekletar [Tue, 10 Sep 2024 17:32:57 +0000 (19:32 +0200)]
coredump: rename AccessContainer= to EnterNamespace=
Michal Sekletar [Tue, 10 Sep 2024 17:15:46 +0000 (19:15 +0200)]
coredump: rework gather_pid_mount_tree_fd()
Michal Sekletar [Mon, 9 Sep 2024 16:48:48 +0000 (18:48 +0200)]
coredump: use FORK_WAIT
Lennart Poettering [Wed, 30 Oct 2024 09:59:57 +0000 (10:59 +0100)]
core: add EXEC_DIRECTORY_TYPE_SHALL_CHOWN() helper
Let's make ConfigurationDirectory= a bit less "special-casey", by hiding
the fact that it's the only per-service dir we do not do chown()ing for
inside of a new EXEC_DIRECTORY_TYPE_SHALL_CHOWN() helper.
Michal Sekletar [Mon, 9 Sep 2024 16:31:57 +0000 (18:31 +0200)]
coredump: store actual fd in appropriate variable
Michal Sekletar [Mon, 9 Sep 2024 16:28:13 +0000 (18:28 +0200)]
coredump: use FORK_LOG to get more precise logging
Michal Sekletar [Mon, 9 Sep 2024 16:25:21 +0000 (18:25 +0200)]
coredump: fix coding style
Michal Sekletar [Mon, 9 Sep 2024 16:18:35 +0000 (18:18 +0200)]
coredump: get rid of redundant double space
Michal Sekletar [Mon, 9 Sep 2024 16:17:18 +0000 (18:17 +0200)]
coredump: use more appropriate return code
Michal Sekletar [Mon, 9 Sep 2024 16:07:14 +0000 (18:07 +0200)]
coredump: check for and close unexpected FDs
Michal Sekletar [Mon, 9 Sep 2024 14:15:57 +0000 (16:15 +0200)]
coredump: fix line spacing
Michal Sekletar [Mon, 9 Sep 2024 13:48:39 +0000 (15:48 +0200)]
coredump: merge variable definitions
Michal Sekletar [Mon, 9 Sep 2024 13:44:30 +0000 (15:44 +0200)]
coredump: rework attaching container mount trees
Lennart Poettering [Wed, 30 Oct 2024 11:11:28 +0000 (12:11 +0100)]
docs: Update instructions for building distribution packages in HACKING.md (#34941)
When building distribution packages without building an image, the
distribution packages will only be located in mkosi.builddir/ now and
not in mkosi.output/, so update the documentation to reflect that.
Also add installation instructions for distributions other than
CentOS/Fedora while we're at it.
Daan De Meyer [Wed, 30 Oct 2024 09:43:58 +0000 (10:43 +0100)]
docs: Update instructions for building distribution packages in HACKING.md
When building distribution packages without building an image, the
distribution packages will only be located in mkosi.builddir/ now and
not in mkosi.output/, so update the documentation to reflect that.
Also add installation instructions for distributions other than CentOS/Fedora
while we're at it.
Daan De Meyer [Wed, 30 Oct 2024 10:16:13 +0000 (11:16 +0100)]
docs: Align some comments in HACKING.md
hugo303 [Fri, 25 Oct 2024 10:15:02 +0000 (12:15 +0200)]
analyze: Add times in seconds for Activating and Activated in tooltip
Print the times in seconds in the tooltip to remove the need to count
and trying to follow the lines in the svg diagram in order to see at
what times these events happen.
Yu Watanabe [Tue, 29 Oct 2024 17:51:18 +0000 (02:51 +0900)]
network/tunnel: allow Local=/Remote=any for all tunnel types
It seems there is no restriction for local and remote addresses.
Fixes #34930.
Yu Watanabe [Mon, 28 Oct 2024 14:32:50 +0000 (23:32 +0900)]
sd-netlink,network: do not set NLM_F_CREATE and NLM_F_EXCL flags if an interface index is specified
If an ifindex is specified, we are modifying the existing interface.
Hence, these flags should not be set. Otherwise, the request will be
refused with -EEXIST.
Daan De Meyer [Wed, 30 Oct 2024 09:27:24 +0000 (10:27 +0100)]
network: skip processing netdev if it is already detached (#34935)
split-out of #34909.
Daan De Meyer [Wed, 30 Oct 2024 09:26:48 +0000 (10:26 +0100)]
pretty-print: add format-string version of draw_progress_bar() (#34939)
We often format the prefix string via asprintf() before, let's hence add
a helper for that.
Lennart Poettering [Wed, 30 Oct 2024 08:13:48 +0000 (09:13 +0100)]
update NEWS
Lennart Poettering [Wed, 30 Oct 2024 08:06:33 +0000 (09:06 +0100)]
update TODO
Lennart Poettering [Wed, 30 Oct 2024 07:45:25 +0000 (08:45 +0100)]
core/service: support sd_notify() MAINPIDFD=1 and MAINPIDFDID= (#34932)
Lennart Poettering [Wed, 30 Oct 2024 07:39:15 +0000 (08:39 +0100)]
network: add missing else in dhcp_lease_load (#34927)
Fixes:
3fd6708cde0f (network: Serialize DNR servers)
---
Fixes: #34926
Ronan Pigott [Tue, 29 Oct 2024 04:26:51 +0000 (21:26 -0700)]
network: Restrict the valid charset of DNR names
Not all possible DNS names will survive serialization. Restrict the set
of valid dns names to LDH encoded names.
Fixes:
25c33e350042 (network: parse RFC9463 DHCPv4 DNR option, 2024-01-16)
Fixes:
a07e83cc58f6 (network: Parse RFC9463 DHCPv6 DNR option, 2024-01-17)
Fixes:
0c90d1d2f243 (ndisc: Parse RFC9463 encrypted DNS (DNR) option, 2024-01-19)
Lennart Poettering [Tue, 29 Oct 2024 20:32:28 +0000 (21:32 +0100)]
pretty-print: add format-string version of draw_progress_bar()
We often format the prefix string via asprintf() before, let's hence add
a helper for that.
Lennart Poettering [Tue, 29 Oct 2024 20:14:54 +0000 (21:14 +0100)]
pretty-print: rename draw_progress_bar_impl()→draw_progress_bar_unbuffered()
Lennart Poettering [Tue, 29 Oct 2024 20:13:51 +0000 (21:13 +0100)]
busctl: minor tweak to help text for --limit-messages=
Daan De Meyer [Fri, 25 Oct 2024 15:03:37 +0000 (17:03 +0200)]
import: Draw progress bars
Currently every progress update results in a new progress message
which is extremely verbose. Instead, let's use the progress bar infra
to draw a proper progress bar similar to what we do in systemd-repart
now.
Lennart Poettering [Tue, 29 Oct 2024 20:00:15 +0000 (21:00 +0100)]
progress-bar: issue Windows Terminal progress indicating ANSI sequences (#34929)
This generates the Windows Terminal OSC sequences indicating progress.
This let's the terminal know that we are doing a slow operation, and how
we are progressing.
Windows Terminal uses this in two ways: it shows a circle in the tab
that completes, and it highlights the progress in the task bar.
I found no Linux terminal that currently supports it, but also none that
didn't like it. Thankfully most terminals correctly ignore unrecognized
OSC sequences.
I think we should just merge this, and see if this trips up too many
people, but I have reason to believe this shouldn't be too bad.
And yes, I do work from Windows Terminal sometimes, ssh into my Linux
build systems, and it is really cute seeing the progress animation
there.
Luca Boccassi [Tue, 29 Oct 2024 18:46:14 +0000 (18:46 +0000)]
sysusers: optionally create fully locked accounts (#34876)
Let's ramp up security for system user accounts, at least where
possible, by creating them fully locked (instead of just with an invalid
password). This matters when taking non-password (i.e. SSH) logins into
account.
Fixes: #13522
Yu Watanabe [Mon, 28 Oct 2024 15:35:27 +0000 (00:35 +0900)]
network/tunnel: reuse existing 6rd SIT tunnel
The 6rd SIT tunnel configuration can be updated without recreating the
interface. Let's reuse existing tunnel.
Yu Watanabe [Mon, 28 Oct 2024 15:28:30 +0000 (00:28 +0900)]
network/tunnel: merge dhcp4_pd_create_6rd_tunnel_message() into dhcp4_pd_create_6rd_tunnel()
No functional change, just refactoring and preparation for later
commits.