Zbigniew Jędrzejewski-Szmek [Thu, 2 Jul 2020 14:35:52 +0000 (16:35 +0200)]
update-utmp: do not fail on EROFS
Right now systemd-update-utmp.service would fail on read-only /var because
it was not able to write the wtmp record. But it still writes the utmp
record just fine, so runtime information is OK. I don't think we need to
make too much fuss about not being able to save wtmp info.
Zbigniew Jędrzejewski-Szmek [Thu, 2 Jul 2020 14:24:04 +0000 (16:24 +0200)]
Define _cleanup_ helper for setutxent()+endutxent()
Zbigniew Jędrzejewski-Szmek [Thu, 2 Jul 2020 12:56:34 +0000 (14:56 +0200)]
various daemons: emit Stopping... notification before destructing the manager object
This is mostly cosmetic, but let's reorder the destructors so that
we do the final sd_notify() call before we run the destructor for
the manager object.
Zbigniew Jędrzejewski-Szmek [Thu, 2 Jul 2020 12:50:29 +0000 (14:50 +0200)]
initctl: use _cleanup_ and run()
Zbigniew Jędrzejewski-Szmek [Thu, 2 Jul 2020 12:25:06 +0000 (14:25 +0200)]
initctl,update-utmp: define iterator variable in loop
Zbigniew Jędrzejewski-Szmek [Thu, 2 Jul 2020 11:44:43 +0000 (13:44 +0200)]
update-utmp,initctl: drop ppid check
Such checks make debugging harder but serve no useful purpose otherwise.
We got rid of all the checks for root, let's kill those too.
Yu Watanabe [Wed, 1 Jul 2020 06:05:14 +0000 (15:05 +0900)]
doc: add recentry introduced transient settings
Also sort entries for service settings.
Yu Watanabe [Wed, 1 Jul 2020 05:15:40 +0000 (14:15 +0900)]
Merge pull request #16303 from poettering/dbus-util-split
shared: split src/shared/bus-util.c into multiple files
Marc Kleine-Budde [Sun, 28 Jun 2020 19:43:34 +0000 (21:43 +0200)]
udev: spi: include chip select number in ID_PATH
All devices behind a SPI controller have the same udev ID_PATH property.
This is a problem for predicable network names for CAN controllers.
CAN controllers, in contrast to Ethernet controllers, don't have a MAC
Address, so there's no way to tell two CAN controllers on the same SPI
host controller apart:
$ udevadm info /sys/class/net/can0
P: /devices/platform/soc/
fe204000.spi/spi_master/spi0/spi0.1/net/can0
L: 0
E: DEVPATH=/devices/platform/soc/
fe204000.spi/spi_master/spi0/spi0.1/net/can0
E: INTERFACE=can0
E: IFINDEX=3
E: SUBSYSTEM=net
E: USEC_INITIALIZED=
11187199
E: ID_PATH=platform-
fe204000.spi
E: ID_PATH_TAG=platform-fe204000_spi
E: SYSTEMD_ALIAS=/sys/subsystem/net/devices/can0
E: TAGS=:systemd:
$ udevadm info /sys/class/net/can1
P: /devices/platform/soc/
fe204000.spi/spi_master/spi0/spi0.0/net/can1
L: 0
E: DEVPATH=/devices/platform/soc/
fe204000.spi/spi_master/spi0/spi0.0/net/can1
E: INTERFACE=can1
E: IFINDEX=4
E: SUBSYSTEM=net
E: USEC_INITIALIZED=
11192211
E: ID_PATH=platform-
fe204000.spi
E: ID_PATH_TAG=platform-fe204000_spi
E: SYSTEMD_ALIAS=/sys/subsystem/net/devices/can1
E: TAGS=:systemd:
With this the chip select number is added to the ID_PATH, to make
predictable network names possible.
$ sudo udevadm info /sys/class/net/can0
P: /devices/platform/soc/
fe204000.spi/spi_master/spi0/spi0.1/net/can0
L: 0
E: DEVPATH=/devices/platform/soc/
fe204000.spi/spi_master/spi0/spi0.1/net/can0
E: INTERFACE=can0
E: IFINDEX=3
E: SUBSYSTEM=net
E: USEC_INITIALIZED=
11187199
E: ID_PATH=platform-
fe204000.spi-cs-1
E: ID_PATH_TAG=platform-fe204000_spi-cs-1
E: SYSTEMD_ALIAS=/sys/subsystem/net/devices/can0
E: TAGS=:systemd:
$ sudo udevadm info /sys/class/net/can1
P: /devices/platform/soc/
fe204000.spi/spi_master/spi0/spi0.0/net/can1
L: 0
E: DEVPATH=/devices/platform/soc/
fe204000.spi/spi_master/spi0/spi0.0/net/can1
E: INTERFACE=can1
E: IFINDEX=4
E: SUBSYSTEM=net
E: USEC_INITIALIZED=
11192211
E: ID_PATH=platform-
fe204000.spi-cs-0
E: ID_PATH_TAG=platform-fe204000_spi-cs-0
E: SYSTEMD_ALIAS=/sys/subsystem/net/devices/can1
E: TAGS=:systemd:
Zbigniew Jędrzejewski-Szmek [Tue, 30 Jun 2020 07:56:10 +0000 (09:56 +0200)]
Fix build with µhttpd 0.9.71
The return type of callbacks was changed from int to an enum.
Yu Watanabe [Wed, 1 Jul 2020 04:10:15 +0000 (13:10 +0900)]
Merge pull request #16316 from yuwata/backlight-use-actual-brightness
backlight: use actual_brightness attribute to get current backlight level
Lennart Poettering [Tue, 30 Jun 2020 15:13:38 +0000 (17:13 +0200)]
update TODO
Zbigniew Jędrzejewski-Szmek [Tue, 30 Jun 2020 15:13:02 +0000 (17:13 +0200)]
Merge pull request #16313 from yuwata/network-move-ipv6ll-gen-mode
network: move IPv6LinkLocalAddressGenerationMode= to [Network] section
Luca Boccassi [Tue, 16 Jun 2020 17:46:55 +0000 (18:46 +0100)]
core: store timestamps of unit load attempts
When the system is under heavy load, it can happen that the unit cache
is refreshed for an unrelated reason (in the test I simulate this by
attempting to start a non-existing unit). The new unit is found and
accounted for in the cache, but it's ignored since we are loading
something else.
When we actually look for it, by attempting to start it, the cache is
up to date so no refresh happens, and starting fails although we have
it loaded in the cache.
When the unit state is set to UNIT_NOT_FOUND, mark the timestamp in
u->fragment_loadtime. Then when attempting to load again we can check
both if the cache itself needs a refresh, OR if it was refreshed AFTER
the last failed attempt that resulted in the state being
UNIT_NOT_FOUND.
Update the test so that this issue reproduces more often.
Zbigniew Jędrzejewski-Szmek [Tue, 30 Jun 2020 13:26:06 +0000 (15:26 +0200)]
Merge pull request #16282 from poettering/repart-copy-blocks
repart: add new CopyBlocks= setting
Yu Watanabe [Tue, 30 Jun 2020 10:41:39 +0000 (19:41 +0900)]
backlight: read current backlight brightness from 'actual_brightness' attribute
Closes #16302.
Yu Watanabe [Tue, 30 Jun 2020 10:29:42 +0000 (19:29 +0900)]
backlight: call log_setup_service() before logging
Yu Watanabe [Tue, 30 Jun 2020 10:28:50 +0000 (19:28 +0900)]
backlight: use SYNTHETIC_ERRNO() macro
Lennart Poettering [Sun, 28 Jun 2020 14:43:29 +0000 (16:43 +0200)]
shared: split out property get helpers
No code changes, just some refactoring.
Lennart Poettering [Sun, 28 Jun 2020 14:17:46 +0000 (16:17 +0200)]
shared: split out code for printing properties
No code changes, just some refactoring.
Lennart Poettering [Sun, 28 Jun 2020 14:08:37 +0000 (16:08 +0200)]
shared: split out code that maps properties to local structs
Just some refactoring, no code changes.
Lennart Poettering [Sun, 28 Jun 2020 13:59:37 +0000 (15:59 +0200)]
shared: actually move all BusLocator related calls to bus-locator.c
Lennart Poettering [Sun, 28 Jun 2020 13:37:47 +0000 (15:37 +0200)]
shared: split out BusObjectImplementor APIs
Just some refactoring, no code changes
Amos Bird [Tue, 30 Jun 2020 10:04:08 +0000 (18:04 +0800)]
hwdb: adjust touchpad edge detection for X1Tab3 (#16310)
Yu Watanabe [Tue, 30 Jun 2020 10:00:18 +0000 (19:00 +0900)]
NEWS: minor fixes
Yu Watanabe [Tue, 30 Jun 2020 08:01:30 +0000 (17:01 +0900)]
network: move IPv6LinkLocalAddressGenerationMode= to [Network] section
This also moves and renames variables and functions.
Follow-ups for
a6f1848a2328cf1493f363968d105cc23019af8a.
Yu Watanabe [Tue, 30 Jun 2020 06:25:24 +0000 (15:25 +0900)]
NEWS: add several entries about networkd
Zbigniew Jędrzejewski-Szmek [Mon, 29 Jun 2020 13:55:41 +0000 (15:55 +0200)]
test-repart: allow the test to pass on non-amd64 architectures
We specified type=root and expected to always get root-x86-64, which obviously
cannot work.
Yu Watanabe [Tue, 30 Jun 2020 05:44:41 +0000 (14:44 +0900)]
shell-completion: add missing verbs for networkctl
Frantisek Sumsal [Sun, 28 Jun 2020 16:53:28 +0000 (18:53 +0200)]
test: bump the timeout for systemd-hwdb-update.service under ASan
Since the hwdb update from
a79be2f80777eb80e0d8177f6bccd7615de7ec1a
the systemd-hwdb-update service started timing out under ASan when
compiled with gcc, as we started tripping over the 3 minutes timeout.
This affects only gcc runs, since the current gcc on Arch still suffers
from the detect_stack_use_after_return performance penalty[0]. Until
the fixed gcc is present in the respective repositories, let's bump
the timeout to 4 minutes, as we might not be able to upgrade right
away, due to systemd/systemd#16199.
Before the hwdb update:
[ 7958.292540] systemd[63]: systemd-hwdb-update.service: Executing: /usr/bin/time systemd-hwdb update
[ 7958.304005] systemd[1]: systemd-journald.service: Got notification message from PID 44 (FDSTORE=1)
[ 7958.314434] systemd[1]: systemd-journald.service: Added fd 3 (n/a) to fd store.
[ 8008.520082] systemd[1]: systemd-journald.service: Got notification message from PID 44 (WATCHDOG=1)
[ 8068.520151] systemd[1]: systemd-journald.service: Got notification message from PID 44 (WATCHDOG=1)
[ 8125.682843] time[63]: 84.47user 82.92system 2:47.50elapsed 99%CPU (0avgtext+0avgdata 811512maxresident)k
[ 8125.682843] time[63]: 0inputs+19680outputs (0major+25000853minor)pagefaults 0swaps
After the hwdb update:
[ 6215.491958] systemd[63]: systemd-hwdb-update.service: Executing: /usr/bin/time systemd-hwdb update
[ 6215.503380] systemd[1]: systemd-journald.service: Got notification message from PID 44 (FDSTORE=1)
[ 6215.514172] systemd[1]: systemd-journald.service: Added fd 3 (n/a) to fd store.
[ 6329.392918] systemd[1]: systemd-journald.service: Got notification message from PID 44 (WATCHDOG=1)
[ 6394.920205] time[63]: 89.48user 89.98system 2:59.55elapsed 99%CPU (0avgtext+0avgdata 812764maxresident)k
[ 6394.920205] time[63]: 0inputs+20568outputs (0major+27318354minor)pagefaults 0swaps
[0] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94910
Zbigniew Jędrzejewski-Szmek [Fri, 26 Jun 2020 20:42:51 +0000 (22:42 +0200)]
Merge pull request #16142 from poettering/random-seed-cmdline
pid1: add support for allowing to pass in random seed via kernel cmdline
Lennart Poettering [Fri, 26 Jun 2020 20:36:39 +0000 (22:36 +0200)]
pid1: warn if people use User=nobody (#16293)
Luca Boccassi [Fri, 26 Jun 2020 15:25:13 +0000 (16:25 +0100)]
efi: define cache functions inside EFI_ENABLE ifdef
../src/shared/efi-loader.c:738:5: error: redefinition of 'efi_loader_get_config_timeout_one_shot'
int efi_loader_get_config_timeout_one_shot(usec_t *ret) {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../src/shared/efi-loader.c:9:
../src/shared/efi-loader.h:85:19: note: previous definition of 'efi_loader_get_config_timeout_one_shot' was here
static inline int efi_loader_get_config_timeout_one_shot(usec_t *ret) {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/shared/efi-loader.c:776:5: error: redefinition of 'efi_loader_update_entry_one_shot_cache'
int efi_loader_update_entry_one_shot_cache(char **cache, struct stat *cache_stat) {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../src/shared/efi-loader.c:9:
../src/shared/efi-loader.h:89:19: note: previous definition of 'efi_loader_update_entry_one_shot_cache' was here
static inline int efi_loader_update_entry_one_shot_cache(char **cache, struct stat *cache_stat) {
Frantisek Sumsal [Fri, 26 Jun 2020 19:30:04 +0000 (21:30 +0200)]
tree-wide: spellcheck fixes
Most of them were reported by Fossies.org
Zbigniew Jędrzejewski-Szmek [Fri, 26 Jun 2020 17:25:04 +0000 (19:25 +0200)]
NEWS: reorder entries with some minor additions
Let's make this easier for readers by grouping common subjects together.
Roughly: pid1 features, unit file changes, general syntax changes, kernel
options, general defaults, udevd features, networkd and .network/.netdev
features, networkctl, resolved, systemctl, systemd-run, journald, journalctl,
various other tools, low-level dbus and library stuff, documentation.
Luca Boccassi [Fri, 26 Jun 2020 11:19:48 +0000 (12:19 +0100)]
core: add device mapper to allow-list with DevicePolicy=closed and RootImage
To set up a verity/cryptsetup RootImage the forked child needs to
ioctl /dev/mapper/control and create a new mapper.
If PrivateDevices=yes and/or DevicePolicy=closed are used, this is
blocked by the cgroup setting, so add an exception like it's done
for loop devices (and also add a dependency on the kernel modules
implementing them).
Lennart Poettering [Fri, 26 Jun 2020 16:04:52 +0000 (18:04 +0200)]
update TODO
Lennart Poettering [Fri, 26 Jun 2020 13:43:24 +0000 (15:43 +0200)]
update TODO
Lennart Poettering [Fri, 26 Jun 2020 13:12:57 +0000 (15:12 +0200)]
Merge pull request #16281 from poettering/logind-cache-more-efi
logind: cache two more EFI variables in logind
Gaoyi [Fri, 26 Jun 2020 05:55:41 +0000 (13:55 +0800)]
Add quotes for -n
According to SC2070, -n doesn't work with unquoted arguments
https://github.com/koalaman/shellcheck/wiki/SC2070
Signed-off-by: Gaoyi <ymuemc@163.com>
Lennart Poettering [Fri, 26 Jun 2020 11:55:18 +0000 (13:55 +0200)]
JOURNAL_FILE_FORMAT: minor markdown fixes
Lennart Poettering [Fri, 26 Jun 2020 11:54:54 +0000 (13:54 +0200)]
NEWS: add more items for 246
Lennart Poettering [Thu, 25 Jun 2020 14:25:41 +0000 (16:25 +0200)]
logind: also cache LoaderEntryOneShot EFI variable
With this we are now caching all EFI variables that we expose as
property in logind. Thus a client invoking GetAllProperties() should
only trgger a single read of each variable, but never repeated ones.
Obsoletes: #16190
Fixes: #14828
Lennart Poettering [Thu, 25 Jun 2020 13:24:25 +0000 (15:24 +0200)]
efi-loader: cache LoaderConfigTimeoutOneShot too
The data from this EFI variable is exposed as dbus property, and gdbus
clients are happy to issue GetAllProperties() as if it was free. Hence
make sure it's actually free and cache LoaderConfigTimeoutOneShot, since
it's easy.
Lennart Poettering [Thu, 25 Jun 2020 13:24:06 +0000 (15:24 +0200)]
tmpfile-util: typo fixes
Yu Watanabe [Thu, 25 Jun 2020 20:36:01 +0000 (05:36 +0900)]
util: add missing header guard
Zbigniew Jędrzejewski-Szmek [Fri, 26 Jun 2020 05:27:05 +0000 (07:27 +0200)]
Merge pull request #16096 from poettering/journal-hash-fix
journal file hash table hardening + zstd support
Zbigniew Jędrzejewski-Szmek [Thu, 25 Jun 2020 13:44:06 +0000 (15:44 +0200)]
hwdb: update for v246
As usual, it seems that there are mostly additions with a smaller amount
of corrections, no big removals.
Lennart Poettering [Thu, 25 Jun 2020 16:52:43 +0000 (18:52 +0200)]
update TODO
Lennart Poettering [Thu, 25 Jun 2020 16:51:16 +0000 (18:51 +0200)]
repart: add new CopyBlocks= setting
This allows copying in arbitrary file systems on the block level into
newly created partitions.
Usecase: simple replicating OS installers or OS image builders.
Zbigniew Jędrzejewski-Szmek [Thu, 25 Jun 2020 16:41:49 +0000 (18:41 +0200)]
Merge pull request #16275 from yuwata/network-deprecate-netdevsim
network: deprecate netdevsim support
Łukasz Stelmach [Wed, 24 Jun 2020 17:24:13 +0000 (19:24 +0200)]
udev: split attribute assignment for MMC cards
Some cards have names consisting only of whitespace characters which
prevents the original rule from matching and assigning ID_SERIAL
properly. With the split rules ID_SERIAL and ID_NAME are assigned
independently and the symlink is created only if both are available the
same way it has worked for partitions.
Luca Boccassi [Tue, 23 Jun 2020 14:56:33 +0000 (15:56 +0100)]
portabled: create temp file for unit, not directory
open_tmpfile_linkable is used to create a temporary file in the same
directory as the target, but portabled uses the name of the parent
directory instead of the file it intends to create.
In other words, it creats a tmp for /etc/systemd/system.attached instead
of /etc/systemd/system.attached/foo.service.
It still works because it's later moved in the right place.
But as a side effect, it tries the create the file in the parent directory
which is /etc/systemd, and it case of read-only filesystems it fails.
Christian Göttsche [Thu, 25 Jun 2020 12:36:49 +0000 (14:36 +0200)]
selinux: check mac_selinux_init() in tests
Since
bc8d57f2903d mac_selinux_init() is checked and considered fatal
tree-wide.
Coverity complains about it not being checked in the test code.
Follow-up of: #16223
Fixes: CID
1429975
Zbigniew Jędrzejewski-Szmek [Thu, 25 Jun 2020 16:38:37 +0000 (18:38 +0200)]
Merge pull request #16278 from keszybz/fix-man-links
Fix html links
Zbigniew Jędrzejewski-Szmek [Thu, 25 Jun 2020 16:36:56 +0000 (18:36 +0200)]
Merge pull request #15624 from poettering/hostnamed-instant
hostnamed: stop caching so much
Zbigniew Jędrzejewski-Szmek [Thu, 25 Jun 2020 16:23:47 +0000 (18:23 +0200)]
Merge pull request #15697 from OhNoMoreGit/fix-path-units
Recheck PathExists=, PathExistsGlob=, DirectoryNotEmpty= when triggered unit terminates
Lennart Poettering [Tue, 2 Jun 2020 08:39:19 +0000 (10:39 +0200)]
update TODO
Lennart Poettering [Wed, 24 Jun 2020 14:35:10 +0000 (16:35 +0200)]
compress: do something roughly reasonable when building without compressor
Lennart Poettering [Wed, 24 Jun 2020 14:34:36 +0000 (16:34 +0200)]
coredump: use log_error_errno() where appropriate
Lennart Poettering [Wed, 24 Jun 2020 14:33:41 +0000 (16:33 +0200)]
tree-wide: add new HAVE_COMPRESSION compile time flag
let's simplify the checks for ZSTD/LZ4/XZ
As suggested:
https://github.com/systemd/systemd/pull/16096#discussion_r440705585
Lennart Poettering [Mon, 1 Jun 2020 22:13:42 +0000 (00:13 +0200)]
docs: document the new journal file format additions
Lennart Poettering [Mon, 1 Jun 2020 20:56:02 +0000 (22:56 +0200)]
docs: import journal file format docs from fdo wiki
Just an import, with no textual changes (some fixed URLs however)
Lennart Poettering [Mon, 1 Jun 2020 21:26:55 +0000 (23:26 +0200)]
journal: support zstd compression for large objects in journal files
Lennart Poettering [Mon, 1 Jun 2020 17:40:30 +0000 (19:40 +0200)]
journal-file: when individual hash chains grow too large, rotate
Even with the new keyed hash table journal feature: if an attacker
manages to get access to the journal file id it could synthesize records
that result in hash collisions. Let's rotate automatically when we
notice that, so that a new journal file ID is generated, our performance
is restored and the attacker has to guess a new file ID before being
able to trigger the issue again.
That said, untrusted peers should never get access to journal files in
the first case...
Lennart Poettering [Fri, 29 May 2020 22:00:50 +0000 (00:00 +0200)]
journal: use a different hash function for each journal file
This adds a new (incompatible) feature to journal files: if enabled the
hash function used for the hash tables is no longer jenkins hash with a
zero key, but siphash keyed by the file uuid that is included in the
file header anyway. This should make our hash tables more robust against
collision attacks, as long as the attacker has no read access to the
journal files. We switch from jenkins to siphash simply because it's
more well-known and we standardize for the rest of our codebase onto it.
This is hardening in order to make collision attacks harder for clients
that can forge log messages but have no read access to the logs. It has
no effect on clients that have read access.
Lennart Poettering [Mon, 1 Jun 2020 16:50:33 +0000 (18:50 +0200)]
journal: make signature arrays const
Lennart Poettering [Mon, 1 Jun 2020 16:20:41 +0000 (18:20 +0200)]
journal: rename hash64() to jenkins_hash64()
Let's prefix this with "jenkins_" since it wraps the jenkins hash. We
want to add support for other hash functions to journald soon, hence
better be clear with what this is. In particular as all other symbols
defined by lookup3.h actually are prefixed "jenkins_".
Lennart Poettering [Mon, 1 Jun 2020 16:15:40 +0000 (18:15 +0200)]
journal-file: rename return parameters to ret_xyz
Let's clean this up a bit, following our usual nomenclature to name
return parameters ret-xyz.
This is mostly a bit of renaming, but there's also some minor other
changes: if we return a pointer to a mmap'ed object plus its offset, in
almost all cases we are happy if either parameter is NULL in case the
caller is not interested in it. Let's fix the remaining case to do this
too, to minimize surprises.
Lennart Poettering [Fri, 29 May 2020 23:29:37 +0000 (01:29 +0200)]
journal-file: also show field hash table size in debug output
Lennart Poettering [Fri, 29 May 2020 22:32:31 +0000 (00:32 +0200)]
journal-file: simplify boot ID acquiring
Lennart Poettering [Mon, 1 Jun 2020 16:06:16 +0000 (18:06 +0200)]
journal: store NE hash instead of LE hash in Match object
We keep converting forth and back though we never need it in LE. Let's
stop doing those conversions hence.
Lennart Poettering [Fri, 29 May 2020 21:35:25 +0000 (23:35 +0200)]
journal-file: use FLAGS_SET where appropriate
Lennart Poettering [Mon, 1 Jun 2020 22:26:34 +0000 (00:26 +0200)]
journal: fix definition of _OBJECT_COMPRESSED_MAX
The object flags field is a bitmask, hence don't sloppily define
_OBJECT_COMPRESSED_MAX as one mor than the previous flag. That worked OK
as long as we only had two flags, but will fall apart as soon as we have
three. Let's fix this.
(It's kinda sloppy how the string table is built here, as it will be
quite sparse as soon as we have more enum entries, but let's keep it for
now.)
Lennart Poettering [Fri, 29 May 2020 21:27:59 +0000 (23:27 +0200)]
macro: add CONST_MIN() similar to CONST_MAX()
Zbigniew Jędrzejewski-Szmek [Thu, 25 Jun 2020 12:41:05 +0000 (14:41 +0200)]
man: reword awkward sentence
Zbigniew Jędrzejewski-Szmek [Thu, 25 Jun 2020 12:38:21 +0000 (14:38 +0200)]
man: fix various internal references
Found with linkchecker.
Zbigniew Jędrzejewski-Szmek [Thu, 25 Jun 2020 12:37:24 +0000 (14:37 +0200)]
man: fix links to various external man pages
In cases where we used both die-net and man-pages for the same reference,
I switched to use man-pages everywhere.
Lennart Poettering [Thu, 25 Jun 2020 12:40:35 +0000 (14:40 +0200)]
Merge pull request #16257 from keszybz/two-fuzzer-issues
Two fuzzer issues
Lennart Poettering [Thu, 25 Jun 2020 11:53:17 +0000 (13:53 +0200)]
Merge pull request #16249 from bluca/root_verity_sig
Verity: add support for root hash signature
Lennart Poettering [Tue, 28 Apr 2020 15:42:46 +0000 (17:42 +0200)]
hostnamed: minimize caching of /etc/hostname, /etc/os-release and /etc/machine-info
Instead of reading these files at startup and never again, let's read
them when we need them. As an optimization (in particular as some of
these files contain the data for many fields at once) let's cache the
results as long as the stat data (i.e. mtime) remains stable.
Also, while we are at it, if we can't read any of these props, let's not
fail everything, but continue without the data.
Lennart Poettering [Tue, 28 Apr 2020 15:34:38 +0000 (17:34 +0200)]
hostnamed: don't cache local hostname either
Querying the current hostname is cheap, hence let's not cache it. That
way it is much less likely we'll return out-of-date data.
Evgeny Vereshchagin [Thu, 25 Jun 2020 00:46:21 +0000 (02:46 +0200)]
ci: free up some resources on Pipelines
Now that CIFuzz supports all the sanitizers we use and ALLOWED_BROKEN_TARGETS_PERCENTAGE
we no longer need that bash script.
Evgeny Vereshchagin [Wed, 24 Jun 2020 22:32:00 +0000 (00:32 +0200)]
ci: switch to Ubuntu Bionic on Semaphore
To judge from the settings page where I was kind of nudged into switching to
Ubuntu 18.04 it looks like Ubuntu Xenial is deprecated there.
Yu Watanabe [Thu, 25 Jun 2020 08:30:19 +0000 (17:30 +0900)]
test-network: remove unused config
Yu Watanabe [Thu, 25 Jun 2020 08:26:36 +0000 (17:26 +0900)]
network: deprecate netdevsim support in .netdev config
Since kernel 5.2, netdevsim creation/destruction via netlink is removed.
So, let's remove the netdevsim support from our documents.
See below commit for more details.
https://github.com/torvalds/linux/commit/
e05b2d141fef22cfac1928cf0eb6890e5dae4216
Luca Boccassi [Mon, 8 Jun 2020 13:02:55 +0000 (14:02 +0100)]
core: add RootHashSignature service parameter
Allow to explicitly pass root hash signature as a unit option. Takes precedence
over implicit checks.
Luca Boccassi [Tue, 2 Jun 2020 14:35:58 +0000 (15:35 +0100)]
dissect/nspawn: add support for dm-verity root hash signature
Since cryptsetup 2.3.0 a new API to verify dm-verity volumes by a
pkcs7 signature, with the public key in the kernel keyring,
is available. Use it if libcryptsetup supports it.
Luca Boccassi [Thu, 4 Jun 2020 16:41:28 +0000 (17:41 +0100)]
veritysetup: add support for dm-verity root hash signature
Since cryptsetup 2.3.0 a new API to verify dm-verity volumes by a
pkcs7 signature, with the public key in the kernel keyring,
is available. Use it if libcryptsetup supports it in the
veritysetup helper binary.
Zbigniew Jędrzejewski-Szmek [Thu, 25 Jun 2020 07:25:18 +0000 (09:25 +0200)]
Merge pull request #16265 from Werkov/fix-16248
cgroup: Parse infinity properly for memory protections
Zbigniew Jędrzejewski-Szmek [Thu, 25 Jun 2020 07:06:49 +0000 (09:06 +0200)]
Merge pull request #16271 from yuwata/network-cleanups-around-link-get
network: several tiny cleanups around link_get()
Michal Koutný [Wed, 24 Jun 2020 10:43:22 +0000 (12:43 +0200)]
missing: Add new Linux capabilities
Linux kernel v5.8 adds two new capabilities. Make sure we can recongize
them even when built with older kernel.
Lennart Poettering [Tue, 23 Jun 2020 06:31:16 +0000 (08:31 +0200)]
tree-wide: avoid some loaded terms
https://tools.ietf.org/html/draft-knodel-terminology-02
https://lwn.net/Articles/823224/
This gets rid of most but not occasions of these loaded terms:
1. scsi_id and friends are something that is supposed to be removed from
our tree (see #7594)
2. The test suite defines an API used by the ubuntu CI. We can remove
this too later, but this needs to be done in sync with the ubuntu CI.
3. In some cases the terms are part of APIs we call or where we expose
concepts the kernel names the way it names them. (In particular all
remaining uses of the word "slave" in our codebase are like this,
it's used by the POSIX PTY layer, by the network subsystem, the mount
API and the block device subsystem). Getting rid of the term in these
contexts would mean doing some major fixes of the kernel ABI first.
Regarding the replacements: when whitelist/blacklist is used as noun we
replace with with allow list/deny list, and when used as verb with
allow-list/deny-list.
Zbigniew Jędrzejewski-Szmek [Wed, 24 Jun 2020 11:26:05 +0000 (13:26 +0200)]
fuzz-udev-rules: -ENOBUFS should be accepted too
In udev_rules_load(), add a debug message. Otherwise there'd be no indication
that parsing was aborted.
Zbigniew Jędrzejewski-Szmek [Tue, 23 Jun 2020 18:51:13 +0000 (20:51 +0200)]
journal: fix buffer overrun when urlifying
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=21122.
message is only valid until message_len, and we need to make sure we're not
reading pass that. Bug introduced in
2108b56749ebb8d17f06d08b6ada2f79ae4f0.
Yu Watanabe [Thu, 25 Jun 2020 04:43:35 +0000 (13:43 +0900)]
network: fix typo in comment
Yu Watanabe [Thu, 25 Jun 2020 04:41:47 +0000 (13:41 +0900)]
network: do not update operstate when netdev is not ready
Yu Watanabe [Thu, 25 Jun 2020 04:17:37 +0000 (13:17 +0900)]
network: fix assertion in link_get()
Yu Watanabe [Thu, 25 Jun 2020 04:13:47 +0000 (13:13 +0900)]
network: check that received ifindex is valid
Michal Koutný [Wed, 24 Jun 2020 17:50:00 +0000 (19:50 +0200)]
test: Test memory limit parsing
This covers parsing from configuration files only. Properties set via
DBus have separate code path whose testing would require DBus setup.