]> git.ipfire.org Git - thirdparty/systemd.git/log
thirdparty/systemd.git
4 years agosd-radv: fix memleak 13939/head
Yu Watanabe [Tue, 5 Nov 2019 04:30:00 +0000 (13:30 +0900)] 
sd-radv: fix memleak

4 years agotest: add testcase for issue #13938
Yu Watanabe [Tue, 5 Nov 2019 01:49:07 +0000 (10:49 +0900)] 
test: add testcase for issue #13938

4 years agonetwork: fix memleak in route_prefix_free()
Yu Watanabe [Tue, 5 Nov 2019 01:46:44 +0000 (10:46 +0900)] 
network: fix memleak in route_prefix_free()

4 years agonetwork: fix typo
Yu Watanabe [Tue, 5 Nov 2019 01:42:19 +0000 (10:42 +0900)] 
network: fix typo

4 years agonetwork: fix invalid cleanup function
Yu Watanabe [Tue, 5 Nov 2019 01:39:15 +0000 (10:39 +0900)] 
network: fix invalid cleanup function

4 years agonetwork: fix memleak
Yu Watanabe [Tue, 5 Nov 2019 00:39:44 +0000 (09:39 +0900)] 
network: fix memleak

4 years agonetwork: use fix invalid free function
Yu Watanabe [Tue, 5 Nov 2019 00:36:39 +0000 (09:36 +0900)] 
network: use fix invalid free function

Fixes #13938.

4 years agocore, job: fix breakage of ordering dependencies by systemctl reload command
HATAYAMA Daisuke [Mon, 28 Oct 2019 10:35:24 +0000 (19:35 +0900)] 
core, job: fix breakage of ordering dependencies by systemctl reload command

Currently, systemctl reload command breaks ordering dependencies if it's
executed when its target service unit is in activating state.

For example, prepare A.service, B.service and C.target as follows:

    # systemctl cat A.service B.service C.target
    # /etc/systemd/system/A.service
    [Unit]
    Description=A

    [Service]
    Type=oneshot
    ExecStart=/usr/bin/echo A1
    ExecStart=/usr/bin/sleep 60
    ExecStart=/usr/bin/echo A2
    ExecReload=/usr/bin/echo A reloaded
    RemainAfterExit=yes

    # /etc/systemd/system/B.service
    [Unit]
    Description=B
    After=A.service

    [Service]
    Type=oneshot
    ExecStart=/usr/bin/echo B
    RemainAfterExit=yes

    # /etc/systemd/system/C.target
    [Unit]
    Description=C
    Wants=A.service B.service

Start them.

    # systemctl daemon-reload
    # systemctl start C.target

