1
0
mirror of https://github.com/systemd/systemd.git synced 2024-12-22 17:35:35 +03:00
systemd/test/fuzz
Lennart Poettering ffec78c05b core: add new PropagateStopTo= dependency (and inverse)
This takes inspiration from PropagatesReloadTo=, but propagates
stop jobs instead of restart jobs.

This is defined based on exactly two atoms: UNIT_ATOM_PROPAGATE_STOP +
UNIT_ATOM_RETROACTIVE_STOP_ON_STOP. The former ensures that when the
unit the dependency is originating from is stopped based on user
request, we'll propagate the stop job to the target unit, too. In
addition, when the originating unit suddenly stops from external causes
the stopping is propagated too. Note that this does *not* include the
UNIT_ATOM_CANNOT_BE_ACTIVE_WITHOUT atom (which is used by BoundBy=),
i.e. this dependency is purely about propagating "edges" and not
"levels", i.e. it's about propagating specific events, instead of
continious states.

This is supposed to be useful for dependencies between .mount units and
their backing .device units. So far we either placed a BindsTo= or
Requires= dependency between them. The former gave a very clear binding
of the to units together, however was problematic if users establish
mounnts manually with different block device sources than our
configuration defines, as we there might come to the conclusion that the
backing device was absent and thus we need to umount again what the user
mounted. By combining Requires= with the new StopPropagatedFrom= (i.e.
the inverse PropagateStopTo=) we can get behaviour that matches BindsTo=
in every single atom but one: UNIT_ATOM_CANNOT_BE_ACTIVE_WITHOUT is
absent, and hence the level-triggered logic doesn't apply.

Replaces: #11340
2021-05-25 16:03:03 +02:00
..
fuzz-bus-match fuzz-bus-match: add example from bugzilla#1935084 2021-03-06 09:32:18 +01:00
fuzz-bus-message bus-message: avoid dereferencing a NULL pointer 2020-06-22 17:09:49 +02:00
fuzz-calendarspec shared: fix integer overflow in calendarspec 2020-05-15 16:07:29 +02:00
fuzz-catalog license: LGPL-2.1+ -> LGPL-2.1-or-later 2020-11-09 13:23:58 +09:00
fuzz-dhcp6-client dhcp6: use unaligned_read_be32() 2019-09-20 08:04:15 +00:00
fuzz-dhcp-server
fuzz-dns-packet resolve: slightly optimize dns_answer_add() 2020-12-30 04:14:22 +09:00
fuzz-env-file fuzz: add env-file fuzzer 2019-03-11 14:11:28 +01:00
fuzz-fido-id-desc udev: Add id program and rule for FIDO security tokens 2019-09-07 02:23:58 +09:00
fuzz-journal-remote journal-importer: ignore invalid field at one more place 2020-12-21 12:40:44 +00:00
fuzz-journald-audit journald: check whether sscanf has changed the value corresponding to %n 2018-11-17 11:25:19 +01:00
fuzz-journald-kmsg sd-device: do no allocate strings of unknown length on the stack 2021-05-05 17:15:04 +02:00
fuzz-journald-native-fd tests: add a fuzzer for server_process_native_file 2018-11-23 17:29:59 +01:00
fuzz-journald-stream tests: add a fuzzer for journald streams 2018-11-20 03:03:32 +01:00
fuzz-journald-syslog fuzz: unify the "fuzz-regressions" directory with the main corpus 2018-10-02 09:41:25 +02:00
fuzz-json add a test triggering https://github.com/systemd/systemd/issues/15907 2020-05-26 09:01:26 +02:00
fuzz-link-parser network,udev: move TransmitQueues=/ReceiveQueues= from .network to .link 2021-02-03 14:44:51 +09:00
fuzz-lldp tests: add an lldp fuzzer 2018-10-29 15:24:16 +00:00
fuzz-ndisc-rs fuzz: add testcase of oss-fuzz#10734 2018-11-12 02:04:35 +09:00
fuzz-netdev-parser networkd: correct batman-adv setting name (GatewayBandwidth) (#19539) 2021-05-08 14:39:32 +02:00
fuzz-network-parser network: nexthop: add Group= setting to configure multipath route with group nexthop 2021-05-22 04:59:40 +09:00
fuzz-nspawn-oci nspawn-oci: fix double free 2019-03-22 17:39:12 +01:00
fuzz-nspawn-settings fuzz: add testcase for oss-fuzz#13691 2019-03-15 23:54:30 +09:00
fuzz-systemctl-parse-argv fuzz-systemctl-parse-argv: add "telinit" to the argv[0] list 2021-02-22 14:22:07 +00:00
fuzz-udev-database fuzz: add a sample for fuzz-udev-database 2019-02-26 13:28:30 +09:00
fuzz-udev-rules rules.d: Properly quote $env{MODALIAS} 2021-05-24 18:40:01 +01:00
fuzz-unit-file core: add new PropagateStopTo= dependency (and inverse) 2021-05-25 16:03:03 +02:00
fuzz-varlink shared/varlink: add missing setting of output_buffer_allocated 2019-05-17 15:09:32 +02:00
fuzz-xdg-desktop xdg-autostart: avoid quadratic behaviour in strv parsing 2020-07-07 12:20:43 +02:00
.gitattributes
meson.build meson: call find_program() once and reuse the variable everywhere 2021-05-14 14:21:27 +02:00