Zbigniew Jędrzejewski-Szmek [Wed, 30 Jun 2021 12:46:27 +0000 (14:46 +0200)]
Merge pull request #20021 from wat-ze-hex/socket-bind-ip-proto-2021-06-23
core/bpf: support IP protocol in SocketBind{Allow|Deny}=
laineantti [Tue, 29 Jun 2021 20:51:58 +0000 (23:51 +0300)]
hwdb: add accel matrix for One-netbook OneMix 2s
Albert Brox [Wed, 30 Jun 2021 09:54:15 +0000 (05:54 -0400)]
Improve tmpfiles unsafe transition log message (#20048)
Julia Kartseva [Thu, 24 Jun 2021 19:16:51 +0000 (12:16 -0700)]
man: document ip proto in SocketBind{Allow|Deny}=
Julia Kartseva [Wed, 23 Jun 2021 23:37:53 +0000 (16:37 -0700)]
dbus: extend SocketBind{Allow|Deny}= with ip proto
Julia Kartseva [Tue, 15 Jun 2021 02:14:14 +0000 (19:14 -0700)]
fragment: add ip protocol to SocketBind{Allow|Deny}=
Add ip protocol token to SocketBind{Allow|Deny}= property parser.
Use parse_socket_bind_item helper.
Replace int32_t with int in cgroup item for socket-bind as it was
requested in [0].
Update tests.
[0] https://github.com/systemd/systemd/pull/19942#discussion_r652150024
Julia Kartseva [Tue, 29 Jun 2021 23:04:32 +0000 (16:04 -0700)]
shared: add parser for SocketBind{Allow|Deny}=
Parse address family, ip protocol and ports, any of them can be
optional. If neither is specified, a special value 'any' is expected.
Helper is placed in shared to be reused in both fragment and dbus.
Add unit tests with valid and invalid examples.
Julia Kartseva [Sat, 26 Jun 2021 00:14:40 +0000 (17:14 -0700)]
shared: add ip_protocol_{from|to}_tcp_udp helpers
Thin wrappers of ip_protocol_{from|to}_name targeting IPPROTO_TCP and
IPPROTO_UDP only.
Used to parse IP protocol configuration restricted only to TCP and UDP,
e.g. in SocketBind{Allow|Deny}= unit property.
These helpers are inspired by af_{from|to}_ipv4_ipv6 and potentially
extendable with other IP protocols if there is a use-case to expose
them.
Julia Kartseva [Sat, 12 Jun 2021 01:27:27 +0000 (18:27 -0700)]
bpf: add ip proto matching to socket-bind prog
Lookup ip protocol in a socket address to allow or deny binding a socket
to the address.
Matching rule is extended with 'protocol' field. If its value is 0
(IPPROTO_IP) ip protocol comparison is omitted and matching is passed to
the next token which is ip ports.
Documentation is updated.
Dan Streetman [Tue, 29 Jun 2021 10:29:53 +0000 (06:29 -0400)]
Add systemd-resolve backwards compatibility section to resolvectl docs
Luca Boccassi [Tue, 29 Jun 2021 11:52:38 +0000 (12:52 +0100)]
Merge pull request #20047 from keszybz/doc-fix
Update dnssec-trust-anchors comment syntax description and put rrs in index
Raul Tambre [Tue, 29 Jun 2021 08:49:56 +0000 (11:49 +0300)]
resolved: Fix link to resolv.conf manpage
Seems to typically located in volume 5 these days on Linux systems that systemd targets.
Alexander Tsoy [Mon, 28 Jun 2021 20:00:11 +0000 (23:00 +0300)]
resolved: do not try to copy empty NSEC types bitmaps
dns_resource_record_copy() assumes that NSEC types bitmap is non-empty
which results in a null pointer dereference inside bitmap_copy() in some
cases. Fix this by calling bitmap_copy() conditionally.
Zbigniew Jędrzejewski-Szmek [Sun, 27 Jun 2021 14:33:12 +0000 (16:33 +0200)]
man: add "DNS resource record types" section
Zbigniew Jędrzejewski-Szmek [Sun, 27 Jun 2021 14:20:38 +0000 (16:20 +0200)]
man: add markup to dns resource record labels
Franck Bui [Mon, 28 Jun 2021 13:43:29 +0000 (15:43 +0200)]
Merge pull request #20039 from yuwata/sd-device-get-sysattr-value-embedded-nul
sd-device: allow to read sysattr which contains embedded NUL
Raul Tambre [Mon, 28 Jun 2021 09:44:22 +0000 (12:44 +0300)]
man: Don't link to a manpage that's within our documentation
For example on systemd.network this results in the link taking one to another site with the manpage instead of the document that's on the same site.
Luca Boccassi [Mon, 28 Jun 2021 09:35:34 +0000 (10:35 +0100)]
Merge pull request #20043 from yuwata/sd-netlink-cleanups
sd-netlink: several trivial cleanups
Zbigniew Jędrzejewski-Szmek [Sun, 27 Jun 2021 13:49:28 +0000 (15:49 +0200)]
man/dnssec-trust-anchors: update comment syntax description
Let's just use the same phrase as in systemd.syntax(7).
Fixes #20045.
dgcampea [Sat, 26 Jun 2021 12:23:20 +0000 (13:23 +0100)]
man: fix incorrect description regarding DynamicUser= and StateDirectory=
Luca Boccassi [Sat, 26 Jun 2021 22:03:36 +0000 (23:03 +0100)]
Merge pull request #20042 from yuwata/udev-rule-fix-cid-
1457766
udev: fix an issue and add a testcase
Yu Watanabe [Sat, 26 Jun 2021 18:31:52 +0000 (03:31 +0900)]
sd-netlink: use usec_sub_unsigned() and USEC_INFINITY
And shorten code more.
Yu Watanabe [Sat, 26 Jun 2021 18:28:16 +0000 (03:28 +0900)]
sd-netlink: shorten code a bit
This also reduces scope of variables, fixes and reduces indentations,
drop unnecessary initializations.
Yu Watanabe [Sat, 26 Jun 2021 18:58:30 +0000 (03:58 +0900)]
sd-netlink: do not call lookup_nlmsg_type() for known generic netlink family
Yu Watanabe [Sat, 26 Jun 2021 18:00:42 +0000 (03:00 +0900)]
sd-netlink: rename variables and functions for generic netlink
`id` or `type` is ambiguous. Let's use `nlmsg_type`. Also, use `ret` for
function arguments to store results.
This also adds several assertions.
Yu Watanabe [Sat, 26 Jun 2021 17:30:52 +0000 (02:30 +0900)]
sd-netlink: do not trigger assertion by calling socket_broadcast_group_unref() with an arbitrary group number
socket_broadcast_group_unref() is only called in netlink_slot_disconnect(),
so the assertion should not be triggered as the match slot was
successfully created.
But, we usually design `_ref/unref()` functions as they can be called
for any inputs. So, let's also follow the design rule here.
Yu Watanabe [Sat, 26 Jun 2021 17:28:14 +0000 (02:28 +0900)]
sd-netlink: shorten code a bit
This also fixes comments, a log message, and coding style nits.
Yu Watanabe [Sat, 26 Jun 2021 15:02:24 +0000 (00:02 +0900)]
udev-test: add a testcase for string_escape=replace
Yu Watanabe [Sat, 26 Jun 2021 14:52:33 +0000 (23:52 +0900)]
udev: reduce scope of variables
Then, hopefully, we can easily find the bug fixed by the previous
commit.
Yu Watanabe [Sat, 26 Jun 2021 14:34:59 +0000 (23:34 +0900)]
udev: fix use of invalid pointer
Fixes a bug introduced by
ea0f4578a7e90f5227817058bfb11bb91dbb1431.
Fixes CID#
1457766.
Yu Watanabe [Fri, 25 Jun 2021 19:33:13 +0000 (04:33 +0900)]
core/namespace: drop unnecessary initializations
Yu Watanabe [Fri, 25 Jun 2021 18:01:26 +0000 (03:01 +0900)]
udev: update log messages
Suggested at https://github.com/systemd/systemd/pull/19312#discussion_r658556983.
Yu Watanabe [Sat, 26 Jun 2021 01:40:07 +0000 (10:40 +0900)]
sd-device: allow to read sysattr which contains embedded NUL
This effectively reverts the commit
2a394d0bf2f0afd8b9ed5faeb33f23459e3c6504.
But drop trailing '\r' of the read value, as sd_device_set_sysattr_value() drops it.
Fixes #20025.
Yu Watanabe [Fri, 25 Jun 2021 16:06:38 +0000 (01:06 +0900)]
networkctl: drop unused member in struct VxLanInfo
Zbigniew Jędrzejewski-Szmek [Fri, 25 Jun 2021 14:17:20 +0000 (16:17 +0200)]
Merge pull request #20028 from keszybz/hwdb-update-v249
Hwdb update for v249-rc2
Yu Watanabe [Fri, 25 Jun 2021 12:56:53 +0000 (21:56 +0900)]
man: document about NAMING_REPLACE_STRICTLY network interface naming policy
Follow-up for
b4d885f0e861b2d1bb5a62311c61a96f5222b026 and
068b0f77289411ef9f92f5d701759e98145a06e4.
Luca Boccassi [Fri, 25 Jun 2021 13:04:34 +0000 (14:04 +0100)]
NEWS: mention MS_NOSUID for namespaced services by default
Zbigniew Jędrzejewski-Szmek [Fri, 25 Jun 2021 12:25:28 +0000 (14:25 +0200)]
NEWS: update contributor list for v249-rc2
Zbigniew Jędrzejewski-Szmek [Fri, 25 Jun 2021 12:19:26 +0000 (14:19 +0200)]
NEWS: update with net-naming scheme changes and ConditionOSRelease
Zbigniew Jędrzejewski-Szmek [Fri, 25 Jun 2021 12:22:52 +0000 (14:22 +0200)]
hwdb: update autosuspend
Zbigniew Jędrzejewski-Szmek [Fri, 25 Jun 2021 12:22:14 +0000 (14:22 +0200)]
hwdb: update
Zbigniew Jędrzejewski-Szmek [Wed, 23 Jun 2021 16:10:57 +0000 (18:10 +0200)]
dbus-socket: fix check of Listen* arguments
We checked the wrong field, which was always NULL here, so we would always
reject the assignment. We would also print the wrong string in the error
message:
$ sudo systemd-run --socket-property ListenFIFO=/tmp/fifo3 cat
Failed to start transient socket unit: Invalid socket path: FIFO
Zbigniew Jędrzejewski-Szmek [Fri, 25 Jun 2021 12:21:05 +0000 (14:21 +0200)]
Merge pull request #20023 from yuwata/re-enable-nosuid-mount-flag
core: reenable nosuid mount flag when NoNewPrivileges=yes
David Tardon [Fri, 25 Jun 2021 08:42:53 +0000 (10:42 +0200)]
remove a left-over break
By the "same logic as above...", we want to continue to fallback here,
but the break prohibits that.
This is a follow-up for
ee1aa61c4710ae567a2b844e0f0bb8cb0456ab8c .
Luca Boccassi [Tue, 22 Jun 2021 21:59:40 +0000 (22:59 +0100)]
ExtensionImages: log explicit error when extension-release metadata does not match
When an ExtensionImages= extension-release metadata does not match, the
log messages (unless debug level is set) are pretty much incomprehensible:
systemd[463]: run-u11.service: Failed to set up mount namespacing: /run/systemd/unit-extensions/0: Stale file handle
systemd[463]: run-u11.service: Failed at step NAMESPACE spawning /usr/bin/echo: Stale file handle
Add an explicit log message if we get ESTALE from the dissect code, to
make it clear what's happening without needing to enable debugging:
systemd[463]: Failed to mount image /tmp/app3.raw, extension-release metadata does not match the lower layer's: ID=debian VERSION_ID=11 SYSEXT_LEVEL=11
Yu Watanabe [Fri, 25 Jun 2021 06:04:12 +0000 (15:04 +0900)]
udev/scsi: use the scsi device type number directly
Previously, the value is once stringified, and later again parsed,
that is completely redundant.
Follow-up for
1001167ca5e4cfdc6230562e4fb9029e5f624d53.
Replaces #20013.
Mike Crowe [Thu, 24 Jun 2021 14:25:58 +0000 (15:25 +0100)]
resolvectl: Only strip ifname suffixes when being resolvconf
Only treat interface names containing dots specially when resolvectl is
pretending to be resolvconf to fix
https://github.com/systemd/systemd/issues/20014 .
Move the special suffix-stripping behaviour of ifname_mangle out to the
new ifname_resolvconf_mangle to be called from resolvconf only.
Zbigniew Jędrzejewski-Szmek [Fri, 25 Jun 2021 08:11:04 +0000 (10:11 +0200)]
Merge pull request #19312 from yuwata/udev-escape-slash-nvme
udev: make OPTIONS="string_escape=replace" take effect on ENV{key}= assiginment
Zbigniew Jędrzejewski-Szmek [Fri, 25 Jun 2021 07:26:25 +0000 (09:26 +0200)]
Merge pull request #19883 from ddstreet/activation-policy-down-required-for-online-no
Activation policy down required for online no
Zbigniew Jędrzejewski-Szmek [Fri, 25 Jun 2021 07:22:50 +0000 (09:22 +0200)]
Merge pull request #19941 from bluca/condition_os_release
core: add ConditionOSRelease= directive
Yu Watanabe [Fri, 25 Jun 2021 06:30:13 +0000 (15:30 +0900)]
core: do not set nosuid mount option when SELinux is enabled
The mount option has special meaning when SELinux is enabled. To make
NoNewPrivileges=yes not break SELinux enabled systems, let's not set the
mount flag on such systems.
Yu Watanabe [Fri, 25 Jun 2021 06:16:34 +0000 (15:16 +0900)]
Revert "Revert "Mount all fs nosuid when NoNewPrivileges=yes""
This reverts commit
1753d3021564671fba3d3196a84da657d15fb632.
Let's re-enable that feature now. As reported when the original commit
was merged, this causes some trouble on SELinux enabled systems. So,
in the subsequent commit, the feature will be disabled when SELinux is enabled.
But, anyway, this commit just re-enable that feature unconditionally.
Lennart Poettering [Thu, 24 Jun 2021 16:06:02 +0000 (18:06 +0200)]
tree-wide: make specifier expansion --root= aware
This fixes repart's, systemctl's, sysusers' and tmpfiles' specifier
expansion to honour the root dir specified with --root=. This is
relevant for specifiers such as %m, %o, … which are directly sourced
from files on disk.
This doesn't try to be overly smart: specifiers referring to runtime
concepts (i.e. boot ID, architecture, hostname) rather than files on the
medium are left as is. There's certainly a point to be made that they
should fail in case --root= is specified, but I am not entirely convinced
about that, and it's certainly something we can look into later if
there's reason to.
I wondered for a while how to hook this up best, but given that quite a
large number of specifiers resolve to data from files on disks, and most
of our tools needs this, I ultimately decided to make the root dir a
first class parameter to specifier_printf().
Replaces: #16187
Fixes: #16183
Andrea Pappacoda [Thu, 24 Jun 2021 15:30:51 +0000 (17:30 +0200)]
docs: update autofs Kconfig name
Juergen Hoetzel [Thu, 24 Jun 2021 17:42:57 +0000 (19:42 +0200)]
docs: EFI separator needs to be backslash-escaped in markdown
Frantisek Sumsal [Thu, 24 Jun 2021 10:13:52 +0000 (12:13 +0200)]
test: correctly mask supporting services in tests, take #2
Due to a little misunderstanding the last patch doesn't work as
expected, since test_create_image() is called only for the first image
(usually TEST-01-BASIC), and all subsequent images are then (possibly)
modified with test_append_files().
Follow-up to
179ca4d2b1b5579014773a128462475f99b7a91b.
Lennart Poettering [Thu, 24 Jun 2021 13:33:09 +0000 (15:33 +0200)]
Merge pull request #20001 from keszybz/test-path-simplify-less
Do not call path_simplify() when not needed
Lennart Poettering [Thu, 24 Jun 2021 11:13:39 +0000 (13:13 +0200)]
sd-journal: add missing bracket in journal verify log message
Luca Boccassi [Thu, 24 Jun 2021 13:18:58 +0000 (14:18 +0100)]
Merge pull request #20000 from dtardon/replace-strtoul
replace strtoul by safe_ato*
David Tardon [Wed, 23 Jun 2021 15:15:47 +0000 (17:15 +0200)]
udev-builtin-keyboard: drop unnecessary {}
David Tardon [Tue, 22 Jun 2021 14:41:23 +0000 (16:41 +0200)]
udev: replace strtoul by safe_ato*
Zbigniew Jędrzejewski-Szmek [Thu, 24 Jun 2021 13:11:06 +0000 (15:11 +0200)]
Merge pull request #20004 from yuwata/readdir-ensure-type
dirent-util: introduce readdir_ensure_type()
Lennart Poettering [Tue, 22 Jun 2021 21:15:46 +0000 (23:15 +0200)]
openssl-util: include the headers the file actually uses definitions from
Zbigniew Jędrzejewski-Szmek [Thu, 24 Jun 2021 13:07:29 +0000 (15:07 +0200)]
Merge pull request #19997 from keszybz/selinux-opt
Drop libselinux dependency from libsystemd
Luca Boccassi [Mon, 22 Feb 2021 18:20:37 +0000 (18:20 +0000)]
core: add ConditionOSRelease= directive
Luca Boccassi [Thu, 17 Jun 2021 12:12:57 +0000 (13:12 +0100)]
basic/extract-word: add EXTRACT_RETAIN_SEPARATORS flag
Makes the helpers avoid skipping over the separator(s) in the
input string
Dan Streetman [Tue, 8 Jun 2021 21:13:27 +0000 (17:13 -0400)]
test: add test to verify RequiredForOnline= setting with ActivationPolicy=
Add test to verify that the RequiredForOnline= value is correct based on
the configuration of ActivationPolicy=
Dan Streetman [Wed, 9 Jun 2021 11:57:01 +0000 (07:57 -0400)]
networkctl: add field 'Required For Online'
Dan Streetman [Tue, 8 Jun 2021 16:01:31 +0000 (12:01 -0400)]
network: default RequiredForOnline=false if ActivactionPolicy= not set to up
If ActivationPolicy= is set to down, always-down, or manual, then any
matching link will delay boot (due to delaying network-online.target).
If RequiredForOnline= wasn't explicitly set, then default it to false
if ActivationPolicy= is down or manual. If ActivationPolicy=always-down,
then force RequiredForOnline=no.
Lennart Poettering [Wed, 23 Jun 2021 11:45:31 +0000 (13:45 +0200)]
ask-password: add "-n" switch for disabling trailing newline
This is similar to the "-n" switch of the "echo" command.
Luca Boccassi [Thu, 24 Jun 2021 09:01:10 +0000 (10:01 +0100)]
Merge pull request #20002 from yuwata/sd-dhcp-client-ignore-forcerenew
sd-dhcp-client: ignore FORCERENEW
Zbigniew Jędrzejewski-Szmek [Wed, 23 Jun 2021 15:32:15 +0000 (17:32 +0200)]
core: avoid calling path_simplify() unnecessarilly for u.requires_mounts_for keys
We would always call path_simplify() before doing a lookup, which requires the
path key to be duplicated first. But the hashmap lookup doesn't require this…
So let's opportunistically skip the allocation if the key is already present.
Inspired by https://github.com/systemd/systemd/pull/19973.
Zbigniew Jędrzejewski-Szmek [Wed, 23 Jun 2021 14:22:53 +0000 (16:22 +0200)]
test-hash-funcs: add new file to test that path set ignores dot components
Zbigniew Jędrzejewski-Szmek [Tue, 22 Jun 2021 14:17:01 +0000 (16:17 +0200)]
gitignore: add jekyll cache directory
Follow-up for
2d4efd1dba568e59b149fbb82b51201951e8e178.
Zbigniew Jędrzejewski-Szmek [Tue, 22 Jun 2021 08:32:30 +0000 (10:32 +0200)]
shared/selinux-util: rework switching of the getenforce() function
The approach with function pointer was neat, but it gets in the way
when we want to resolve the symbol dynamically: static initialization
is not possible. It also makes the code more complicated than necessary.
In this case, a simple boolean is sufficient.
Zbigniew Jędrzejewski-Szmek [Tue, 22 Jun 2021 07:26:09 +0000 (09:26 +0200)]
shared/dlfcn-util: add sentinel helper or for dlsym_many_or_warn()
I didn't do this before to avoid churn in all the users.
Zbigniew Jędrzejewski-Szmek [Tue, 22 Jun 2021 07:25:12 +0000 (09:25 +0200)]
shared/tpm2-util: simplify and convert to the new helper
The function would return 0 or 3. I don't think the return code was
used for anything, so let's avoid the explicit calculation and return
0 or 1.
Zbigniew Jędrzejewski-Szmek [Tue, 22 Jun 2021 07:24:02 +0000 (09:24 +0200)]
various: convert to the new dlopen_or_warn() helper
Zbigniew Jędrzejewski-Szmek [Tue, 22 Jun 2021 06:48:41 +0000 (08:48 +0200)]
dlfcn-util: invert function naming and add helper that does the whole job
We warn when the operation fails, not when it succeeds. Hence this should be
"<do>_or_<handle failure>", not "<do>_and_<handle failure>". We *could* use
whatever convention we want, but rust and perl are rather consistent in using
the logical convention. We don't care about perl that much, but having a naming
convention inverted wrt. rust would be rather confusing.
Also, pretty much every implementation does similar steps, so add a nice
wrapper which combines opening of the library and loading of the symbols.
Also add missing sentinel attribute in dlopen_or_warn().
Zbigniew Jędrzejewski-Szmek [Mon, 21 Jun 2021 21:31:52 +0000 (23:31 +0200)]
meson: drop libseccomp and libselinux from libbasic linkage
This means libsystemd.so is without them now. This is important
because countless programs link to libsystemd.so, and do not need
to pull in selinux now. And libselinux.so pulls in libpcre2, so
we trim a nice dependency tree.
I'm not sure why libseccomp was listed there. No code seems to
refer to it.
$ diff -u <(ldd ../systemd/build/libsystemd.so|sed 's/0x.*/0x…/') <(ldd build/libsystemd.so|sed 's/0x.*/0x…/')
@@ -4,11 +4,9 @@
libzstd.so.1 => /lib64/libzstd.so.1 (0x…
liblz4.so.1 => /lib64/liblz4.so.1 (0x…
libcap.so.2 => /lib64/libcap.so.2 (0x…
- libselinux.so.1 => /lib64/libselinux.so.1 (0x…
libgcrypt.so.20 => /lib64/libgcrypt.so.20 (0x…
libpthread.so.0 => /lib64/libpthread.so.0 (0x…
libc.so.6 => /lib64/libc.so.6 (0x…
/lib64/ld-linux-x86-64.so.2 (0x…
- libpcre2-8.so.0 => /lib64/libpcre2-8.so.0 (0x…
libdl.so.2 => /lib64/libdl.so.2 (0x…
libgpg-error.so.0 => /lib64/libgpg-error.so.0 (0x…
$ diff -u <(ldd ../systemd/build/libudev.so|sed 's/0x.*/0x…/') <(ldd build/libudev.so|sed 's/0x.*/0x…/')
@@ -1,8 +1,5 @@
linux-vdso.so.1 (0x…
librt.so.1 => /lib64/librt.so.1 (0x…
- libselinux.so.1 => /lib64/libselinux.so.1 (0x…
libpthread.so.0 => /lib64/libpthread.so.0 (0x…
libc.so.6 => /lib64/libc.so.6 (0x…
/lib64/ld-linux-x86-64.so.2 (0x…
- libpcre2-8.so.0 => /lib64/libpcre2-8.so.0 (0x…
- libdl.so.2 => /lib64/libdl.so.2 (0x…
Zbigniew Jędrzejewski-Szmek [Mon, 21 Jun 2021 21:13:10 +0000 (23:13 +0200)]
basic,shared: move a bunch of files to src/shared/
The goal is to move everything that requires selinux or smack
away from src/basic/. This means that src/basic/label.[ch] must move,
which implies btrfs-util.[ch], copy.[ch], and a bunch of other files
which form a cluster of internal use.
This is just moving text around, so there should be no functional difference.
test-blockdev-util is new, because path_is_encrypted() is moved to
blockdev-util.c, and so far we didn't have any tests for code there.
Zbigniew Jędrzejewski-Szmek [Mon, 21 Jun 2021 21:28:46 +0000 (23:28 +0200)]
basic,shared: move dlopen helpers to shared/
This was added in
88d775b734644f26fb490836769c2bc275498fde,
with the apparent intent of using in shared/ and the rest of our code.
It doesn't matter much for our code, since libdl is part of glibc anyway,
but moving it removes one linkage from libsystemd. (libshared was already
linking to libdl explicitly).
Zbigniew Jędrzejewski-Szmek [Mon, 21 Jun 2021 20:54:12 +0000 (22:54 +0200)]
basic: move acquire_data_fd() and fd_duplicate_data_fd() to new data-fd-util.c
fd_duplicate_data_fd() is renamed to copy_data_fd(). This makes
the two functions have nicely similar names.
Now fd-util.[ch] is again about low-level file descriptor manipulations.
copy_data_fd() is a complex function that internally wraps the other
functions in copy.c. I want to move copy.c and the whole cluster of
related code from basic/ to shared/ later on, and this is a preparatory
step for that.
Zbigniew Jędrzejewski-Szmek [Mon, 21 Jun 2021 20:10:37 +0000 (22:10 +0200)]
Move hwdb creation code to src/shared/
hwdb_update() is the main entry point, and it is called from
"udevadm hwdb" and "systemd-hwdb", so it belongs in shared/.
Zbigniew Jędrzejewski-Szmek [Mon, 21 Jun 2021 19:27:21 +0000 (21:27 +0200)]
basic,shared: move quota-util.[ch] to src/shared/
No need for this to in basic/.
Zbigniew Jędrzejewski-Szmek [Mon, 21 Jun 2021 18:24:00 +0000 (20:24 +0200)]
basic: drop one btrfs-related function and move another
This will become useful later, it is the first step to moving btrfs-util.[ch]
out of src/basic/.
Yu Watanabe [Wed, 23 Jun 2021 16:22:07 +0000 (01:22 +0900)]
sd-dhcp-client: tentatively ignore FORCERENEW command
This makes DHCP client ignore FORCERENEW requests, as unauthenticated
FORCERENEW requests causes a security issue (TALOS-2020-1142, CVE-2020-13529).
Let's re-enable this after RFC3118 (Authentication for DHCP Messages)
and/or RFC6704 (Forcerenew Nonce Authentication) are implemented.
Fixes #16774.
Yu Watanabe [Wed, 23 Jun 2021 16:14:12 +0000 (01:14 +0900)]
sd-dhcp-client: logs when dhcp client unexpectedly gains a new lease
Previously, such situation is handled silently.
Yu Watanabe [Wed, 23 Jun 2021 15:51:52 +0000 (00:51 +0900)]
sd-dhcp-client: shorten code a bit
Yu Watanabe [Wed, 23 Jun 2021 15:48:23 +0000 (00:48 +0900)]
sd-dhcp-client: check error earlier and reduce indentation
Anders Wenhaug [Wed, 23 Jun 2021 21:39:56 +0000 (23:39 +0200)]
docs: add coding style example
Add example of how to structure else-blocks following a multiline block.
Yu Watanabe [Wed, 23 Jun 2021 19:29:40 +0000 (04:29 +0900)]
dirent-util: use readdir_ensure_type() in readdir_no_dot() and FOREACH_DIRENT()
Yu Watanabe [Wed, 23 Jun 2021 19:00:42 +0000 (04:00 +0900)]
dirent-util: introduce readdir_ensure_type()
Zbigniew Jędrzejewski-Szmek [Wed, 23 Jun 2021 14:05:47 +0000 (16:05 +0200)]
test-path-util: check that dot components are irrelevant for path comparisons
Zbigniew Jędrzejewski-Szmek [Wed, 2 Jun 2021 09:27:55 +0000 (11:27 +0200)]
TODO: elide initrd-parse-etc.service if possible
Zbigniew Jędrzejewski-Szmek [Tue, 8 Jun 2021 07:06:11 +0000 (09:06 +0200)]
man/50-xdg-data-dirs: add quotes as suggested by shellcheck
Zbigniew Jędrzejewski-Szmek [Mon, 21 Jun 2021 17:44:35 +0000 (19:44 +0200)]
basic,shared: move make_mount_point_inode_*() to shared/
Those pull in selinux for labelling, and we should avoid selinux in basic/.
Zbigniew Jędrzejewski-Szmek [Mon, 21 Jun 2021 20:56:58 +0000 (22:56 +0200)]
meson: sort file list
At least emacs thinks this is the right way.
Yu Watanabe [Wed, 14 Apr 2021 06:50:36 +0000 (15:50 +0900)]
udev: remove unsafe characters from ID_SERIAL for nvme
Fixes #19309.
Yu Watanabe [Wed, 23 Jun 2021 07:58:20 +0000 (16:58 +0900)]
man: update description of "string_escape=" udev option