Then, we have:

    # LANG=C journalctl --no-pager -u A.service -u B.service -u C.target -b
    -- Logs begin at Mon 2019-09-09 00:25:06 EDT, end at Thu 2019-10-24 22:28:47 EDT. --
    Oct 24 22:27:47 localhost.localdomain systemd[1]: Starting A...
    Oct 24 22:27:47 localhost.localdomain systemd[1]: A.service: Child 967 belongs to A.service.
    Oct 24 22:27:47 localhost.localdomain systemd[1]: A.service: Main process exited, code=exited, status=0/SUCCESS
    Oct 24 22:27:47 localhost.localdomain systemd[1]: A.service: Running next main command for state start.
    Oct 24 22:27:47 localhost.localdomain systemd[1]: A.service: Passing 0 fds to service
    Oct 24 22:27:47 localhost.localdomain systemd[1]: A.service: About to execute: /usr/bin/sleep 60
    Oct 24 22:27:47 localhost.localdomain systemd[1]: A.service: Forked /usr/bin/sleep as 968
    Oct 24 22:27:47 localhost.localdomain systemd[968]: A.service: Executing: /usr/bin/sleep 60
    Oct 24 22:27:52 localhost.localdomain systemd[1]: A.service: Trying to enqueue job A.service/reload/replace
    Oct 24 22:27:52 localhost.localdomain systemd[1]: A.service: Merged into running job, re-running: A.service/reload as 1288
    Oct 24 22:27:52 localhost.localdomain systemd[1]: A.service: Enqueued job A.service/reload as 1288
    Oct 24 22:27:52 localhost.localdomain systemd[1]: A.service: Unit cannot be reloaded because it is inactive.
    Oct 24 22:27:52 localhost.localdomain systemd[1]: A.service: Job 1288 A.service/reload finished, result=invalid
    Oct 24 22:27:52 localhost.localdomain systemd[1]: B.service: Passing 0 fds to service
    Oct 24 22:27:52 localhost.localdomain systemd[1]: B.service: About to execute: /usr/bin/echo B
    Oct 24 22:27:52 localhost.localdomain systemd[1]: B.service: Forked /usr/bin/echo as 970
    Oct 24 22:27:52 localhost.localdomain systemd[970]: B.service: Executing: /usr/bin/echo B
    Oct 24 22:27:52 localhost.localdomain systemd[1]: B.service: Failed to send unit change signal for B.service: Connection reset by peer
    Oct 24 22:27:52 localhost.localdomain systemd[1]: B.service: Changed dead -> start
    Oct 24 22:27:52 localhost.localdomain systemd[1]: Starting B...
    Oct 24 22:27:52 localhost.localdomain echo[970]: B
    Oct 24 22:27:52 localhost.localdomain systemd[1]: B.service: Child 970 belongs to B.service.
    Oct 24 22:27:52 localhost.localdomain systemd[1]: B.service: Main process exited, code=exited, status=0/SUCCESS
    Oct 24 22:27:52 localhost.localdomain systemd[1]: B.service: Changed start -> exited
    Oct 24 22:27:52 localhost.localdomain systemd[1]: B.service: Job 1371 B.service/start finished, result=done
    Oct 24 22:27:52 localhost.localdomain systemd[1]: Started B.
    Oct 24 22:27:52 localhost.localdomain systemd[1]: C.target: Job 1287 C.target/start finished, result=done
    Oct 24 22:27:52 localhost.localdomain systemd[1]: Reached target C.
    Oct 24 22:27:52 localhost.localdomain systemd[1]: C.target: Failed to send unit change signal for C.target: Connection reset by peer
    Oct 24 22:28:47 localhost.localdomain systemd[1]: A.service: Child 968 belongs to A.service.
    Oct 24 22:28:47 localhost.localdomain systemd[1]: A.service: Main process exited, code=exited, status=0/SUCCESS
    Oct 24 22:28:47 localhost.localdomain systemd[1]: A.service: Running next main command for state start.
    Oct 24 22:28:47 localhost.localdomain systemd[1]: A.service: Passing 0 fds to service
    Oct 24 22:28:47 localhost.localdomain systemd[1]: A.service: About to execute: /usr/bin/echo A2
    Oct 24 22:28:47 localhost.localdomain systemd[1]: A.service: Forked /usr/bin/echo as 972
    Oct 24 22:28:47 localhost.localdomain systemd[972]: A.service: Executing: /usr/bin/echo A2
    Oct 24 22:28:47 localhost.localdomain echo[972]: A2
    Oct 24 22:28:47 localhost.localdomain systemd[1]: A.service: Child 972 belongs to A.service.
    Oct 24 22:28:47 localhost.localdomain systemd[1]: A.service: Main process exited, code=exited, status=0/SUCCESS
    Oct 24 22:28:47 localhost.localdomain systemd[1]: A.service: Changed start -> exited

The issue occurs not only in reload command, i.e.:

  - reload
  - try-restart
  - reload-or-restart
  - reload-or-try-restart commands

The cause of this issue is that job_type_collapse() doesn't take care of the
activating state.

Fixes: #10464
4 years agojournalctl: allow running vacuum on remote journals, too
Jan Kundrát [Sat, 2 Nov 2019 15:42:01 +0000 (16:42 +0100)] 
journalctl: allow running vacuum on remote journals, too

Right now the `systemd-journal-remote` service does not constrain its
resource usage (I just run out of space on my 100GB partition, for
example). This patch does not change that, but it at least makes it
possible to run something like:

  journalctl --directory /var/log/journal/remote --rotate --vacuum-size=90G

fixes #2376

Co-authored-by: Mike Auty <ikelos@gentoo.org>
4 years agoMerge pull request #13906 from yuwata/drop-missing-take2
Zbigniew Jędrzejewski-Szmek [Mon, 4 Nov 2019 12:41:37 +0000 (13:41 +0100)] 
Merge pull request #13906 from yuwata/drop-missing-take2

tree-wide: drop xxx.h when xxx-util.h is included

4 years agosd-boot: Skip adding boot entries when the loader does not exist
Jan Janssen [Fri, 1 Nov 2019 11:31:07 +0000 (12:31 +0100)] 
sd-boot: Skip adding boot entries when the loader does not exist

4 years agoallow an empty DefaultInstance= in configuration files
Jérémy Rosen [Fri, 1 Nov 2019 23:03:54 +0000 (00:03 +0100)] 
allow an empty DefaultInstance= in configuration files

It is currently possible to override the DefaultInstance via drop-ins but
not remove it completely. Allow to do that by specifying an empty
DefaultInstance=

4 years agoman/systemd.net-naming-scheme: fix typo
Jan Synacek [Mon, 4 Nov 2019 09:43:05 +0000 (10:43 +0100)] 
man/systemd.net-naming-scheme: fix typo

4 years agoutil: drop unnecessary headers from util.c 13906/head
Yu Watanabe [Sun, 3 Nov 2019 15:40:37 +0000 (00:40 +0900)] 
util: drop unnecessary headers from util.c

4 years agotree-wide: drop double newline
Yu Watanabe [Fri, 1 Nov 2019 09:33:24 +0000 (18:33 +0900)] 
tree-wide: drop double newline

4 years agotree-wide: drop input.h when missing_input.h is included
Yu Watanabe [Fri, 1 Nov 2019 09:28:32 +0000 (18:28 +0900)] 
tree-wide: drop input.h when missing_input.h is included

