Commit Graph
35752 Commits
Author SHA1 Message Date
Yu Watanabe 218b4609d0 Merge pull request #10447 from poettering/fgets-excorcism
let's get rid of fgets()
2018-10-19 08:36:01 +09:00
Lennart Poettering 986c8af1b8 Merge pull request #10456 from poettering/setsockopt-int
add a setsockopt_int() helper and make use of it everywhere
2018-10-18 21:53:01 +02:00
Lennart Poettering 40235c3c5e tests: clean up again after running tests (#10446)
Currently, if I run the full "run-integration-tests.sh" script it will
fail on my machine because it fills up /var/tmp whith just too much
crap until the disk is full.

Let's make sure that "run-integration-tests.sh" cleans up after every
test. For that change the make targets to run from "clean setup run" to
"clean setup run clean" — except that that doesn't work since make is
smart enough to realize that the same target appears twice on the
command line and will only execute it once. Let's fix that by defining
another target "clean-again" which is just like "clean", but allows us
to be added to the same command line a second time. Then, let's build
with "clean setup run clean-again" and all is good.

While we are at it, let's also add .PHONY where appropriate, after all
these all are phony targets.
2018-10-19 03:59:24 +09:00
Lennart Poettering 6d4150cb45 job: add a comment that JOB_DONE also means skipped due to condition (#10453) 2018-10-19 03:55:30 +09:00
Lennart Poettering b33fa02b2d util: drop const_int_one/const_int_zero again
There's only a single user remaining now that we have setsockopt_int(),
let's define those variables locally.

This more or less reverts 6d5e65f645.
2018-10-18 19:50:29 +02:00
Lennart Poettering 2ff48e981e tree-wide: introduce setsockopt_int() helper and make use of it everywhere
As suggested by @heftig:

https://github.com/systemd/systemd/commit/6d5e65f6454212cd400d0ebda34978a9f20cc26a#commitcomment-30938667
2018-10-18 19:50:29 +02:00
Lennart Poettering 0fef958361 efi: rework OFFSETOF() based on __builtin_offsetof()
Since both LLVM and gcc supported this for a long time, we are not
adding a fallback compat kludge. And even if there's some relevant
compiler that doesn't know this concept, it'll fail with a compiler
error, and we'll fix it then.

As suggested by @keszybz:

https://github.com/systemd/systemd/pull/10174#discussion_r226266540
2018-10-18 19:01:54 +02:00
Lennart Poettering 849d653a4e Merge pull request #10239 from yuwata/sd-device-monitor
sd-device: introduce sd_device_monitor
2018-10-18 18:30:38 +02:00
Lennart Poettering c0815ca93d Merge pull request #10407 from yuwata/netlink-slot
sd-netlink: introduce sd_netlink_slot object and relevant functions
2018-10-18 18:05:58 +02:00
Zbigniew Jędrzejewski-Szmek 10d4409cea mkosi: use Fedora 29
F29 is at beta now, but should be out within two or three weeks, by the time
next systemd release happens.
2018-10-18 16:27:21 +02:00
Zbigniew Jędrzejewski-Szmek 51a85e5ec2 Merge pull request #10174 from poettering/sd-boot-counter-efi
the EFI changes from PR #9437 (the boot counting PR)
2018-10-18 16:06:01 +02:00
Yu Watanabe 691d6f6d76 bus-unit-util: use streq() instead of STR_IN_SET()
Follow-up for 90fc172e19 (#10308).
2018-10-18 13:46:45 +02:00
Lennart Poettering fae0f8a047 udev-rules: fgets() excorcism 2018-10-18 13:41:09 +02:00
Lennart Poettering 9c6f9786c5 condition: fgets() excorcism 2018-10-18 13:40:55 +02:00
Lennart Poettering 1fd2786161 reply-password: fgets() excorcism 2018-10-18 13:40:39 +02:00
Lennart Poettering a889e206a7 modules-load: fgets() excorcism 2018-10-18 13:40:21 +02:00
Lennart Poettering 1d47b56995 keymap-util: fgets() excorcism 2018-10-18 13:40:03 +02:00
Lennart Poettering 32d621e4db hwdb: fgets() excorcism 2018-10-18 13:39:41 +02:00
Lennart Poettering df2b06d1c2 catalog: fgets() excorcism 2018-10-18 13:39:29 +02:00
Lennart Poettering b42674a168 cryptsetup-generator: fgets() excorcism 2018-10-18 13:34:40 +02:00
Lennart Poettering 717e419b35 cgtop: fgets() excorcism 2018-10-18 13:34:12 +02:00
Lennart Poettering 741d2cb533 binfmt: fgets() excorcism
Also, let's not claim we ignored errors when we don't.
2018-10-18 13:33:22 +02:00
Lennart Poettering 7452c3ff52 binfmt: validate rule file name before using it 2018-10-18 13:33:00 +02:00
Lennart Poettering d3f9790c81 terminal-util: use fgetc() carefully instead of fread() 2018-10-18 13:32:34 +02:00
Lennart Poettering 715bcf361d terminal-util: excorcise fgets() 2018-10-18 13:32:05 +02:00
Lennart Poettering 6d3db278fe clock-util: excorcise fgets() 2018-10-18 13:30:20 +02:00
Michael Biebl 991b4350a8 docs: use h2 headers
The primer theme does not add a mouse-over anchor link for h1 headers.
So use h2 for subsection headers which looks nicer anyway.

Followup for #10421
2018-10-18 09:57:45 +02:00
Anita Zhang 90fc172e19 core: implement per unit journal rate limiting
Add LogRateLimitIntervalSec= and LogRateLimitBurst= options for
services. If provided, these values get passed to the journald
client context, and those values are used in the rate limiting
function in the journal over the the journald.conf values.

Part of #10230
2018-10-18 09:56:20 +02:00
Yu Watanabe 9fcdab9c87 resolve: set IP_RECVERR
Closes #10345.
2018-10-18 09:43:04 +02:00
Yu Watanabe 103341f9f8 Merge pull request #10438 from poettering/path-is-valid
be a bit more carful when processing transient socket paths via the bus
2018-10-18 06:20:41 +09:00
Lennart Poettering 108e8de655 Merge pull request #10439 from poettering/job-struct-init
three trivial simplifications/clean-ups
2018-10-17 22:55:00 +02:00
Lennart Poettering 67f5d31b45 Merge pull request #10440 from poettering/fflush-and-check-some-more
use fflush_and_check() and free_and_replace() where we can
2018-10-17 22:54:34 +02:00
Lennart Poettering a42984dbc7 Merge pull request #10428 from keszybz/failure-actions
Implement manager status changes using SuccessAction=
2018-10-17 21:29:10 +02:00
Lennart Poettering efa3f34e84 service: use free_and_replace() where we can 2018-10-17 21:24:04 +02:00
Lennart Poettering c93d527f46 exec-util: use fflush_and_check() where appropriate 2018-10-17 21:23:34 +02:00
Lennart Poettering 7d853ca6bc execute: shorten things a bit 2018-10-17 21:18:09 +02:00
Lennart Poettering 15ec102145 job: add lots of colons to log messages 2018-10-17 21:18:09 +02:00
Lennart Poettering 08ac00f279 job: use structured initialization 2018-10-17 21:18:02 +02:00
Lennart Poettering 1f7817f8e9 core: use structured initialization 2018-10-17 21:13:02 +02:00
Lennart Poettering 1fe84279f7 core: shorten list appending a bit, by using better macros 2018-10-17 21:13:02 +02:00
Lennart Poettering 4ad25546e7 dbus: add missing OOM check 2018-10-17 21:13:02 +02:00
Lennart Poettering 6e9c4f450e core: validate socket path with path_is_valid() 2018-10-17 21:13:02 +02:00
Lennart Poettering 656552ebb3 path-util: add new path_is_valid() helper 2018-10-17 21:13:02 +02:00
Lennart Poettering 3088305166 list: fix double avaluation in LIST_APPEND() 2018-10-17 21:13:02 +02:00
Andreas Henriksson 33eb44fe4a sulogin-shell: Use force if SYSTEMD_SULOGIN_FORCE set
When the root account is locked sulogin will either inform you of
this and not allow you in or if --force is used it will hand
you passwordless root (if using a recent enough version of util-linux).

Not being allowed a shell is ofcourse inconvenient, but at the same
time handing out passwordless root unconditionally is probably not
a good idea everywhere.

This patch thus allows to control which behaviour you want by
setting the SYSTEMD_SULOGIN_FORCE environment variable to true
or false to control the behaviour, eg. via adding this to
'systemctl edit rescue.service' (or emergency.service):

[Service]
Environment=SYSTEMD_SULOGIN_FORCE=1

Distributions who used locked root accounts and want the passwordless
behaviour could thus simply drop in the override file in
/etc/systemd/system/rescue.service.d/override.conf

Fixes: #7115
Addresses: https://bugs.debian.org/802211
2018-10-17 20:30:10 +02:00
Zbigniew Jędrzejewski-Szmek c7adcb1af9 core: do not "warn" about mundane emergency actions
For example in a container we'd log:
Oct 17 17:01:10 rawhide systemd[1]: Started Power-Off.
Oct 17 17:01:10 rawhide systemd[1]: Forcibly powering off: unit succeeded
Oct 17 17:01:10 rawhide systemd[1]: Reached target Power-Off.
Oct 17 17:01:10 rawhide systemd[1]: Shutting down.
and on the console we'd write (in red)
[  !!  ] Forcibly powering off: unit succeeded

This is not useful in any way, and the fact that we're calling an "emergency action"
is an internal implementation detail. Let's log about c-a-d and the watchdog actions
only.
2018-10-17 19:32:09 +02:00
Zbigniew Jędrzejewski-Szmek a400bd8c2a units: allow and use SuccessAction=exit-force in system systemd-exit.service
C.f. 287419c119: 'systemctl exit 42' can be
used to set an exit value and pulls in exit.target, which pulls in systemd-exit.service,
which calls org.fdo.Manager.Exit, which calls method_exit(), which sets the objective
to MANAGER_EXIT. Allow the same to happen through SuccessAction=exit.

v2: update for 'exit' and 'exit-force'
2018-10-17 19:32:07 +02:00
Zbigniew Jędrzejewski-Szmek afa6206583 units: use SuccessAction=poweroff-force in systemd-poweroff.service
Explicit systemctl calls remain in systemd-halt.service and the system
systemd-exit.service. To convert systemd-halt, we'd need to add
SuccessAction=halt-force. Halting doesn't make much sense, so let's just
leave that is. systemd-exit.service will be converted in the next commit.
2018-10-17 19:31:50 +02:00
Zbigniew Jędrzejewski-Szmek d85515edcf units: use SuccessAction=reboot-force in systemd-reboot.service 2018-10-17 19:31:50 +02:00
Zbigniew Jędrzejewski-Szmek 631c9b7bf2 units: use SuccessAction=exit-force in systemd-exit.service
Fixes #10414.

v2:
- rename .service.in to .service
- rename 'exit' to 'exit-force'
2018-10-17 19:31:50 +02:00