|
Ran
|
Jobs
1
|
Files
1883
|
Run time
4min
|
Badge
README BADGES
|
push
github
core/device: do not drop backslashes in SYSTEMD_WANTS=/SYSTEMD_USER_WANTS= (#35869) Let consider the following udev rules: ``` PROGRAM="/usr/bin/systemd-escape foo-bar-baz", ENV{SYSTEMD_WANTS}+="test1@$result.service" PROGRAM="/usr/bin/systemd-escape aaa-bbb-ccc", ENV{SYSTEMD_WANTS}+="test2@$result.service" ``` Then, a device expectedly gains a property: ``` SYSTEMD_WANTS=test1@foo\x2dbar\x2dbaz.service test2@aaa\x2dbbb\x2dccc.service ``` After the event being processed by udevd, PID1 processes the device, the property previously was parsed with `extract_first_word(EXTRACT_UNQUOTE)`, then the device unit gained the following dependencies: ``` Wants=test1@foox2dbarx2dbaz.service test2@aaax2dbbbx2dccc.service ``` So both `%i` and `%I` for the template services did not match with the original data, and it was hard to use `systemd-escape` in `PROGRAM=` udev rule token. This makes the property parsed with `extract_first_word(EXTRACT_UNQUOTE|EXTRACT_RETAIN_ESCAPE)`, hence the device unit now gains the following dependencies: ``` Wants=test1@foo\x2dbar\x2dbaz.service test2@aaa\x2dbbb\x2dccc.service ``` and `%I` for the template services match with the original data. Fixes a bug caused by ceed8f0c8 (v233). Fixes #16735. Replaces #16737 and #35768.
40 of 40 new or added lines in 2 files covered. (100.0%)
407 existing lines in 13 files now uncovered.291321 of 407761 relevant lines covered (71.44%)
696525.16 hits per line
| Lines | Coverage | ∆ | File |
|---|---|---|---|
| 99 |
80.78 |
80.78% | src/udev/udev-rules.c |
| 68 |
78.45 |
78.45% | src/core/job.c |
| 54 |
65.58 |
65.58% | src/basic/mountpoint-util.c |
| 50 |
77.02 |
77.02% | src/network/networkd-radv.c |
| 32 |
82.28 |
82.28% | src/shared/userdb.c |
| 23 |
84.43 |
84.43% | src/udev/udev-event.c |
| 22 |
76.92 |
76.92% | src/shared/pretty-print.c |
| 19 |
62.2 |
62.2% | src/udev/udev-dump.c |
| 17 |
79.43 |
79.43% | src/basic/pidfd-util.c |
| 12 |
75.32 |
75.32% | src/udev/udevadm-test.c |
| 4 |
72.31 |
72.31% | src/shared/machine-id-setup.c |
| 4 |
78.57 |
78.57% | src/basic/fd-util.c |
| 3 |
95.38 |
95.38% | src/test/test-mountpoint-util.c |
| ID | Job ID | Ran | Files | Coverage | |
|---|---|---|---|---|---|
| 1 | 12919407857.1 | 1883 |
71.44 |
GitHub Action Run |
| Coverage | ∆ | File | Lines | Relevant | Covered | Missed | Hits/Line |
|---|