4 years agotree-wide: drop stdio.h when stdio-util.h is included
Yu Watanabe [Fri, 1 Nov 2019 09:27:33 +0000 (18:27 +0900)] 
tree-wide: drop stdio.h when stdio-util.h is included

4 years agotree-wide: drop signal.h when signal-util.h is included
Yu Watanabe [Fri, 1 Nov 2019 09:27:01 +0000 (18:27 +0900)] 
tree-wide: drop signal.h when signal-util.h is included

4 years agotree-wide: drop mman.h when missing_mman.h is included
Yu Watanabe [Fri, 1 Nov 2019 09:26:26 +0000 (18:26 +0900)] 
tree-wide: drop mman.h when missing_mman.h is included

4 years agotree-wide: drop magic.h when missing_magic.h is included
Yu Watanabe [Fri, 1 Nov 2019 09:24:45 +0000 (18:24 +0900)] 
tree-wide: drop magic.h when missing_magic.h is included

4 years agotree-wide: drop stat.h or statfs.h when stat-util.h is included
Yu Watanabe [Fri, 1 Nov 2019 09:23:26 +0000 (18:23 +0900)] 
tree-wide: drop stat.h or statfs.h when stat-util.h is included

4 years agotree-wide: drop socket.h when socket-util.h is included
Yu Watanabe [Fri, 1 Nov 2019 09:22:48 +0000 (18:22 +0900)] 
tree-wide: drop socket.h when socket-util.h is included

4 years agotree-wide: drop mntent.h when fstab-util.h is included
Yu Watanabe [Fri, 1 Nov 2019 09:21:33 +0000 (18:21 +0900)] 
tree-wide: drop mntent.h when fstab-util.h is included

4 years agotree-wide: drop libkmod.h when module-util.h is included
Yu Watanabe [Fri, 1 Nov 2019 09:20:59 +0000 (18:20 +0900)] 
tree-wide: drop libkmod.h when module-util.h is included

4 years agotree-wide: drop blkid.h when blkid-util.h is included
Yu Watanabe [Fri, 1 Nov 2019 09:20:31 +0000 (18:20 +0900)] 
tree-wide: drop blkid.h when blkid-util.h is included

4 years agotree-wide: drop acl.h when acl-util.h is included
Yu Watanabe [Fri, 1 Nov 2019 09:19:54 +0000 (18:19 +0900)] 
tree-wide: drop acl.h when acl-util.h is included

4 years agotree-wide: drop pwd.h and grp.h when user-util.h is included
Yu Watanabe [Fri, 1 Nov 2019 09:18:31 +0000 (18:18 +0900)] 
tree-wide: drop pwd.h and grp.h when user-util.h is included

4 years agotree-wide: drop time.h when time-util.h is included
Yu Watanabe [Fri, 1 Nov 2019 09:17:53 +0000 (18:17 +0900)] 
tree-wide: drop time.h when time-util.h is included

4 years agotree-wide: drop capability.h when capability-util.h is included
Yu Watanabe [Fri, 1 Nov 2019 09:17:16 +0000 (18:17 +0900)] 
tree-wide: drop capability.h when capability-util.h is included

4 years agotree-wide: drop sched.h when missing_sched.h is included
Yu Watanabe [Fri, 1 Nov 2019 09:16:18 +0000 (18:16 +0900)] 
tree-wide: drop sched.h when missing_sched.h is included

4 years agotree-wide: drop gcrypt.h when gcrypt-util.h is included
Yu Watanabe [Fri, 1 Nov 2019 08:57:13 +0000 (17:57 +0900)] 
tree-wide: drop gcrypt.h when gcrypt-util.h is included

4 years agotree-wide: drop locale.h when locale-util.h is included
Yu Watanabe [Fri, 1 Nov 2019 08:56:33 +0000 (17:56 +0900)] 
tree-wide: drop locale.h when locale-util.h is included

4 years agotree-wide: drop glob.h when glob-util.h is included
Yu Watanabe [Fri, 1 Nov 2019 08:56:05 +0000 (17:56 +0900)] 
tree-wide: drop glob.h when glob-util.h is included

4 years agotree-wide: drop dirent.h when dirent-util.h is included
Yu Watanabe [Fri, 1 Nov 2019 08:55:16 +0000 (17:55 +0900)] 
tree-wide: drop dirent.h when dirent-util.h is included

4 years agotree-wide: drop alloca.h when alloc-util.h is included
Yu Watanabe [Fri, 1 Nov 2019 08:46:59 +0000 (17:46 +0900)] 
tree-wide: drop alloca.h when alloc-util.h is included

4 years agotree-wide: drop string.h when string-util.h or friends are included
Yu Watanabe [Fri, 1 Nov 2019 08:44:54 +0000 (17:44 +0900)] 
tree-wide: drop string.h when string-util.h or friends are included

