Commit Graph
78870 Commits
Author SHA1 Message Date
Lennart Poettering 4d0fb50e9e machine-id-setup: do sync() stuff only when operating on the real rootfs
If we operate relative some explicit rootfs the reason for the sync()ing
is not really given, we are not really acting as a milestone at boot,
but "offline".
2025-01-20 11:31:55 +01:00
Lennart Poettering 849552c80b machine-id-setup: rearrange --help to match how we do them these days 2025-01-20 11:31:55 +01:00
Lennart Poettering b0afd29f7d chase: use streq() not path_equal() to compare filenames 2025-01-20 11:31:55 +01:00
Lennart Poettering e49e76d64d chase: allow using chase() as mkdir_p() replacement
This allows using CHASE_MKDIR_0755 without CHASE_NONEXISTENT or
CHASE_PARENT, so that it will create the final component of the path
too should it be missing.

This is really useful as a mkdir_p() replacement that returns an fd to
the final component, and knows how to operate relative to a root fs.

Kinda reverts 4ea0bcb922 (which only
refused the flags combination which didn't work, instead of making it
work, which is what this commit does.)

This also corrects behaviour if CHASE_MKDIR_0755 is used in one more
way: we'll now always open the dir as O_PATH. This is generally the
better idea, but matters in particular once with allow using
CHASE_MKDIR_0755 to create the final component: we should uniformly
return an O_PATH dir that must be converted to a proper fd first before
using it.
2025-01-20 11:31:55 +01:00
Lennart Poettering b979368075 mount-util: introduce umountat_detach_verbose()
This new helper allows unmounting paths by fd.
2025-01-20 11:31:55 +01:00
Yu Watanabe 2cf9635511 capability-util: rename output argument of capability_gain_cap_setpcap() 2025-01-19 14:00:16 +00:00
Yu Watanabe ed8a737e08 core: use usec_add() at one more place
Follow-up for 8af1b296cb.
Fixes CID#1590317.
2025-01-19 10:31:50 +01:00
Yu Watanabe 22d3a3dd20 Tweaks to generic "io.systemd.service" Varlink interface, and hook it up in all long-running Varlink daemons (#35914) 2025-01-19 11:54:10 +09:00
Yu Watanabe bcc057aa1d pid1,nspawn: enable usrquota on /tmp/ + /dev/shm/ (#36036)
Split out of #36010.

This simply enables the "usrquota" mount option on the two dirs if they
are backed by tmpfs.

#36010 contains a test that actually verifies that the mount option does
its thing.
2025-01-19 11:51:54 +09:00
Yu Watanabe 3fb71599d0 tree-wide: coding style fixlets done by coccinelle (#36074) 2025-01-19 11:51:12 +09:00
Hendrik Wolff 5c6703e2d8 man/systemd.special: Add suspend-then-hibernate.target to sleep.target documentation 2025-01-19 11:47:09 +09:00
Yu Watanabe 99de29945f tree-wide: coding style fixlets done by coccinelle 2025-01-19 08:28:42 +09:00
Yu Watanabe 62123950c6 coccinelle: add .gitignore for cache files 2025-01-19 08:27:47 +09:00
Lennart Poettering adb556abd9 tree-wide: use log_level_is_valid() more 2025-01-18 23:24:29 +01:00
Lennart Poettering 078ddcb7ce test: add superficial test for generic per-service varlink API 2025-01-18 23:24:29 +01:00
Lennart Poettering c8127075ae tree-wide: implement generic io.systemd.service Varlink interface in all long-running services
Given we have the generic interface, let's hook it up everywhere.

This doesnt bother with the Reload() call usually, since that's more
involved, but hooks up the other relevant functions where applicable.
2025-01-18 23:24:29 +01:00
Lennart Poettering fef9eb4e6a varlink: add generic GetEnvironment() call to the Varlink "service" interface
It's just so useful being able to retrieve the current env block from
our services. Add a concept for that. It's really simple, and dumb.

In many ways it's like /proc/$PID/environ, but shows the actual
environ[] array visible to the app, not just some memory that was
originally used for the env block passed in, but might have been rearranged.
2025-01-18 23:24:29 +01:00
Lennart Poettering 211012f544 varlink: tweak introspection description for Reload() 2025-01-18 23:24:29 +01:00
Lennart Poettering 36e7aa7010 varlink: drop redundant check
sd_varlink_dispatch() alredy validates all this, no need to check this
manually.
2025-01-18 23:24:29 +01:00
Lennart Poettering a7cc7038ac varlink: rely on sd_varlink_dispatch() for validating zero-argument method calls, too 2025-01-18 23:24:29 +01:00
Lennart Poettering fa3137f9d0 json-util: fine tune json_dispatch_log_level()
Let's give the user control on how to handle JSON "null" assignments of
the log level. As one of three cases: as failure, as LOG_NULL (i.e. to
turn off logging) or as LOG_INFO (as our usual default log level).

Let's then use that in the generic SetLogLevel() call, so that callers
can use it to explicitly turn off logging in a service.

Note that this was (probably accidentally) already implemented, except
that the introspection enforcement blocked it. Let's clean this up and
make this officially a thing, since it's generally useful to turn off
logging I think.
2025-01-18 23:24:29 +01:00
Lennart Poettering 611ae59888 nspawn: enable usrquota support on /tmp/ and /dev/shm/ 2025-01-18 23:13:06 +01:00
Lennart Poettering c9f805674a units: enable usrquota support on /tmp/ 2025-01-18 23:13:06 +01:00
Lennart Poettering 8f5131fb9e pid1: enable usrquota support on /dev/shm 2025-01-18 23:13:06 +01:00
nl6720 a153d7cbd2 man: replace "-" with "none" in cryptsetup commands and crypttab
`none` is more explicit and harder to overlook than `-` which in certain
contexts could be misunderstood to mean standard input.
2025-01-19 04:37:14 +09:00
Yu Watanabe dadd182317 TODO: fix typo
Follow-up for fb8d46cffe.
2025-01-19 04:25:22 +09:00
Yu Watanabe f0159e2b5b process-util: fix typo
Also rebreak comment.

Follow-up for 03b89cf213.
2025-01-19 04:24:08 +09:00
Yu Watanabe 4d090126ed login: fix typo
Follow-up for a6ad410ffa.
2025-01-19 04:22:16 +09:00
Lennart Poettering 8af1b296cb pid1: when a password is requested during PAMName= processing, query it via the ask-password logic 2025-01-18 11:45:44 +00:00
Yu Watanabe f55a6fc1e3 udev: add --verbose option for 'udevadm test' and add more verbose logs (#36021)
split out of #35968.
2025-01-18 06:12:31 +09:00
Luca Boccassi 27c947ec3d tree-wide: switch various uses of mkdtemp() over to mkdtemp_malloc() (#36057) 2025-01-17 19:49:49 +00:00
Lennart Poettering ea844c49c3 escape: make 'bad' parameter optional
Treat a NULL bad parameter just like an empty one: do not escape any
additional characters except for the CC chars.
2025-01-17 19:47:43 +00:00
Mike Yuan 9cd064aa9f meson: bump C std to gnu17
GCC 8.4 (our baseline) defaults to gnu17 already.
2025-01-17 19:46:37 +00:00
Yu Watanabe c547b9e278 udev-rules: add trace logs for GOTO and parent conditions 2025-01-18 04:22:27 +09:00
Yu Watanabe 354d063fbc udev-rules: update log messages
This also adds trace logs about token result, and skipping assignment
caused by final value already assigned.
2025-01-18 04:22:23 +09:00
Yu Watanabe 68b1e1b61a udev-rules: ignore whole command result if it is too long and does not contain newline 2025-01-18 04:19:52 +09:00
Yu Watanabe a79cd8c2be udev-rules: introduce udev_replace_chars_and_log()
And logs about replacement only when trace logging is enabled.
2025-01-18 04:19:52 +09:00
Yu Watanabe 0febeccfdc udev-rules: add more trace logs for string match 2025-01-18 04:19:52 +09:00
Yu Watanabe a3ab06ab21 udev-rules: logs result of format substitution
This also drops redundant token string in log message on truncation.

No functional change, but should improve debuggability.
2025-01-18 04:19:52 +09:00
Yu Watanabe 6809bae643 udev-rules: show original token string in log_event_error() and friends
This also makes
- make many loggers refactored,
- log_event_error() and friends UdevEvent object,
- introduces log_event_trace().

No functional change, just refactoring and preparation for later
commits.
2025-01-18 04:19:52 +09:00
Yu Watanabe 8846df63fa udevadm-test: introduce -v/--verbose option to show verbose log messages
Currently this does not show any extra log messages. In later commits,
more verbose log messages will be added.
2025-01-18 04:19:52 +09:00
Lennart Poettering ce2ef96c2b hexdump: if size is SIZE_MAX, use strlen()
Similar how we do this as various places: if SIZE_MAX is specified as
size determine the size automatically via strlen().
2025-01-17 17:02:07 +01:00
Lennart Poettering d58577d45e nspawn: assorted coding style fixes 2025-01-17 11:12:24 +01:00
Lennart Poettering bf37a69c3f tree-wide: switch various uses of mkdtemp() over to mkdtemp_malloc() 2025-01-17 10:56:35 +01:00
Zbigniew Jędrzejewski-Szmek 6e1b24820f mkosi: update fedora commit reference
* c7fecc18eb Skip test_sysusers_defined on upstream builds
* f257050ddd Add a .editorconfig file
* aa5546e9ed Add a few mkosi artifact directories to .gitignore
* 01e5bc1c93 Set SBAT in sd-boot when building on OBS
* a7eec4d33d Run upstream integration test suite with Fedora CI
2025-01-16 23:40:04 +01:00
Zbigniew Jędrzejewski-Szmek 4e97e697c0 Several fixlets for GCC warnings (#36051)
Replaces #36043 and #36039.
2025-01-16 22:41:31 +01:00
Lennart Poettering 86d6e268be Two readme tweaks (#36053) 2025-01-16 22:40:07 +01:00
Zbigniew Jędrzejewski-Szmek dce73a47b0 README: add sgx to list of required groups
Follow-up for c9c4899f44.
2025-01-16 22:22:38 +01:00
Zbigniew Jędrzejewski-Szmek 6ed73883c6 docs/HACKING: use 'run0' to indicate which commands require privileges 2025-01-16 22:22:28 +01:00
Lennart Poettering fb8d46cffe update TODO 2025-01-16 21:58:35 +01:00