Zbigniew Jędrzejewski-Szmek [Fri, 23 Mar 2018 12:54:20 +0000 (13:54 +0100)]
man: add a note about "archived" journal files and when files can be copied
Issue #6673 requests advice on backup strategy. But the right backup strategy
depends on many factors, too many to describe in a man page. So let's just
provide some general information which files are mutable and that it is always
safe to use/copy files.
Closes #6673.
Zbigniew Jędrzejewski-Szmek [Fri, 23 Mar 2018 12:15:19 +0000 (13:15 +0100)]
man: add a note about $XDG_SEAT and $XDG_VTNR to pam_systemd(8)
Issue #6499 requests that a mention that those varibles can be set in the
environment is added. But the man page already says that. There isn't much
detail, but a man page does not need to and in this case should not include
all the details. Instead a note is added that those vars can be derived from
$DISPLAY.
Closes #6499.
Zbigniew Jędrzejewski-Szmek [Fri, 23 Mar 2018 11:59:09 +0000 (12:59 +0100)]
man: add link and list of known attrs to systemd-gpt-auto-generator(8)
Fixes #7859.
Zbigniew Jędrzejewski-Szmek [Wed, 21 Mar 2018 15:38:51 +0000 (16:38 +0100)]
man: add missing headers to glib-event-glue.c
Zbigniew Jędrzejewski-Szmek [Wed, 21 Mar 2018 15:35:02 +0000 (16:35 +0100)]
man: fix compilation of journal-iterate-poll.c
Our examples should compile...
Zbigniew Jędrzejewski-Szmek [Wed, 21 Mar 2018 19:02:49 +0000 (20:02 +0100)]
man: drop license header in glib-event-glue.c
We're moving towards just SPDX license identifiers, and the boilerplate
is especially annoying in a man page. Also adjust to the smaller indentation
to make the code fit better on a page.
Zbigniew Jędrzejewski-Szmek [Wed, 21 Mar 2018 15:32:17 +0000 (16:32 +0100)]
man: move examples out of sd_journal_get_fd into separate files
man/.dir-locals is to keep indentation under control.
This makes it much easier to compile and run those examples, c.f. #7578.
v2:
- copy more of .dir-locals.el from the root to man/.dir-locals.el
(I though emacs would inherit from the one in the parent dir, but
it seems it just uses its own broken defaults, including
indent-tabs-mode by default.)
Zbigniew Jędrzejewski-Szmek [Wed, 21 Mar 2018 15:07:20 +0000 (16:07 +0100)]
man: add a note that nspawn gives access to network by default
Fixes #6546.
Lennart Poettering [Wed, 21 Mar 2018 11:52:18 +0000 (12:52 +0100)]
ac-power: add simple getopt() argument parsing to systemd-ac-power (#8516)
We should probably do that for all our tools, hence fill in this gap
here.
Zbigniew Jędrzejewski-Szmek [Wed, 21 Mar 2018 11:50:49 +0000 (12:50 +0100)]
Merge pull request #8508 from poettering/more-cocci
two new coccinelle rules files and their results
Peter A. Bigot [Wed, 21 Mar 2018 11:42:04 +0000 (06:42 -0500)]
time-sync-wait: add service (#8494)
This one-shot service waits until the kernel time has been set to
synchronized.
Lennart Poettering [Wed, 21 Mar 2018 11:37:54 +0000 (12:37 +0100)]
Merge pull request #8313 from alexgartrell/compression-threshold
Compression threshold
Lennart Poettering [Wed, 21 Mar 2018 11:36:47 +0000 (12:36 +0100)]
Merge pull request #8368 from yuwata/nss-systemd-getpwent
nss-systemd: make dynamic users enumerable by `getent`
Lennart Poettering [Wed, 21 Mar 2018 11:10:01 +0000 (12:10 +0100)]
dissect: add dissect_image_and_warn() that unifies error message generation for dissect_image() (#8517)
Lennart Poettering [Wed, 21 Mar 2018 11:03:45 +0000 (12:03 +0100)]
move MANAGER_IS_RELOADING() check into manager_recheck_{dbus|journal}() (#8510)
Let's better check this inside of the call than before it, so that we
never issue this while reloading, even should these calls be called due
to other reasons than just the unit notify.
This makes sure the reload state is unset a bit earlier in
manager_reload() so that we can safely call this function from there and
they do the right thing.
Follow-up for
e63ebf71edd7947f29389c72e851d8df5c7bedda.
Lennart Poettering [Wed, 21 Mar 2018 10:59:56 +0000 (11:59 +0100)]
fileio: port parse_env_file_internal() to use _cleanup_free_ (#8511)
Long Li [Wed, 21 Mar 2018 10:51:28 +0000 (03:51 -0700)]
v3: Properly parsing SCSI Hyperv devices (#8509)
Since 2016, Hyperv devices moved to using standard way to expose UUID to sysfs. Fix the parsing function to work with the newer format.
Change log:
v2: changed code to work with both old and new path format
v3: changed guid_str_len type to size_t, fixed length in char guid[] in handle_scsi_hyperv()
Lennart Poettering [Wed, 21 Mar 2018 10:50:57 +0000 (11:50 +0100)]
Merge pull request #8487 from keszybz/oss-fuzz-fixes
Oss fuzz fixes, another batch
Lennart Poettering [Wed, 21 Mar 2018 10:48:40 +0000 (11:48 +0100)]
selinux: let's fully (and statically) initialize log callback union (#8512)
We can make this const and static, and initialize this ahead of time and
fully, hence let's do that.
Zbigniew Jędrzejewski-Szmek [Wed, 21 Mar 2018 10:48:06 +0000 (11:48 +0100)]
Merge pull request #8513 from poettering/journal-minifixes
two minor journal fixes
Lennart Poettering [Wed, 21 Mar 2018 10:46:49 +0000 (11:46 +0100)]
sd-bus: drop fd_nonblock() calls that are implied by rearrange_stdio() (#8514)
Lennart Poettering [Wed, 21 Mar 2018 10:46:08 +0000 (11:46 +0100)]
coredumpctl: drop unnecessary NULL initialization, and use const where possible (#8515)
Yu Watanabe [Thu, 8 Mar 2018 03:53:43 +0000 (12:53 +0900)]
doc: update TODO
Yu Watanabe [Wed, 21 Mar 2018 04:39:03 +0000 (13:39 +0900)]
nss-systemd: make dynamic users enumerable by `getent`
This adds `setpwent()`, `getpwent_r()`, `endpwent()`, `setgrent()`,
`getgrent_r()`, and `endgrent()` interfaces to nss-systemd library.
Thus, dynamic users can be enumerated by e.g. `getent passwd` command.
Yu Watanabe [Tue, 6 Mar 2018 06:39:26 +0000 (15:39 +0900)]
nss-systemd: define dynamic user properties
Yu Watanabe [Tue, 6 Mar 2018 12:31:16 +0000 (21:31 +0900)]
nss-systemd: cleanup bypassing dbus logic
Yu Watanabe [Wed, 21 Mar 2018 04:11:01 +0000 (13:11 +0900)]
core: add new dbus method GetDynamicUsers
This intruduces a new dbus method GetDynamicUsers for systemd1.Manager,
which enumerates all dynamic users realized in the system.
Zbigniew Jędrzejewski-Szmek [Tue, 20 Mar 2018 23:36:35 +0000 (00:36 +0100)]
Restore naming of IOPRIO_PRIO defines from linux/ioprio.h
This undoes part of
10062bbc35a28e95897f66fa5f4991b9b1f9df5d.
Zbigniew Jędrzejewski-Szmek [Mon, 19 Mar 2018 14:43:35 +0000 (15:43 +0100)]
core/load-fragment: reject overly long paths early
No need to go through the specifier_printf() if the path is already too long in
the unexpanded form (since specifiers increase the length of the string in all
practical cases).
In the oss-fuzz test case, valgrind reports:
total heap usage: 179,044 allocs, 179,044 frees, 72,687,755,703 bytes allocated
and the original config file is ~500kb. This isn't really a security issue,
since the config file has to be trusted any way, but just a matter of
preventing accidental resource exhaustion.
https://oss-fuzz.com/v2/issue/
4651449704251392/6977
While at it, fix order of arguments in the neighbouring log_syntax() call.
Zbigniew Jędrzejewski-Szmek [Mon, 19 Mar 2018 08:21:02 +0000 (09:21 +0100)]
basic/calendarspec: add check for repeat values that would overflow
https://oss-fuzz.com/v2/issue/
4651449704251392/7004
Lennart Poettering [Tue, 20 Mar 2018 19:41:30 +0000 (20:41 +0100)]
journal: don't insist that the journal file header's boot ID matches the last entry
We update the boot ID whenever the file is opened for writing (i.e. set
to ONLINE stat), even if we never write a single entry to it. Hence,
don't insist that the last entry's boot ID matches the file header.
As pointed out by Matthijs van Duin:
https://lists.freedesktop.org/archives/systemd-devel/2018-March/040499.html
Lennart Poettering [Tue, 20 Mar 2018 19:37:59 +0000 (20:37 +0100)]
journal-file: drop unused tail_entry_monotonic_valid field.
As pointed out by Matthijs van Duin:
https://lists.freedesktop.org/archives/systemd-devel/2018-March/040499.html
Alex Gartrell [Tue, 27 Feb 2018 17:37:23 +0000 (09:37 -0800)]
journal: make the compression threshold tunable
Allow a user to set a number of bytes as Compress to use as the compression
threshold.
Lennart Poettering [Tue, 20 Mar 2018 19:57:37 +0000 (20:57 +0100)]
coccinelle: always use fcntl(fd, FD_DUPFD, 3) instead of dup(fd)
Let's avoid fds 0…2 for safety reasons.
Lennart Poettering [Tue, 20 Mar 2018 19:36:09 +0000 (20:36 +0100)]
coccinelle: make use of DIV_ROUND_UP() wherever appropriate
Let's use our macros where we can
Alex Gartrell [Tue, 27 Feb 2018 05:56:35 +0000 (21:56 -0800)]
journal: provide compress_threshold_bytes parameter
Previously the compression threshold was hardcoded to 512, which meant that
smaller values wouldn't be compressed. This left some storage savings on the
table, so instead, we make that number tunable.
Zbigniew Jędrzejewski-Szmek [Tue, 20 Mar 2018 17:20:01 +0000 (18:20 +0100)]
basic/fs-util: skip fsync_directory_of_file() if /proc/self/fd/ is not available (#8386)
When systemd is running under lorax (in Fedora compose process), it'd think that
it failed to write /etc/machine-id, even though the write succeeded, because
fsync_directory_of_file() would fail, because /proc/self/fd/ is not available.
fsync_directory_of_file() is mostly an additional safety net, so I think it's best
to just silently ignore the error.
Strace of pid1:
35791 stat("/etc", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
35791 openat(AT_FDCWD, "/etc/machine-id", O_RDWR|O_CREAT|O_NOCTTY|O_CLOEXEC, 0444) = 3
35791 umask(022) = 000
35791 read(3, "", 38) = 0
35791 openat(AT_FDCWD, "/var/lib/dbus/machine-id", O_RDONLY|O_NOCTTY|O_NOFOLLOW|O_CLOEXEC) = -1 ENOENT (No such file o
r directory)
35791 openat(AT_FDCWD, "/sys/class/dmi/id/product_name", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
35791 openat(AT_FDCWD, "/sys/class/dmi/id/sys_vendor", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
35791 openat(AT_FDCWD, "/sys/class/dmi/id/board_vendor", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
35791 openat(AT_FDCWD, "/sys/class/dmi/id/bios_vendor", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
35791 access("/proc/xen", F_OK) = -1 ENOENT (No such file or directory)
35791 openat(AT_FDCWD, "/sys/hypervisor/type", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
35791 openat(AT_FDCWD, "/proc/cpuinfo", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
35791 getrandom("\xb8\x82\xed\xd4\x35\x11\xd0\xeb\xa6\x79\xd7\x31\x6e\x7b\x99\xce", 16, GRND_NONBLOCK) = 16
35791 writev(2, [{iov_base="Initializing machine ID from random generator.", iov_len=46}, {iov_base="\n", iov_len=1}],
2) = 47
35791 lseek(3, 0, SEEK_SET) = 0
35791 ftruncate(3, 0) = 0
35791 write(3, "
b882edd4351140eba679d7316e7b99ce\n", 33) = 33
35791 fsync(3) = 0
35791 fstat(3, {st_mode=S_IFREG|0444, st_size=33, ...}) = 0
35791 readlinkat(AT_FDCWD, "/proc/self/fd/3", 0x564df8c694c0, 99) = -1 ENOENT (No such file or directory)
35791 close(3) = 0
35791 umask(022) = 022
35791 openat(AT_FDCWD, "/run/machine-id", O_WRONLY|O_CREAT|O_NOCTTY|O_TRUNC|O_CLOEXEC, 0444) = 3
35791 write(3, "
b882edd4351140eba679d7316e7b99ce\n", 33) = 33
35791 close(3) = 0
35791 umask(022) = 022
35791 mount("/run/machine-id", "/etc/machine-id", NULL, MS_BIND, NULL) = 0
35791 writev(2, [{iov_base="Installed transient /etc/machine-id file.", iov_len=41}, {iov_base="\n", iov_len=1}], 2) = 42
35791 mount(NULL, "/etc/machine-id", NULL, MS_RDONLY|MS_REMOUNT|MS_BIND, NULL) = 0
https://bugzilla.redhat.com/show_bug.cgi?id=1552843
Lennart Poettering [Tue, 20 Mar 2018 17:17:57 +0000 (18:17 +0100)]
Merge pull request #8440 from keszybz/use-cleanup-in-efi
Use cleanup in sd-boot
Zbigniew Jędrzejewski-Szmek [Tue, 20 Mar 2018 17:07:17 +0000 (18:07 +0100)]
nspawn: move network namespace creation to a separate step (#8430)
Fixes #8427.
Unsharing the namespace in a separate step changes the ownership of
/proc/net/ip_tables_names (and related files) from nobody:nobody to
root:root. See [1] and [2] for all the details.
[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=
f13f2aeed154da8e48f90b85e720f8ba39b1e881
[2] https://bugzilla.netfilter.org/show_bug.cgi?id=1064#c9
Lennart Poettering [Tue, 20 Mar 2018 16:38:30 +0000 (17:38 +0100)]
Merge pull request #8106 from dqminh/route-expires-kernel
move route expiration to kernel
Filipe Brandenburger [Tue, 20 Mar 2018 16:21:36 +0000 (09:21 -0700)]
mkosi: set file permissions in copy of source tree (#8370)
Meson keeps permissions around during the build, so details of how umask
was set when cloning the original git tree will leak all the way to the
installed files in the mkosi image.
So reset the permissions of the files in the copy of the tree before
starting the build.
Also set the umask explicitly.
Tested by creating a mkosi image and booting it on a tree that was
cloned with a umask of 027, confirmed that the *.target files were not
created as world-unreadable anymore.
Mathieu Malaterre [Tue, 20 Mar 2018 15:08:20 +0000 (16:08 +0100)]
seccomp: enable RestrictAddressFamilies on ppc (#8505)
In commit
da1921a5c3 ppc64/ppc64el were added as supported architectures for
socketcall() for the POWER family. Extend the support for the 32bits
architectures.
Lennart Poettering [Tue, 20 Mar 2018 11:16:43 +0000 (12:16 +0100)]
Merge pull request #8499 from fbuihuu/shadow-support-nis
sysusers: also add support for NIS entries in /etc/shadow
Franck Bui [Tue, 20 Mar 2018 10:38:00 +0000 (11:38 +0100)]
sysusers: make sure to reset errno before calling fget*ent()
Due to the glibc interface we have to test errno in various places to detect if
an error occured after calling fget*ent() helpers.
Franck Bui [Tue, 20 Mar 2018 08:32:05 +0000 (09:32 +0100)]
sysusers: also add support for NIS entries in /etc/shadow
Commit
563dc6f8e2cda4114dd20f32655890ed378c3740 added support for
/etc/{passwd,group} only but since nsswitch.conf(5) appears to document the NIS
entries also for shadow, let's support this case too.
Jui-Chi Ricky Liang [Tue, 20 Mar 2018 08:54:18 +0000 (16:54 +0800)]
v4l_id: check mplane video capture and output capailities (#8464)
Video devices using mplane buffer API declare capture and output
capabilities with V4L2_CAP_VIDEO_CAPTURE_MPLANE and
V4L2_CAP_VIDEO_OUTPUT_MPLANE.
Zbigniew Jędrzejewski-Szmek [Tue, 20 Mar 2018 08:54:01 +0000 (09:54 +0100)]
man: use unicode ellipsis in one more place (#8496)
Also add note where it should *not* be used.
https://github.com/systemd/systemd/pull/8408#discussion_r175606771
Lennart Poettering [Tue, 20 Mar 2018 08:53:34 +0000 (09:53 +0100)]
Merge pull request #8452 from keszybz/use-libmount-more
Use libmount in systemd-shutdown, add tests
Matteo F. Vescovi [Tue, 20 Mar 2018 06:41:19 +0000 (07:41 +0100)]
hwdb: ThinkPad 4x0s and X1 Carbon 3rd gen LEDs (#8492)
Salvo 'LtWorf' Tomaselli [Mon, 19 Mar 2018 18:19:53 +0000 (19:19 +0100)]
hwdb: ThinkPad T560 doesn't have a caps lock led (#8490)
Similar to
16bed3afa1b916ace5e927392a1baab9dd9ff963, this model also doesn't have the
LED.
```
cat /sys/class/dmi/id/modalias
dmi:bvnLENOVO:bvrN1KET16W(1.03):bd01/20/2016:svnLENOVO:pn20FH001AMX:pvrThinkPadT560:rvnLENOVO:rn20FH001AMX:rvrSDK0J40705WIN:cvnLENOVO:ct10:cvrNone:
```
Filipe Brandenburger [Mon, 19 Mar 2018 17:05:49 +0000 (10:05 -0700)]
macros: fix sysusers_create_inline (#8489)
This typo was introduced in commit
dd2490ae12ad1e when using
here-documents for the macro values.
Zbigniew Jędrzejewski-Szmek [Mon, 19 Mar 2018 16:58:14 +0000 (17:58 +0100)]
Merge pull request #8488 from yuwata/client-update
Many client updates
Yu Watanabe [Mon, 19 Mar 2018 15:40:05 +0000 (00:40 +0900)]
resolve: show more global settings in `systemd-resolve --status`
Closes #8455.
Yu Watanabe [Mon, 19 Mar 2018 05:29:22 +0000 (14:29 +0900)]
resolve: expose global LLMNR, MulticastDNS, and DNSSEC settings as bus property
Yu Watanabe [Mon, 19 Mar 2018 15:38:36 +0000 (00:38 +0900)]
doc: update TODO
Yu Watanabe [Mon, 19 Mar 2018 15:37:00 +0000 (00:37 +0900)]
bus-util: introduce bus_message_print_all_properties()
Then, use it where applicable.
Yu Watanabe [Mon, 19 Mar 2018 15:20:39 +0000 (00:20 +0900)]
systemctl: use bus_map_all_properties() in status command
Yu Watanabe [Mon, 19 Mar 2018 15:09:04 +0000 (00:09 +0900)]
systemctl: use string table for show()
Yu Watanabe [Mon, 19 Mar 2018 14:46:29 +0000 (23:46 +0900)]
bus-util: make bus_map_all_properties() not copy string
Paride Legovini [Mon, 19 Mar 2018 14:56:11 +0000 (15:56 +0100)]
hwdb: ThinkPad T450s doesn't have a caps lock led (#8433)
Yu Watanabe [Thu, 15 Mar 2018 17:35:29 +0000 (02:35 +0900)]
bus-util: store boolean message to bool
Yu Watanabe [Thu, 15 Mar 2018 09:44:34 +0000 (18:44 +0900)]
systemctl: use bus_map_all_properties() in list-dependencies command
Yu Watanabe [Wed, 14 Mar 2018 08:48:29 +0000 (17:48 +0900)]
tree-wide: voidify pager_open()
Even if pager_open() fails, in general, we should continue the operations.
All erroneous cases in pager_open() show log message in the function.
So, it is not necessary to check the returned value.
Yu Watanabe [Wed, 14 Mar 2018 06:10:46 +0000 (15:10 +0900)]
man: mention 'status' is the default command for timedatectl
Yu Watanabe [Wed, 14 Mar 2018 06:09:28 +0000 (15:09 +0900)]
timedatectl: use dispatch_verb()
Yu Watanabe [Wed, 14 Mar 2018 05:52:45 +0000 (14:52 +0900)]
man: mention 'status' is the default command for localectl
Yu Watanabe [Wed, 14 Mar 2018 05:50:40 +0000 (14:50 +0900)]
localectl: use dispatch_verb()
Yu Watanabe [Wed, 14 Mar 2018 05:29:55 +0000 (14:29 +0900)]
hostnamectl: use dispatch_verb()
Yu Watanabe [Wed, 14 Mar 2018 05:06:50 +0000 (14:06 +0900)]
man: mention that 'status' is the default command for `hostnamectl`
Yu Watanabe [Wed, 14 Mar 2018 08:46:34 +0000 (17:46 +0900)]
coredumpctl: use dispatch_verb()
Yu Watanabe [Mon, 12 Mar 2018 08:47:16 +0000 (17:47 +0900)]
busctl: drop redundant pager_open()
Yu Watanabe [Mon, 12 Mar 2018 08:45:42 +0000 (17:45 +0900)]
busctl: add missing oom check
Yu Watanabe [Tue, 13 Mar 2018 20:09:16 +0000 (05:09 +0900)]
busctl: use dispatch_verb()
Yu Watanabe [Mon, 12 Mar 2018 05:05:08 +0000 (14:05 +0900)]
networkctl,hwdb: make verbs static
Yu Watanabe [Mon, 19 Mar 2018 09:35:41 +0000 (18:35 +0900)]
Merge pull request #8399 from keszybz/systemctl-kexec
Systemctl kexec buglet fixes
Yu Watanabe [Mon, 19 Mar 2018 09:32:30 +0000 (18:32 +0900)]
Merge pull request #8408 from keszybz/ln-relative
bugs.fd.o bug archelogy
Jan Janssen [Mon, 19 Mar 2018 09:27:49 +0000 (10:27 +0100)]
shutdown: Don't limit unmount attempts prematurely (#8469)
Once upon a time shutdown.c didn't have the logic to check whether any
unmount attempts succeeded or not. So instead it kept looping for
a fixed amount and hoped all was right. Nowadays, we do know if we
changed anything during a iteration and also stop looping then, but
we still limit ourselves to FINALIZE_ATTEMPTS.
But, theoretically, we could have such a complicated and nested
setup that would survive that limit, leaving stuff around we
might actually be able to unmount. And we could also end up in a
situation where the extra loop with raised unmount error level could
be skipped too.
So let's just drop the retries logic and rely fully on the changed
flag.
futpib [Mon, 19 Mar 2018 09:25:07 +0000 (12:25 +0300)]
hwdb: fix accelerometer mount matrix for Asus TP300LD (#8327) (#8463)
Zbigniew Jędrzejewski-Szmek [Mon, 19 Mar 2018 08:07:44 +0000 (09:07 +0100)]
macros: use here-docs instead of echo (#8480)
It's common for sysusers files to contain quotes (in particular around the
comment/GECOS field), and using echo "..." is very likely to not work properly
in that case. Let's use <<EOF redirection. It's not bulletproof, but should
work in general.
Yu Watanabe [Mon, 19 Mar 2018 08:06:42 +0000 (17:06 +0900)]
Merge pull request #8476 from EliaGeretto/n550jv-touchpad-fix
hwdb: correct touchpad resolution for Asus N550JV
Elia Geretto [Mon, 19 Mar 2018 07:02:40 +0000 (08:02 +0100)]
hwdb: Correct touchpad resolution for Asus N550JV
Elia Geretto [Mon, 19 Mar 2018 07:00:28 +0000 (08:00 +0100)]
hwdb: Split touchpad rules for X550CC and S550C
Evgeny Vereshchagin [Sun, 18 Mar 2018 21:06:44 +0000 (00:06 +0300)]
Merge pull request #8461 from keszybz/oss-fuzz-fixes
Oss fuzz fixes
Zbigniew Jędrzejewski-Szmek [Sun, 18 Mar 2018 11:51:31 +0000 (12:51 +0100)]
core/unit: delay creating a stack variable until after length has been checked
path_is_normalized() will reject paths longer than 4095 bytes, so it's better
to not create a stack variable of unbounded size, but instead do the check first
and only then do that allocation.
Also use _cleanup_ to make things a bit shorter.
https://oss-fuzz.com/v2/issue/
5424177403133952/7000
Zbigniew Jędrzejewski-Szmek [Sun, 18 Mar 2018 12:39:38 +0000 (13:39 +0100)]
fuzz-unit-file: simply do not test ListenNetlink= at all
msan doesn't understand sscanf with %ms, so it falsely reports unitialized
memory. Using sscanf with %ms is quite convenient in
socket_address_parse_netlink(), so let's just not run the fuzzer for
ListenNetlink= at all for now. If msan is fixed, we can remove this.
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=6884
Zbigniew Jędrzejewski-Szmek [Sun, 18 Mar 2018 12:01:13 +0000 (13:01 +0100)]
test-socket-util: add test for ListenNetlink with spaces
Zbigniew Jędrzejewski-Szmek [Sat, 17 Mar 2018 13:32:40 +0000 (14:32 +0100)]
basic/cgroup-util: fix typo in debug message
Rosen Penev [Sun, 18 Mar 2018 13:28:14 +0000 (06:28 -0700)]
systemd-link: Remove UDP Fragmentation Offload support. (#8183)
Support was killed in kernel 4.15 as well as ethtool 4.13.
Justification was lack of use by drivers and too much of a maintenance burden.
https://www.spinics.net/lists/netdev/msg443815.html
Also moved config_parse_warn_compat to conf-parser.[ch] to fix compile errors.
Yu Watanabe [Sun, 18 Mar 2018 11:29:55 +0000 (20:29 +0900)]
Merge pull request #8471 from filbranden/envnewline1
basic/env-util: Allow newlines in values of environment variables
Yu Watanabe [Sun, 18 Mar 2018 10:57:18 +0000 (19:57 +0900)]
Merge pull request #8468 from fbuihuu/sysusers-support-nis
Sysusers support nis
Fixes #8467.
Karol Augustin [Sun, 18 Mar 2018 10:40:07 +0000 (10:40 +0000)]
units: Fix SuccessAction that belongs to [Unit] section not [Service] section (#8478)
Franck Bui [Thu, 15 Mar 2018 12:39:38 +0000 (13:39 +0100)]
test: add a sysusers test with NIS entries
Yu Watanabe [Sat, 17 Mar 2018 10:45:38 +0000 (19:45 +0900)]
Merge pull request #8473 from keszybz/fix-dbus-reload
Fix dbus reload. Fixes #8414.
Zbigniew Jędrzejewski-Szmek [Fri, 16 Mar 2018 11:02:54 +0000 (12:02 +0100)]
fuzz: add test case for oss-fuzz #6897 and a work-around
The orignal reproducer from oss-fuzz depends on the hostname (via %H and %c).
The hostname needs a dash for msan to report this, so a simpler case from
@evverx with the dash hardcoded is also added.
The issue is a false positive from msan, which does not instruct stpncpy
(https://github.com/google/sanitizers/issues/926). Let's add a work-around
until this is fixed.
Zbigniew Jędrzejewski-Szmek [Fri, 16 Mar 2018 10:15:58 +0000 (11:15 +0100)]
unit-file: do not allow bogus IOSchedulingClass values
We have only three bits of space, i.e. 8 possible classes. Immediately reject
anything outside of that range. Add the fuzzer test case and an additional
unit test.
oss-fuzz #6908.
Zbigniew Jędrzejewski-Szmek [Thu, 15 Mar 2018 10:42:00 +0000 (11:42 +0100)]
core/service: fix memleak of USBFunctionStrings and USBFunctionDescriptors
oss-fuzz #6892.
Zbigniew Jędrzejewski-Szmek [Thu, 15 Mar 2018 10:21:00 +0000 (11:21 +0100)]
Add .gitattributes for test/fuzz-regressions
Those reproducers are essentially binary, hence let's ignore whitespace
in them.
Zbigniew Jędrzejewski-Szmek [Thu, 15 Mar 2018 09:12:48 +0000 (10:12 +0100)]
basic/calendarspec: set a limit on length of calendarspec component chains
We probably should allow very deep calls of our recursive functions. Let's add
a limit to avoid resource exhaustion. 240 is 10 per hour (if somebody is using
this for time based triggers...), so it should be more than enough for most use
cases, and is conveniently below the 250 stack limit in msan.
oss-fuzz #6917.
Filipe Brandenburger [Fri, 16 Mar 2018 23:30:42 +0000 (16:30 -0700)]
test-execute: Introduce tests for environment values containing newlines
Also fix one case where the presence of a newline was used to generate
an invalid environment assignment.
Tested: with mkosi, which builds the local tree and run ninja tests.
Zbigniew Jędrzejewski-Szmek [Fri, 16 Mar 2018 19:46:39 +0000 (20:46 +0100)]
core/manager: move some comments to a better place