4 years agoMerge pull request #13899 from poettering/in-gid-tweak
Yu Watanabe [Sun, 3 Nov 2019 13:54:32 +0000 (22:54 +0900)] 
Merge pull request #13899 from poettering/in-gid-tweak

user-util: tweak to in_gid()

4 years agoMerge pull request #13909 from poettering/env-copy-pid
Yu Watanabe [Sun, 3 Nov 2019 13:46:42 +0000 (22:46 +0900)] 
Merge pull request #13909 from poettering/env-copy-pid

Fixes for the "saved_env" copy logic

4 years agonspawn: respect quiet on capabilities warning
Justin Trudell [Fri, 1 Nov 2019 19:00:16 +0000 (12:00 -0700)] 
nspawn: respect quiet on capabilities warning

4 years agofs-util: let's avoid unnecessary strerror()
Lennart Poettering [Fri, 1 Nov 2019 10:43:34 +0000 (11:43 +0100)] 
fs-util: let's avoid unnecessary strerror()

strerror() is not thread safe. Let's avoid it where it is easy hence.

(Ideally we'd not use it at all anymore, but that's sometimes a bit
nasty, not in this case though, where it is very easy to avoid)

Follow-up for: 27c3112dcbd1b5f171c36c32550d9c6331375b0b

4 years agoMerge pull request #13916 from ddstreet/test-network
Yu Watanabe [Sun, 3 Nov 2019 12:42:15 +0000 (21:42 +0900)] 
Merge pull request #13916 from ddstreet/test-network

test-network: minor changes to work better on Debian/Ubuntu autopkgtest

4 years agonspawn: mangle slice name
Lennart Poettering [Fri, 1 Nov 2019 10:21:05 +0000 (11:21 +0100)] 
nspawn: mangle slice name

It's user-facing, parsed from the command line and we typically mangle
in these cases, let's do so here too. (In particular as the identical
switch for systemd-run already does it.)

4 years agoMerge pull request #13905 from poettering/cpuset-fixes
Lennart Poettering [Fri, 1 Nov 2019 22:44:36 +0000 (23:44 +0100)] 
Merge pull request #13905 from poettering/cpuset-fixes

fixes to the cpuset cgroup logic

4 years agotest-network: Remove/replace non-capturing group regex 13916/head
Dan Streetman [Thu, 31 Oct 2019 16:19:23 +0000 (12:19 -0400)] 
test-network: Remove/replace non-capturing group regex

The systemd-networkd-tests.py has some regex that uses non-capturing
groups, but there is no need to use that with assertRegex; the
groups aren't referenced so it doesn't matter if it's capturing or
non-capturing.  However, there are a few places where optional groups
should have been used instead, so this changes that.

Specifically, groups like this:
(?:whatever |)
should actually be:
(whatever )?

Additionally, this is specifically needed for these tests to run on
Debian systems, because this assertRegex:
'Link File: (?:/usr)/lib/systemd/network/99-default.link'
needs to be:
'Link File: (/usr)?/lib/systemd/network/99-default.link'

4 years agotest: check /usr/lib and /lib for systemd binaries
Dan Streetman [Thu, 31 Oct 2019 10:44:20 +0000 (06:44 -0400)] 
test: check /usr/lib and /lib for systemd binaries

Fedora uses /usr/lib while Debian uses /lib; find the right location

4 years agotest/test-network/systemd-networkd-tests.py: suppress stderr for functionality checks
Dan Streetman [Thu, 31 Oct 2019 10:07:33 +0000 (06:07 -0400)] 
test/test-network/systemd-networkd-tests.py: suppress stderr for functionality checks

4 years agomkosi: Find hostname command on Arch Linux
Kevin Kuehler [Thu, 31 Oct 2019 22:41:32 +0000 (15:41 -0700)] 
mkosi: Find hostname command on Arch Linux

exec-specifier.service: Executing: /usr/bin/sh -c 'test mkosi-7d5e81c7b81c42338d060a6b98edd44a = $(hostname)'
/usr/bin/sh: hostname: command not found
/usr/bin/sh: line 0: test: mkosi-7d5e81c7b81c42338d060a6b98edd44a: unary operator expected
Received SIGCHLD from PID 7389 (sh).
Child 7389 (sh) died (code=exited, status=2/INVALIDARGUMENT)

gettext provides the hostname binary, but puts it in
/usr/lib/gettext/hostname, which is not part of the default $PATH. Using
inetutils instead puts the binary in /usr/bin/hostname.

4 years agoupdate TODO
Lennart Poettering [Fri, 1 Nov 2019 12:07:51 +0000 (13:07 +0100)] 
update TODO

4 years agostatic-destruct: add missing closing '(' in comment 13909/head
Lennart Poettering [Fri, 1 Nov 2019 10:31:20 +0000 (11:31 +0100)] 
static-destruct: add missing closing '(' in comment

4 years agopid1: rework environment block copy logic
Lennart Poettering [Fri, 1 Nov 2019 10:26:05 +0000 (11:26 +0100)] 
pid1: rework environment block copy logic

This reworks the logic introduced in
a5cede8c24fddda9b73f142e09b18b49adde1b9c (#13693).

First of all, let's move this out of util.c, since only PID 1 really
needs this, and there's no real need to have it in util.c.

Then, fix freeing of the variable. It previously relied on
STATIC_DESTRUCTOR_REGISTER() which however relies on static_destruct()
to be called explicitly. Currently only the main-func.h macros do that,
and PID 1 does not. (It might be worth investigating whether to do that,
but it's not trivial.) Hence the freeing wasn't applied.

Finally, an OOM check was missing, add it in.

4 years agocgroup: add missing OOM check, and shorten code a bit 13905/head
Lennart Poettering [Fri, 1 Nov 2019 09:22:03 +0000 (10:22 +0100)] 
cgroup: add missing OOM check, and shorten code a bit

cpu_set_to_range_string() can fail due to OOM. Handle that.

unit_write_settingf() exists, use it instead of formatting a string
beforehand.

cpu_set_add_all() can fail due to OOM. Let's avoid it if we don't have
to use it, just copy over the cpuset directly.

4 years agocpuset: fix indentation and log about OOM we otherwise ignore
Lennart Poettering [Fri, 1 Nov 2019 09:21:53 +0000 (10:21 +0100)] 
cpuset: fix indentation and log about OOM we otherwise ignore

4 years agocgroup: add some basic OOM safety where it was missing
Lennart Poettering [Fri, 1 Nov 2019 09:21:35 +0000 (10:21 +0100)] 
cgroup: add some basic OOM safety where it was missing

4 years agoNEWS: mention NetworkEmulatorDuplicateRate= setting
Yu Watanabe [Fri, 1 Nov 2019 02:46:00 +0000 (11:46 +0900)] 
NEWS: mention NetworkEmulatorDuplicateRate= setting

4 years agoMerge pull request #13888 from ssahani/qdisc
Yu Watanabe [Fri, 1 Nov 2019 02:44:10 +0000 (11:44 +0900)] 
Merge pull request #13888 from ssahani/qdisc

tc qdisc: netem add support to duplicate packets.

4 years agonetwork: DHCP server remove duplicate free
Susant Sahani [Thu, 31 Oct 2019 20:55:48 +0000 (21:55 +0100)] 
network: DHCP server remove duplicate free

4 years agoFix CID 1406578: Resource leaks (RESOURCE_LEAK)
Susant Sahani [Thu, 31 Oct 2019 13:25:16 +0000 (14:25 +0100)] 
Fix CID 1406578:  Resource leaks  (RESOURCE_LEAK)

** CID 1406578:  Resource leaks  (RESOURCE_LEAK)
/src/libsystemd-network/sd-dhcp-server.c: 155 in sd_dhcp_raw_option_new()

4 years agotest: add really basic in_gid() test 13899/head
Lennart Poettering [Thu, 31 Oct 2019 19:28:49 +0000 (20:28 +0100)] 
test: add really basic in_gid() test

4 years agouser-util: tweak to in_gid()
Lennart Poettering [Thu, 31 Oct 2019 19:27:34 +0000 (20:27 +0100)] 
user-util: tweak to in_gid()

Let's make this robust towards parallel updates to group lists. This is
not going to happen IRL, but it makes me sleep better at night: let's
iterate a couple of times in case the list is updated while we are at
it.

Follow-up for: f5e0b942af1e86993c21f4e5c84342bb10403dac

4 years agoMerge pull request #13895 from jsynacek/master
Anita Zhang [Thu, 31 Oct 2019 18:39:08 +0000 (11:39 -0700)] 
Merge pull request #13895 from jsynacek/master

sd-dhcp: fix resource leak

4 years agoMerge pull request #13891 from yuwata/basic-drop-missing
Anita Zhang [Thu, 31 Oct 2019 18:35:58 +0000 (11:35 -0700)] 
Merge pull request #13891 from yuwata/basic-drop-missing

tree-wide: drop missing.h

4 years agoMerge pull request #13892 from keur/mkosi_arch
Anita Zhang [Thu, 31 Oct 2019 18:22:37 +0000 (11:22 -0700)] 
Merge pull request #13892 from keur/mkosi_arch

Fix mkosi on Arch Linux

4 years agoUpdate to Fedora31
Jóhann B. Guðmundsson [Thu, 31 Oct 2019 14:51:41 +0000 (14:51 +0000)] 
Update to Fedora31

4 years agosd-dhcp: fix resource leak 13895/head
Jan Synacek [Thu, 31 Oct 2019 13:37:43 +0000 (14:37 +0100)] 
sd-dhcp: fix resource leak

CID#1406578

4 years agotc: qdisc remove some duplicate code 13888/head
Susant Sahani [Wed, 30 Oct 2019 18:13:33 +0000 (19:13 +0100)] 
tc: qdisc remove some duplicate code

4 years agoqdisc: netem add support to duplicate packets.
Susant Sahani [Wed, 30 Oct 2019 17:58:02 +0000 (18:58 +0100)] 
qdisc: netem add support to duplicate packets.

using this option the chosen percent of packets is duplicated before
queuing them

4 years agoFix mkosi on Arch Linux 13892/head
Kevin Kuehler [Thu, 31 Oct 2019 09:32:23 +0000 (02:32 -0700)] 
Fix mkosi on Arch Linux

/* test compression */
XZ compression finished (38280 -> 11756 bytes, 30.7%)
sh: diff: command not found
Assertion 'system(cmd) == 0' failed at src/journal/test-compress.c:198,
function test_compress_stream(). Aborting.

The journal compression test shells out to diff, so include diffutils as
a BuildPackage on Arch.

Remaining fixes in https://github.com/systemd/mkosi/pull/377

4 years agotree-wide: drop missing.h 13891/head
Yu Watanabe [Thu, 31 Oct 2019 02:07:23 +0000 (11:07 +0900)] 
tree-wide: drop missing.h

4 years agoMerge pull request #13510 from medhefgo/boot
Zbigniew Jędrzejewski-Szmek [Thu, 31 Oct 2019 08:21:13 +0000 (09:21 +0100)] 
Merge pull request #13510 from medhefgo/boot

sd-boot: Be silent on regular boots

4 years agotest: move {test,fuzz}-fido-id-desc.c into src/udev/fido_id
Yu Watanabe [Thu, 31 Oct 2019 01:37:42 +0000 (10:37 +0900)] 
test: move {test,fuzz}-fido-id-desc.c into src/udev/fido_id

4 years agomeson: correct man page deps
Lennart Poettering [Wed, 30 Oct 2019 17:55:45 +0000 (18:55 +0100)] 
meson: correct man page deps

4 years agonetworkd: dhcp server Support Vendor specific 43
Susant Sahani [Fri, 20 Sep 2019 02:22:17 +0000 (04:22 +0200)] 
networkd: dhcp server Support Vendor specific 43

Implementes https://tools.ietf.org/html/rfc2132

```
[DHCPServer]
SendRawOption=26:uint32:1400
SendRawOption=23:uint8:10

```
Frame 448: 350 bytes on wire (2800 bits), 350 bytes captured (2800 bits) on interface 0
Linux cooked capture
Internet Protocol Version 4, Src: 192.168.5.1, Dst: 192.168.5.11
User Datagram Protocol, Src Port: 67, Dst Port: 68
Dynamic Host Configuration Protocol (ACK)
    Message type: Boot Reply (2)
    Hardware type: Ethernet (0x01)
    Hardware address length: 6
    Hops: 0
    Transaction ID: 0x71f8de9d
    Seconds elapsed: 0
    Bootp flags: 0x0000 (Unicast)
    Client IP address: 0.0.0.0
    Your (client) IP address: 192.168.5.11
    Next server IP address: 0.0.0.0
    Relay agent IP address: 0.0.0.0
    Client MAC address: 1e:04:f8:b8:2f:d4 (1e:04:f8:b8:2f:d4)
    Client hardware address padding: 00000000000000000000
    Server host name not given
    Boot file name not given
    Magic cookie: DHCP
    Option: (53) DHCP Message Type (ACK)
        Length: 1
        DHCP: ACK (5)
    Option: (51) IP Address Lease Time
        Length: 4
        IP Address Lease Time: (3600s) 1 hour
    Option: (1) Subnet Mask (255.255.255.0)
        Length: 4
        Subnet Mask: 255.255.255.0
    Option: (3) Router
        Length: 4
        Router: 192.168.5.1
    Option: (6) Domain Name Server
        Length: 4
        Domain Name Server: 192.168.5.1
    Option: (42) Network Time Protocol Servers
        Length: 4
        Network Time Protocol Server: 192.168.5.1
    Option: (101) TCode
        Length: 13
        TZ TCode: Europe/Berlin
    Option: (43) Vendor-Specific Information
        Length: 9
        Value: 1701311a0431343030
    Option: (54) DHCP Server Identifier (192.168.5.1)
        Length: 4
        DHCP Server Identifier: 192.168.5.1
    Option: (255) End
        Option End: 255

```

4 years agoadd other worthy news
Christian Rebischke [Wed, 30 Oct 2019 22:15:32 +0000 (23:15 +0100)] 
add other worthy news

I think we can mention that systemd-resolved is able to validate IP
address certificates and prefer TLS 1.3 before TLS 1.2 now.

Also the `machinectl reboot` command actually works now.

Signed-off-by: Christian Rebischke <chris@nullday.de>
4 years agoMerge pull request #13884 from poettering/event-fd-close-fix
Anita Zhang [Wed, 30 Oct 2019 22:58:36 +0000 (15:58 -0700)] 
Merge pull request #13884 from poettering/event-fd-close-fix

sd-event: don't invalidate source type on disconnect

4 years agoadd systemd logo to README.md
Christian Rebischke [Wed, 30 Oct 2019 22:04:36 +0000 (23:04 +0100)] 
add systemd logo to README.md

The logo in the readme is hosted by github as the systemd group avatar.

Signed-off-by: Christian Rebischke <chris@nullday.de>
4 years agocalendarspec: fix calculation of timespec iterations that fall onto a DST change
Zbigniew Jędrzejewski-Szmek [Tue, 29 Oct 2019 21:14:39 +0000 (22:14 +0100)] 
calendarspec: fix calculation of timespec iterations that fall onto a DST change

If we tested a candidate time that would fall onto the DST change, and we
realized that it is now a valid time ('cause the given "hour" is missing),
we would jump to to beginning of the next bigger time period, i.e. the next
day.

mktime_or_timegm() already tells us what the next valid time is, so let's reuse
this, and continue the calculations at this point. This should allow us to
correctly jump over DST changes, but also leap seconds and similar.  It should
be OK even multiple days were removed from calendar, similarly to the
Gregorian-Julian transition. By reusing the information from normalization, we
don't have to make assumptions what the next valid time is.

Fixes #13745.

$ TZ=Australia/Sydney faketime '2019-10-06 01:50' build/systemd-analyze calendar 0/1:0/1 --iterations 20 | grep Iter
       Iter. #2: Sun 2019-10-06 01:52:00 AEST
       Iter. #3: Sun 2019-10-06 01:53:00 AEST
       Iter. #4: Sun 2019-10-06 01:54:00 AEST
       Iter. #5: Sun 2019-10-06 01:55:00 AEST
       Iter. #6: Sun 2019-10-06 01:56:00 AEST
       Iter. #7: Sun 2019-10-06 01:57:00 AEST
       Iter. #8: Sun 2019-10-06 01:58:00 AEST
       Iter. #9: Sun 2019-10-06 01:59:00 AEST
      Iter. #10: Sun 2019-10-06 03:00:00 AEDT
      Iter. #11: Sun 2019-10-06 03:01:00 AEDT
      Iter. #12: Sun 2019-10-06 03:02:00 AEDT
      Iter. #13: Sun 2019-10-06 03:03:00 AEDT
      Iter. #14: Sun 2019-10-06 03:04:00 AEDT
      Iter. #15: Sun 2019-10-06 03:05:00 AEDT
      Iter. #16: Sun 2019-10-06 03:06:00 AEDT
      Iter. #17: Sun 2019-10-06 03:07:00 AEDT
      Iter. #18: Sun 2019-10-06 03:08:00 AEDT
      Iter. #19: Sun 2019-10-06 03:09:00 AEDT
      Iter. #20: Sun 2019-10-06 03:10:00 AEDT

$ TZ=Australia/Sydney faketime 2019-10-06 build/systemd-analyze calendar 2/4:30 --iterations=3
  Original form: 2/4:30
Normalized form: *-*-* 02/4:30:00
    Next elapse: Sun 2019-10-06 06:30:00 AEDT
       (in UTC): Sat 2019-10-05 19:30:00 UTC
       From now: 5h 29min left
       Iter. #2: Sun 2019-10-06 10:30:00 AEDT
       (in UTC): Sat 2019-10-05 23:30:00 UTC
       From now: 9h left
       Iter. #3: Sun 2019-10-06 14:30:00 AEDT
       (in UTC): Sun 2019-10-06 03:30:00 UTC
       From now: 13h left

4 years agosd-boot: Silence compiler warning when building with -O2 13510/head
Jan Janssen [Wed, 30 Oct 2019 16:44:59 +0000 (17:44 +0100)] 
sd-boot: Silence compiler warning when building with -O2

4 years agosd-boot: Don't loudly complain if RNG protocol isn't available
Jan Janssen [Sun, 15 Sep 2019 14:12:03 +0000 (16:12 +0200)] 
sd-boot: Don't loudly complain if RNG protocol isn't available

Fixes #13503

4 years agosd-event: don't invalidate source type on disconnect 13884/head
Lennart Poettering [Wed, 30 Oct 2019 15:37:42 +0000 (16:37 +0100)] 
sd-event: don't invalidate source type on disconnect

This fixes fd closing if fd ownership is requested.

4 years agosd-boot: Only disable optimization on debug builds
Jan Janssen [Sun, 15 Sep 2019 13:56:30 +0000 (15:56 +0200)] 
sd-boot: Only disable optimization on debug builds

4 years agoNEWS: fix two typos
Zbigniew Jędrzejewski-Szmek [Wed, 30 Oct 2019 14:58:39 +0000 (15:58 +0100)] 
NEWS: fix two typos

4 years agoanalyze: fix minor memleak
Lennart Poettering [Fri, 25 Oct 2019 14:05:11 +0000 (16:05 +0200)] 
analyze: fix minor memleak

4 years agoanalyze: sort list of unknown syscalls kernel implements
Lennart Poettering [Fri, 25 Oct 2019 14:05:35 +0000 (16:05 +0200)] 
analyze: sort list of unknown syscalls kernel implements

4 years agoseccomp: add new Linux 5.3 syscalls to syscall filter lists
Lennart Poettering [Wed, 30 Oct 2019 10:11:05 +0000 (11:11 +0100)] 
seccomp: add new Linux 5.3 syscalls to syscall filter lists

Many syscalls added and all fit nicely into existing groups, hence lets
add them there.

4 years agonetwork: cleanup header inclusion
Yu Watanabe [Wed, 30 Oct 2019 08:02:15 +0000 (17:02 +0900)] 
network: cleanup header inclusion

4 years agoMerge pull request #13870 from irtimmer/check_ip_gnutls
Zbigniew Jędrzejewski-Szmek [Wed, 30 Oct 2019 13:08:26 +0000 (14:08 +0100)] 
Merge pull request #13870 from irtimmer/check_ip_gnutls

resolved: validate IP address in certificate for DNS-over-TLS (GnuTLS)

4 years agoMerge pull request #13874 from keszybz/network-sendoption-cleanups
Zbigniew Jędrzejewski-Szmek [Wed, 30 Oct 2019 13:06:04 +0000 (14:06 +0100)] 
Merge pull request #13874 from keszybz/network-sendoption-cleanups

Network SendOption cleanups

4 years agoNEWS: fix option name
Yu Watanabe [Wed, 30 Oct 2019 12:29:22 +0000 (21:29 +0900)] 
NEWS: fix option name

4 years agoMerge pull request #13879 from keszybz/news-v244
Yu Watanabe [Wed, 30 Oct 2019 12:24:38 +0000 (21:24 +0900)] 
Merge pull request #13879 from keszybz/news-v244

NEWS for v244

4 years agonetwork: install wifi-adhoc.network by default, make wifi-{ap,station} examples 13879/head
Zbigniew Jędrzejewski-Szmek [Wed, 30 Oct 2019 10:21:41 +0000 (11:21 +0100)] 
network: install wifi-adhoc.network by default, make wifi-{ap,station} examples

I think 80-wifi-adhoc.network is safe enough, since it just enables
the link-local addressing. But the other two enable DHCP in client
or server modes, and we should not do this by default.

4 years agoNEWS: start preparations for v244
Zbigniew Jędrzejewski-Szmek [Wed, 30 Oct 2019 10:16:38 +0000 (11:16 +0100)] 
NEWS: start preparations for v244

4 years agoMerge pull request #13866 from keszybz/nspawn-restarts
Lennart Poettering [Wed, 30 Oct 2019 09:53:28 +0000 (10:53 +0100)] 
Merge pull request #13866 from keszybz/nspawn-restarts

Make 'machinectl reboot' functional

4 years agocoverity: replace python with jq
Evgeny Vereshchagin [Tue, 29 Oct 2019 19:07:15 +0000 (19:07 +0000)] 
coverity: replace python with jq

Judging by https://travis-ci.org/systemd/systemd/jobs/604425785
(where the script failed with "tools/coverity.sh: line 45: python: command not found")
python-unversioned-command is no longer installed by default with python2.
Given that it's not the first time python has vanished and it's not clear
what exactly should be installed to make sure it's there, let's just use jq instead.

4 years agonetwork: amend SendOption= to take a c-escaped string 13874/head
Zbigniew Jędrzejewski-Szmek [Wed, 30 Oct 2019 08:13:38 +0000 (09:13 +0100)] 
network: amend SendOption= to take a c-escaped string

No need to punish users by forcing them to do base64 encodings.

4 years agonetwork: rename SendOptions= to SendOption=
Zbigniew Jędrzejewski-Szmek [Wed, 30 Oct 2019 07:56:18 +0000 (08:56 +0100)] 
network: rename SendOptions= to SendOption=

The name with plural made more sense where multiple options could be specified
in one line. After changes in the pull request, this option only accepts one
value, so from users' POV it should be singular.

(The field in the data structure remains plural, because it actually stores
multiple values.)

4 years agoMerge pull request #13747 from ssahani/tc-qdisc
Yu Watanabe [Wed, 30 Oct 2019 05:35:51 +0000 (14:35 +0900)] 
Merge pull request #13747 from ssahani/tc-qdisc

network: introduce Traffic Control

4 years agoMerge pull request #13867 from keszybz/man-condition
Yu Watanabe [Wed, 30 Oct 2019 00:40:00 +0000 (09:40 +0900)] 
Merge pull request #13867 from keszybz/man-condition

Refactor description of conditons

4 years agotest-network: add tests for qdisc 13747/head
Yu Watanabe [Tue, 29 Oct 2019 15:33:19 +0000 (00:33 +0900)] 
test-network: add tests for qdisc

4 years agonetwork: wait for QDiscs to be configured
Yu Watanabe [Tue, 29 Oct 2019 15:19:34 +0000 (00:19 +0900)] 
network: wait for QDiscs to be configured

4 years agonetwork: introduce TrafficControl
Susant Sahani [Mon, 7 Oct 2019 14:19:00 +0000 (16:19 +0200)] 
network: introduce TrafficControl

Add network delay to a interface