]> git.ipfire.org Git - thirdparty/systemd.git/log
thirdparty/systemd.git
5 years agodocs: convert TRANSLATORS to Markdown 10037/head
Filipe Brandenburger [Fri, 7 Sep 2018 08:44:49 +0000 (01:44 -0700)] 
docs: convert TRANSLATORS to Markdown

Also expand it to cover typical tasks of creating new translations, updating
existing ones and compiling them (which can be useful to check syntax.)

5 years agodocs: convert DISTRO_PORTING to Markdown
Filipe Brandenburger [Fri, 7 Sep 2018 08:22:34 +0000 (01:22 -0700)] 
docs: convert DISTRO_PORTING to Markdown

5 years agodocs: move markdown docs from .github/ to docs/
Filipe Brandenburger [Fri, 7 Sep 2018 08:07:06 +0000 (01:07 -0700)] 
docs: move markdown docs from .github/ to docs/

The GitHub guide on contributing file says: "Decide whether to store your
contributing guidelines in your repository's root, docs, or .github directory."

https://help.github.com/articles/setting-guidelines-for-repository-contributors/#adding-a-contributing-file

But there's really no advantage to keeping it in the hidden .github/, since
these are public and really belong together with the other documentation.

We can still keep the issue templates under .github/, since they are not really
documentation on their own.

Updated the links pointing to CONTRIBUTING.md to refer to the one in docs/.

5 years agodocs: move doc/ to docs/
Filipe Brandenburger [Fri, 7 Sep 2018 08:02:42 +0000 (01:02 -0700)] 
docs: move doc/ to docs/

The docs/ directory is special in GitHub, since it can be used to serve GitHub
Pages from, so there's a benefit to switching to it in order to expose it
directly as a website.

Updated references to it from the documentations themselves, from the
CONTRIBUTING.md file and from Meson build files.

5 years agoMerge pull request #9832 from yuwata/fix-9831
Zbigniew Jędrzejewski-Szmek [Sat, 8 Sep 2018 15:17:07 +0000 (17:17 +0200)] 
Merge pull request #9832 from yuwata/fix-9831

network: fixes related to setting MTU

5 years agoMerge pull request #9942 from lucaswerkmeister/9939
Zbigniew Jędrzejewski-Szmek [Sat, 8 Sep 2018 10:08:54 +0000 (12:08 +0200)] 
Merge pull request #9942 from lucaswerkmeister/9939

seccomp: fix #9939 and allow specifying multiple errnos for syscall

5 years agobuild-sys: disable -Wmaybe-uninitialized
Filipe Brandenburger [Thu, 6 Sep 2018 19:34:24 +0000 (12:34 -0700)] 
build-sys: disable -Wmaybe-uninitialized

Compiler flag -Wmaybe-uninitialized is quite noisy and produces many false
positives, especially when optimization flags are enabled (tested gcc 8.2.1),
so let's just disable it in systemd build.

For example, with CFLAGS=-O2, the build produces 11 such warnings and the
default CFLAGS of Fedora's rpmbuild warns about it in 176 places. A look at a
sample of those shows that most are false positives, where the compiler just
can't figure it out correctly. (While fixing those would be nice, I'm not sure
it's a good use of our time.)

The noisy [-Wmaybe-uninitialized] warnings are not just an annoyance, since
they make it harder to spot warnings that indicate actual problems (such as
variable declared but not used.) Silencing those is beneficial, so that
contributors would see warnings where there are actually actionable problems,
so there's a better chance of having those issues addressed before a PR is
pushed.

Tested:
  $ CFLAGS='-O2 -Wp,-D_FORTIFY_SOURCE=2' meson build/
  $ ninja -C build/

(NOTE: -Wp,-D_FORTIFY_SOURCE=2 prevents [-Wstringop-truncation] warnings.)

With the commands above, the build will not produce any [-Wmaybe-uninitialized]
warnings (or any other warnings), which is not really the case before this commit.

Also tested with rpmbuild on Fedora, after this commit there are no warnings
produced in the build step.

5 years agotests: put fuzz_journald_processing_function in a .c file
Evgeny Vereshchagin [Fri, 7 Sep 2018 06:13:17 +0000 (06:13 +0000)] 
tests: put fuzz_journald_processing_function in a .c file

5 years agohwdb: Add hwdb entry for X220 tablet (#10036)
Wyatt Ward [Sat, 8 Sep 2018 06:18:44 +0000 (02:18 -0400)] 
hwdb: Add hwdb entry for X220 tablet (#10036)

5 years agoseccomp: permit specifying multiple errnos for a syscall 9942/head
Lucas Werkmeister [Wed, 29 Aug 2018 19:35:38 +0000 (21:35 +0200)] 
seccomp: permit specifying multiple errnos for a syscall

If more than one errno is specified for a syscall in SystemCallFilter=,
use the last one instead of reporting an error. This is especially
useful when used with system call sets:

    SystemCallFilter=@privileged:EPERM @reboot

This will block any system call requiring super-user capabilities with
EPERM, except for attempts to reboot the system, which will immediately
terminate the process. (@reboot is included in @privileged.)

This also effectively fixes #9939, since specifying different errnos for
“the same syscall” (same pseudo syscall number) is no longer an error.

5 years agogitignore: add nspawn image lock and mkosi temporary files
Yu Watanabe [Wed, 5 Sep 2018 05:56:08 +0000 (14:56 +0900)] 
gitignore: add nspawn image lock and mkosi temporary files

5 years agobacklight: do not unref parent device
Yu Watanabe [Thu, 6 Sep 2018 02:58:29 +0000 (11:58 +0900)] 
backlight: do not unref parent device

Fixes double-free introduced by 9aadd28149ae2d8ce9956495c961d97ba4033b0e.

5 years agopo: update Brazilian Portuguese translation
Filipe Brandenburger [Fri, 7 Sep 2018 03:10:22 +0000 (20:10 -0700)] 
po: update Brazilian Portuguese translation

5 years agoman: Document networkd states in networkctl(1) (#10033)
Julian Andres Klode [Fri, 7 Sep 2018 14:39:44 +0000 (16:39 +0200)] 
man: Document networkd states in networkctl(1) (#10033)

The manpage gives example outputs with the states, but it never
explains what the states are.

Fixes #575

5 years agohwdb: Added entry for X200 Tablet/X201 Tablet so their pointing sticks would be recog...
Wyatt Ward [Fri, 7 Sep 2018 01:35:55 +0000 (21:35 -0400)] 
hwdb: Added entry for X200 Tablet/X201 Tablet so their pointing sticks would be recognized. They share parts with normal X200 and X201's. (#10029)

5 years agoMerge pull request #10009 from evverx/rework-journald-fuzzers
Yu Watanabe [Wed, 5 Sep 2018 02:46:17 +0000 (11:46 +0900)] 
Merge pull request #10009 from evverx/rework-journald-fuzzers

Add a fuzzer for server_process_native_message

5 years agosd-dhcp6: set requested time for DUID-LLT
Yu Watanabe [Fri, 24 Aug 2018 02:19:22 +0000 (11:19 +0900)] 
sd-dhcp6: set requested time for DUID-LLT

Follow-up for 7e90a499ab1d5648c9169b5991b117d36fc59fad.

5 years agosd-dhcp: drop meaningless checking
Yu Watanabe [Fri, 24 Aug 2018 02:14:32 +0000 (11:14 +0900)] 
sd-dhcp: drop meaningless checking

mac_addr is not dynamically allocated.

Fixes CID 1395162 and 1395164.

5 years agohwdb: add Logitech G703 Wired/Wireless (#10005)
Trevonn [Tue, 4 Sep 2018 16:47:08 +0000 (17:47 +0100)] 
hwdb: add Logitech G703 Wired/Wireless (#10005)

5 years agohwdb: Synaptics touchpad edge fix for HP Pavilion G6 (#10008)
Network Silence [Tue, 4 Sep 2018 16:46:07 +0000 (12:46 -0400)] 
hwdb: Synaptics touchpad edge fix for HP Pavilion G6 (#10008)

5 years agocryptsetup-generator: introduce basic keydev support
Michal Sekletar [Thu, 30 Aug 2018 08:45:11 +0000 (08:45 +0000)] 
cryptsetup-generator: introduce basic keydev support

Dracut has a support for unlocking encrypted drives with keyfile stored
on the external drive. This support is included in the generated initrd
only if systemd module is not included.

When systemd is used in initrd then attachment of encrypted drives is
handled by systemd-cryptsetup tools. Our generator has support for
keyfile, however, it didn't support keyfile on the external block
device (keydev).

This commit introduces basic keydev support. Keydev can be specified per
luks.uuid on the kernel command line. Keydev is automatically mounted
during boot and we look for keyfile in the keydev
mountpoint (i.e. keyfile path is prefixed with the keydev mount point
path). After crypt device is attached we automatically unmount
where keyfile resides.

Example:
        rd.luks.key=70bc876b-f627-4038-9049-3080d79d2165=/key:LABEL=KEYDEV

5 years agoMerge pull request #10007 from keszybz/fix-no-logind
Michael Biebl [Tue, 4 Sep 2018 14:18:02 +0000 (16:18 +0200)] 
Merge pull request #10007 from keszybz/fix-no-logind

systemctl: fix compilation w/o logind

5 years agosystemctl: fix compilation w/o logind 10007/head
Zbigniew Jędrzejewski-Szmek [Tue, 4 Sep 2018 07:34:16 +0000 (09:34 +0200)] 
systemctl: fix compilation w/o logind

Fixes #10006.

5 years agoimportd, basic/string-util: use case-insensitive comparison for HTTP headers
Dongsu Park [Mon, 3 Sep 2018 18:44:13 +0000 (20:44 +0200)] 
importd, basic/string-util: use case-insensitive comparison for HTTP headers

According to RFC2616[1], HTTP header names are case-insensitive. So
it's totally valid to have a header starting with either `Date:` or
`date:`.

However, when systemd-importd pulls an image from an HTTP server, it
parses HTTP headers by comparing header names as-is, without any
conversion. That causes failures when some HTTP servers return headers
with different combinations of upper-/lower-cases.

An example:
https://alpha.release.flatcar-linux.net/amd64-usr/current/flatcar_developer_container.bin.bz2 returns `Etag: "pe89so9oir60"`,
while https://alpha.release.core-os.net/amd64-usr/current/coreos_developer_container.bin.bz2
returns `ETag: "f03372edea9a1e7232e282c346099857"`.
Since systemd-importd expects to see `ETag`, the etag for the Container Linux image
is correctly interpreted as a part of the hidden file name.
However, it cannot parse etag for Flatcar Linux, so the etag the Flatcar Linux image
is not appended to the hidden file name.

```
$ sudo ls -al /var/lib/machines/
-r--r--r--  1 root root 3303014400 Aug 21 20:07 '.raw-https:\x2f\x2falpha\x2erelease\x2ecore-os\x2enet\x2famd64-usr\x2fcurrent\x2fcoreos_developer_container\x2ebin\x2ebz2.\x22f03372edea9a1e7232e282c346099857\x22.raw'
-r--r--r--  1 root root 3303014400 Aug 17 06:15 '.raw-https:\x2f\x2falpha\x2erelease\x2eflatcar-linux\x2enet\x2famd64-usr\x2fcurrent\x2fflatcar_developer_container\x2ebin\x2ebz2.raw'
```

As a result, when the Flatcar image is removed and downloaded again,
systemd-importd is not able to determine if the file has been already
downloaded, so it always download it again. Then it fails to rename it
to an expected name, because there's already a hidden file.

To fix this issue, let's introduce a new helper function
`memory_startswith_no_case()`, which compares memory regions in a
case-insensitive way. Use this function in `curl_header_strdup()`.

See also https://github.com/kinvolk/kube-spawn/issues/304

[1]: https://www.w3.org/Protocols/rfc2616/rfc2616-sec4.html#sec4.2

5 years agoman: fix a typo in the documentation (#10003)
Liberasys [Mon, 3 Sep 2018 15:35:44 +0000 (17:35 +0200)] 
man: fix a typo in the documentation (#10003)

5 years agoMerge pull request #9919 from keszybz/more-sd-bus-doc
Yu Watanabe [Mon, 3 Sep 2018 12:44:30 +0000 (21:44 +0900)] 
Merge pull request #9919 from keszybz/more-sd-bus-doc

Some more sd-bus docs

5 years agoboot/efi/stub.c: fix Dell LoadOptions
Harald Hoyer [Mon, 3 Sep 2018 11:57:54 +0000 (13:57 +0200)] 
boot/efi/stub.c: fix Dell LoadOptions

On Dell machines LoadOptions is filled with:
01 00 00 00 <name of BIOS Boot Loader Entry> ... <unknown bytes>

So, in case of meaningfull LoadOptions, better check if the first char
is a printable character.

5 years agouser-runtime-dir: fix selinux regression
Alan Jenkins [Mon, 3 Sep 2018 10:10:24 +0000 (11:10 +0100)] 
user-runtime-dir: fix selinux regression

Fix #9993.  When this code was split out to user-runtime-dir, it forgot to
include the call to mac_selinux_init().  So mkdir_label() stopped working.

Fixes: a9f0f5e50104 ("logind: split %t directory creation to a helper
unit")

5 years agonetwork: drop an unused variable
Yu Watanabe [Mon, 3 Sep 2018 09:39:56 +0000 (18:39 +0900)] 
network: drop an unused variable

Follow-up for 53cb501a1314740fa777f145067cefccda954487.

5 years agotests: add reproducers for several issues uncovered with fuzz-journald-syslog
Evgeny Vereshchagin [Sun, 2 Sep 2018 18:13:31 +0000 (18:13 +0000)] 
tests: add reproducers for several issues uncovered with fuzz-journald-syslog

This is a follow-up to a70f343cacf03ac51cdefb0d2e.

5 years agoMerge pull request #9995 from yuwata/fix-usbffs
Zbigniew Jędrzejewski-Szmek [Mon, 3 Sep 2018 12:06:41 +0000 (14:06 +0200)] 
Merge pull request #9995 from yuwata/fix-usbffs

core/socket: fix memleak in the error paths in usbffs_dispatch_eps()

5 years agotests: add a fuzzer for server_process_native_message 10009/head
Evgeny Vereshchagin [Mon, 3 Sep 2018 07:05:48 +0000 (07:05 +0000)] 
tests: add a fuzzer for server_process_native_message

5 years agojournald: make server_process_native_message compatible with fuzz_journald_processing...
Evgeny Vereshchagin [Mon, 3 Sep 2018 07:03:10 +0000 (07:03 +0000)] 
journald: make server_process_native_message compatible with fuzz_journald_processing_function

5 years agotests: rework the code fuzzing journald
Evgeny Vereshchagin [Mon, 3 Sep 2018 06:46:24 +0000 (06:46 +0000)] 
tests: rework the code fuzzing journald

This should make it easier to add a new fuzzer without a lot of
duplication.

5 years agocore/socket: fix memleak in the error paths in usbffs_dispatch_eps() 9995/head
Yu Watanabe [Mon, 3 Sep 2018 05:22:08 +0000 (14:22 +0900)] 
core/socket: fix memleak in the error paths in usbffs_dispatch_eps()

5 years agoTODO: drop duplicated entry
Yu Watanabe [Mon, 3 Sep 2018 05:21:13 +0000 (14:21 +0900)] 
TODO: drop duplicated entry

5 years agojournald: fixed assertion failure when system journal rotation fails (#9893)
Renaud Métrich [Mon, 3 Sep 2018 03:42:39 +0000 (05:42 +0200)] 
journald: fixed assertion failure when system journal rotation fails (#9893)

5 years agotests: add a rudimentary fuzzer for server_process_syslog_message (#9979)
Evgeny Vereshchagin [Mon, 3 Sep 2018 03:18:26 +0000 (06:18 +0300)] 
tests: add a rudimentary fuzzer for server_process_syslog_message (#9979)

5 years agoUpdate 60-sensor.hwdb (#9991)
Arkan49 [Mon, 3 Sep 2018 03:07:23 +0000 (11:07 +0800)] 
Update 60-sensor.hwdb (#9991)

5 years agopo: update Russian translation (#9992)
Sergey Ptashnick [Mon, 3 Sep 2018 03:05:45 +0000 (06:05 +0300)] 
po: update Russian translation (#9992)

5 years agopo: update Italian translation (#9980)
Daniele Medri [Mon, 3 Sep 2018 03:05:28 +0000 (05:05 +0200)] 
po: update Italian translation (#9980)

5 years agocryptsetup: do not define arg_sector_size if libgcrypt is v1.x (#9990)
Yu Watanabe [Sat, 1 Sep 2018 14:47:46 +0000 (23:47 +0900)] 
cryptsetup: do not define arg_sector_size if libgcrypt is v1.x (#9990)

Follow-up for #9936.

5 years agoMerge pull request #9977 from sourcejedi/no-remount-superblock3
Yu Watanabe [Sat, 1 Sep 2018 14:18:01 +0000 (23:18 +0900)] 
Merge pull request #9977 from sourcejedi/no-remount-superblock3

Namespace fixes

5 years agonamespace: remove redundant .has_prefix=false 9977/head
Alan Jenkins [Wed, 29 Aug 2018 23:20:48 +0000 (00:20 +0100)] 
namespace: remove redundant .has_prefix=false

The MountEntry's added for EMPTY_DIR work very similarly to the TMPFS ones.
In both cases, .has_prefix is false.  In fact, .has_prefix is false in
*all* the MountEntry's we add except for the access mounts (READONLY etc).

But EMPTY_DIR stuck out by explicitly setting .has_prefix = false.
Let's remove that.

5 years agonamespace: we always use a root_directory now
Alan Jenkins [Wed, 29 Aug 2018 22:38:40 +0000 (23:38 +0100)] 
namespace: we always use a root_directory now

We changed to always setup the new namespace in a separate directory
(commit 0722b35)

5 years agonamespace: fix mode for TemporaryFileSystem=
Alan Jenkins [Wed, 29 Aug 2018 21:36:37 +0000 (22:36 +0100)] 
namespace: fix mode for TemporaryFileSystem=

... when no mount options are passed.

Change the code, to avoid the following failure in the newly added tests:

exec-temporaryfilesystem-rw.service: Executing: /usr/bin/sh -x -c
'[ "$(stat -c %a /var)" == 755 ]'
++ stat -c %a /var
+ '[' 1777 == 755 ']'
Received SIGCHLD from PID 30364 (sh).
Child 30364 (sh) died (code=exited, status=1/FAILURE)

(And I spotted an opportunity to use TAKE_PTR() at the end).

5 years agonamespace: don't try to remount superblocks
Alan Jenkins [Wed, 29 Aug 2018 23:32:54 +0000 (00:32 +0100)] 
namespace: don't try to remount superblocks

We can't remount the underlying superblocks, if we are inside a user
namespace and running Linux <= 4.17.  We can only change the per-mount
flags (MS_REMOUNT | MS_BIND).

This type of mount() call can only change the per-mount flags, so we
don't have to worry about passing the right string options now.

Fixes #9914 ("Since 1beab8b was merged, systemd has been failing to start
systemd-resolved inside unprivileged containers" ... "Failed to re-mount
'/run/systemd/unit-root/dev' read-only: Operation not permitted").

> It's basically my fault :-). I pointed out we could remount read-only
> without MS_BIND when reviewing the PR that added TemporaryFilesystem=,
> and poettering suggested to change PrivateDevices= at the same time.
> I think it's safe to change back, and I don't expect anyone will notice
> a difference in behaviour.
>
> It just surprised me to realize that
> `TemporaryFilesystem=/tmp:size=10M,ro,nosuid` would not apply `ro` to the
> superblock (underlying filesystem), like mount -osize=10M,ro,nosuid does.
> Maybe a comment could note the kernel version (v4.18), that lets you
> remount without MS_BIND inside a user namespace.

This makes the code longer and I guess this function is still ugly, sorry.
One obstacle to cleaning it up is the interaction between
`PrivateDevices=yes` and `ReadOnlyPaths=/dev`.  I've added a test for the
existing behaviour, which I think is now the correct behaviour.

5 years agoAdd sensor configuration for Asus TP201SA
Victor Laskurain [Wed, 29 Aug 2018 18:49:57 +0000 (20:49 +0200)] 
Add sensor configuration for Asus TP201SA

5 years agotests: also run TEST-01-BASIC in an unprivileged container (#9957)
Evgeny Vereshchagin [Thu, 30 Aug 2018 04:01:18 +0000 (07:01 +0300)] 
tests: also run TEST-01-BASIC in an unprivileged container (#9957)

This should make it much easier to catch regressions like
https://github.com/systemd/systemd/issues/9914 and
https://github.com/systemd/systemd/issues/8535.

5 years agotree-wide: use '#pragma once' for header guard
Yu Watanabe [Wed, 29 Aug 2018 18:38:28 +0000 (03:38 +0900)] 
tree-wide: use '#pragma once' for header guard

Follow-up for a2b635eb3940f33f5dd308d85ba416f0630d152b (#9959).

5 years agoman: fix RFC ref in resolved.conf man page (#9976)
Todd Walton [Thu, 30 Aug 2018 00:47:07 +0000 (20:47 -0400)] 
man: fix RFC ref in resolved.conf man page (#9976)

This is a simple one-character fix to reference the correct RFC for
LLMNR, which is RFC 4795, not RFC 4794.

5 years agoseccomp: improve error reporting
Lucas Werkmeister [Sat, 25 Aug 2018 22:27:29 +0000 (00:27 +0200)] 
seccomp: improve error reporting

Only report OOM if that was actually the error of the operation,
explicitly report the possible error that a syscall was already blocked
with a different errno and translate that into a more sensible errno
(EEXIST only makes sense in connection to the hashmap), and pass through
all other potential errors unmodified. Part of #9939.

5 years agoresolve: update comment, avoid alarming wrongness
Alan Jenkins [Mon, 27 Aug 2018 18:09:58 +0000 (19:09 +0100)] 
resolve: update comment, avoid alarming wrongness

`systemd-resolved.service` runs as `User=systemd-resolved`, and uses certain
Capabilit{y,ies} magic. By my understanding, this means it is started with a
number of "privileges".  Indeed, `capabilities(7)` explains

> Linux divides  the  privileges  traditionally
> associated  with  superuser into distinct units, known as capabilities,
> which can be independently enabled and disabled."

This situation appears to contradict our current code comment which said

> If we are not running as root we assume all privileges are already dropped.

This appears to be a confusion in the comment only.  The rest of the code
tells a much clearer story.  (Don't ask me if the story is correct.
`capabilities(7)` scares me).  Let's tweak the comment to make it consistent
and avoid worrying readers about this.

5 years agofd-util: accept that kcmp might fail with EPERM/EACCES
Sjoerd Simons [Tue, 28 Aug 2018 07:32:18 +0000 (09:32 +0200)] 
fd-util: accept that kcmp might fail with EPERM/EACCES

In a container the kcmp call might well be blocked; Accept that and fall
back to fstat in that case.

5 years agosystemctl: if no logind, don't try to schedule shutdown
Samuel Morris [Tue, 28 Aug 2018 14:40:51 +0000 (10:40 -0400)] 
systemctl: if no logind, don't try to schedule shutdown

If logind is not supported, don't try to schedule a shutdown,
immediately poweroff. This is the behavior indicated by the current
message given to the user, but the command is returning an error. I
believe this was broken on this commit:
7f96539d45028650f2ba9452095473a9c455d84b

5 years agopo: update French translation
Sylvain Plantefève [Tue, 28 Aug 2018 19:51:24 +0000 (21:51 +0200)] 
po: update French translation

5 years agoMerge pull request #9959 from yuwata/small-fixes
Zbigniew Jędrzejewski-Szmek [Wed, 29 Aug 2018 15:47:00 +0000 (17:47 +0200)] 
Merge pull request #9959 from yuwata/small-fixes

tiny fixes and a cleanup

5 years agotest: fix a memleak
Yu Watanabe [Wed, 29 Aug 2018 14:27:42 +0000 (23:27 +0900)] 
test: fix a memleak

Follow-up for #9901.

Fixes #9968.

5 years agocryptsetup: add support for sector-size= option (#9936)
Dimitri John Ledkov [Wed, 29 Aug 2018 14:38:09 +0000 (15:38 +0100)] 
cryptsetup: add support for sector-size= option (#9936)

Bug-Ubuntu: https://launchpad.net/bugs/1776626

Closes #8881.

5 years agosd-boot: fix header guard 9959/head
Yu Watanabe [Tue, 28 Aug 2018 05:20:08 +0000 (14:20 +0900)] 
sd-boot: fix header guard

Follow-up for a42d7cf16515ab0ab62aaeff3aab5750c885b7e7.

5 years agodynamic-user: drop unnecessary initialization
Yu Watanabe [Tue, 28 Aug 2018 03:41:55 +0000 (12:41 +0900)] 
dynamic-user: drop unnecessary initialization

5 years agoMerge pull request #9901 from peterbaouoft/pr/preset_enable_multiple_instances
Zbigniew Jędrzejewski-Szmek [Wed, 29 Aug 2018 12:22:27 +0000 (14:22 +0200)] 
Merge pull request #9901 from peterbaouoft/pr/preset_enable_multiple_instances

install: allow instantiated units to be enabled via presets

5 years agostring-table: do not ignore 'scope' argument
Yu Watanabe [Tue, 28 Aug 2018 03:40:25 +0000 (12:40 +0900)] 
string-table: do not ignore 'scope' argument

5 years agoMerge pull request #9950 from yuwata/macro-ref-unref
Yu Watanabe [Tue, 28 Aug 2018 01:43:25 +0000 (10:43 +0900)] 
Merge pull request #9950 from yuwata/macro-ref-unref

tree-wide: introduce macros to define *_ref() and *_unref() functions

5 years agoinstall: small refactor to combine two function calls into one function 9901/head
Ruixin Bao [Sun, 26 Aug 2018 20:00:03 +0000 (20:00 +0000)] 
install: small refactor to combine two function calls into one function

Combine consecutive function calls of install_info_discover and
install_info_may_process into one short helper function.

5 years agoinstall: allow instantiated units to be enabled via presets
Ruixin Bao [Tue, 21 Aug 2018 20:40:56 +0000 (20:40 +0000)] 
install: allow instantiated units to be enabled via presets

This patch implements https://github.com/systemd/systemd/issues/9421.

The .preset file now is able to take a rule in the format of:(e.g)
enable foo@.service bar0 bar1 bar2

In the above example, when preset-all is called, all three instances of
foo@bar0.service, foo@bar1.service and foo@bar2.service will be enabled.

When preset is called on a single service(e.g: foo@bar1.service), only
the mentioned one(foo@bar1.service) will be enabled.

Tests are added for future regression.

5 years agosd-device: sd_device_enumerator_get_subsystem_next() requests the device list is... 9950/head
Yu Watanabe [Mon, 27 Aug 2018 06:33:17 +0000 (15:33 +0900)] 
sd-device: sd_device_enumerator_get_subsystem_next() requests the device list is uptodate

5 years agosd-device: use structured initializers
Yu Watanabe [Mon, 27 Aug 2018 05:07:01 +0000 (14:07 +0900)] 
sd-device: use structured initializers

5 years agolibsystemd: use DEFINE_ATOMIC_REF_UNREF_FUNC or frineds where applicable
Yu Watanabe [Mon, 27 Aug 2018 05:00:01 +0000 (14:00 +0900)] 
libsystemd: use DEFINE_ATOMIC_REF_UNREF_FUNC or frineds where applicable

5 years agorefcnt: introduce DEFINE_ATOMIC_REF_UNREF_FUNC() macro and friends
Yu Watanabe [Mon, 27 Aug 2018 04:58:15 +0000 (13:58 +0900)] 
refcnt: introduce DEFINE_ATOMIC_REF_UNREF_FUNC() macro and friends

5 years agosd-netlink: fix indentation
Yu Watanabe [Mon, 27 Aug 2018 04:57:09 +0000 (13:57 +0900)] 
sd-netlink: fix indentation

5 years agosd-hwdb: drop unused variable
Yu Watanabe [Mon, 27 Aug 2018 04:56:29 +0000 (13:56 +0900)] 
sd-hwdb: drop unused variable

5 years agodynamic-user: fix potential segfault
Yu Watanabe [Mon, 27 Aug 2018 20:09:00 +0000 (05:09 +0900)] 
dynamic-user: fix potential segfault

5 years agoMerge pull request #9935 from pfl/dhcp6_pd_assignment_fix
Zbigniew Jędrzejewski-Szmek [Mon, 27 Aug 2018 12:49:11 +0000 (14:49 +0200)] 
Merge pull request #9935 from pfl/dhcp6_pd_assignment_fix

Dhcp6 pd assignment fix

5 years agotools: use print function in Python 3 code
Lucas Werkmeister [Sat, 25 Aug 2018 16:41:42 +0000 (18:41 +0200)] 
tools: use print function in Python 3 code

This GDB script was converted to use Python 3 along with all other
Python scripts in commit b95f5528cc, but still used the Python 2 print
statement syntax instead of the Python 3 print function. Fix that.

We also add the Python 2 compatibility statement, just in case some GDB
still uses Python 2 instead of Python 3.

5 years agolink: allocate correct number of bytes in ethtool_set_features()
Thomas Haller [Tue, 7 Aug 2018 14:01:18 +0000 (16:01 +0200)] 
link: allocate correct number of bytes in ethtool_set_features()

sfeatures is a "struct ethtool_sfeatures". Use sizeof() on the correct
data type.

Since "struct ethtool_gstrings" is larger than "struct ethtool_sfeatures",
this had no serious consequences.

Fixes: 50725d10e3417fd357abe1df2f177b8458027ac7
5 years agodon't ignore zd* block devices
Marcin Skarbek [Sun, 26 Aug 2018 14:48:52 +0000 (16:48 +0200)] 
don't ignore zd* block devices

5 years agohwdb: Added values for another WALTOP Tablet
dj-kaktus [Sun, 26 Aug 2018 15:26:54 +0000 (17:26 +0200)] 
hwdb: Added values for another WALTOP Tablet

5 years agotree-wide: use DEFINE_TRIVIAL_REF_UNREF_FUNC() macro or friends where applicable 9952/head
Yu Watanabe [Mon, 27 Aug 2018 05:01:46 +0000 (14:01 +0900)] 
tree-wide: use DEFINE_TRIVIAL_REF_UNREF_FUNC() macro or friends where applicable

5 years agomacro: introduce DEFINE_TRIVIAL_REF_UNREF_FUNC() macro and friends 9951/head
Yu Watanabe [Mon, 27 Aug 2018 05:01:27 +0000 (14:01 +0900)] 
macro: introduce DEFINE_TRIVIAL_REF_UNREF_FUNC() macro and friends

5 years agotree-wide: use unsigned for refcount
Yu Watanabe [Mon, 27 Aug 2018 04:48:04 +0000 (13:48 +0900)] 
tree-wide: use unsigned for refcount

5 years agonetworkd-dhcp6: Improve logging on DHCPv6 PD assignment 9935/head
Patrik Flykt [Fri, 24 Aug 2018 15:49:22 +0000 (09:49 -0600)] 
networkd-dhcp6: Improve logging on DHCPv6 PD assignment

Print out prefixes assigned to links in addition to the DHCPv6
prefix it was delegated from.

5 years agonetworkd-dhcp6: Fix logging of DHCPv6 prefix
Patrik Flykt [Fri, 24 Aug 2018 15:49:20 +0000 (09:49 -0600)] 
networkd-dhcp6: Fix logging of DHCPv6 prefix

Pretty-print log messages with DHCPv6 prefixes after the prefixes
have been set instead of some random unassigned stack values.

5 years agonetworkd-dhcp6: Fix PD prefix length for subnet assignment
Patrik Flykt [Fri, 24 Aug 2018 15:49:18 +0000 (09:49 -0600)] 
networkd-dhcp6: Fix PD prefix length for subnet assignment

When computing the next network prefix to assign, compute the next
prefix to allocate based on the intended /64 assignment, not the
given prefix length for the whole prefix, e.g. /48, given to
systemd-networkd.

Fixes #9626.

5 years agonetworkd-dhcp6: Log warning with PD prefixes shorter than 48
Patrik Flykt [Fri, 24 Aug 2018 15:49:14 +0000 (09:49 -0600)] 
networkd-dhcp6: Log warning with PD prefixes shorter than 48

Log a warning message in case the network prefix delegated is shorter
than /48.

5 years agopo: update Japanese translation
Yu Watanabe [Fri, 24 Aug 2018 13:46:13 +0000 (22:46 +0900)] 
po: update Japanese translation

5 years agopo: update Polish translation
Piotr Drąg [Fri, 24 Aug 2018 13:35:46 +0000 (15:35 +0200)] 
po: update Polish translation

5 years agodissect: rescan devices before creating partition list (#9930)
Yu Watanabe [Fri, 24 Aug 2018 13:34:13 +0000 (22:34 +0900)] 
dissect: rescan devices before creating partition list (#9930)

Fixes #9924 which is caused by 3c1f2cee0ad2bea0839ac335532275f3a73c8b20.

5 years agologind: make use of vtnr_from_tty() in seat_read_active_vt() (#9923)
Franck Bui [Fri, 24 Aug 2018 07:20:51 +0000 (09:20 +0200)] 
logind: make use of vtnr_from_tty() in seat_read_active_vt() (#9923)

No functional changes.

5 years agoMerge pull request #9917 from keszybz/cleanups
Yu Watanabe [Fri, 24 Aug 2018 01:43:41 +0000 (10:43 +0900)] 
Merge pull request #9917 from keszybz/cleanups

Some unrelated fixups for recent PRs

5 years agoman: use singular “they”
Lucas Werkmeister [Thu, 23 Aug 2018 14:57:30 +0000 (16:57 +0200)] 
man: use singular “they”

For an example where we already use it, see man:sd-login(3):

> A session is defined by the time a user is logged in until they log out.

As far as I can tell, this removes the only remaining occurrences of
referring to users by gendered pronouns in our documentation (though
some still survive in code comments and the NEWS and TODO files):

    git grep '\b\(he\|him\|his\|she\|her\|hers\)\b' man/

5 years agodoc: fix resolvectl(1) per-interface DNS configuration documentation
Daniel Kahn Gillmor [Thu, 23 Aug 2018 20:33:56 +0000 (16:33 -0400)] 
doc: fix resolvectl(1) per-interface DNS configuration documentation

You can only have one listitem in each varlistentry.

xmllint says:

    resolvectl.xml:269: element varlistentry: validity error : Element varlistentry content does not follow the DTD, expecting (term+ , listitem), got (term term term term term term term listitem listitem listitem )

5 years agodoc: fix udev(7) documentation about ATTR{} and SYSCTL{}
Daniel Kahn Gillmor [Thu, 23 Aug 2018 20:20:18 +0000 (16:20 -0400)] 
doc: fix udev(7) documentation about ATTR{} and SYSCTL{}

Without this fix, udev(7) munges the two items together, like so:

       ATTR{filename}, SYSCTL{kernel parameter}
           Match sysfs attribute values of the event device. Trailing
           whitespace in the attribute values is ignored unless the specified
           match value itself contains trailing whitespace.  Match a kernel
           parameter value.

You're not allowed to have a <term> element after a <listitem> element within a
<varlistentry>.

xmllint complains:

    udev.xml:192: element varlistentry: validity error : Element varlistentry content does not follow the DTD, expecting (term+ , listitem), got (term listitem term listitem )

5 years agoman: add sd_bus_message_get_signature(3) 9919/head
Zbigniew Jędrzejewski-Szmek [Thu, 23 Aug 2018 13:31:21 +0000 (15:31 +0200)] 
man: add sd_bus_message_get_signature(3)

5 years agoMerge pull request #8135 from shawnl/arg_host
Zbigniew Jędrzejewski-Szmek [Thu, 23 Aug 2018 11:46:54 +0000 (13:46 +0200)] 
Merge pull request #8135 from shawnl/arg_host

sd-bus: rework host handling

5 years agonetwork: adjust some error messages 9917/head
Zbigniew Jędrzejewski-Szmek [Thu, 23 Aug 2018 09:43:28 +0000 (11:43 +0200)] 
network: adjust some error messages

The option is now called simply "Encapsulation=".

Also, "ignoring" is rather misleading, because we use to to mean that some line
is being ignored. Here the whole tunnel is dropped.

5 years agonetwork: reword some error messages
Zbigniew Jędrzejewski-Szmek [Thu, 23 Aug 2018 09:32:55 +0000 (11:32 +0200)] 
network: reword some error messages

Use "falling back" instead of "fallback".

Also, it's not an application-specific machine ID, but rather an
application-and-machine-specific ID.  Let's call it "app-machine-speicific" for
short.

5 years agotest-socket-util: avoid "memleak" reported by valgrind
Zbigniew Jędrzejewski-Szmek [Tue, 21 Aug 2018 17:44:48 +0000 (19:44 +0200)] 
test-socket-util: avoid "memleak" reported by valgrind

valgrind reports the allocation done in the short-lived child as a leak.
Let's restructure the code to avoid this.

5 years agoanalyze: use temporary var to simplify code
Zbigniew Jędrzejewski-Szmek [Mon, 20 Aug 2018 11:11:06 +0000 (13:11 +0200)] 
analyze: use temporary var to simplify code

5 years agonetworkd and sd-netlink: add support for Generic netlink And FooOverUDP to IPIP tunnel
Susant Sahani [Sun, 3 Jun 2018 07:07:41 +0000 (12:37 +0530)] 
networkd and sd-netlink: add support for Generic netlink And FooOverUDP to IPIP tunnel

This work add support to generic netlink to sd-netlink.
See https://lwn.net/Articles/208755/

networkd: add support FooOverUDP support to IPIP tunnel netdev
https://lwn.net/Articles/614348/

Example conf:

/lib/systemd/network/1-fou-tunnel.netdev
```
[NetDev]
Name=fou-tun
Kind=fou

[FooOverUDP]
Port=5555
Protocol=4

```

/lib/systemd/network/ipip-tunnel.netdev
```
[NetDev]
Name=ipip-tun
Kind=ipip

[Tunnel]
Independent=true
Local=10.65.208.212
Remote=10.65.208.211
FooOverUDP=true
FOUDestinationPort=5555
```

$ ip -d link show ipip-tun
```
5: ipip-tun@NONE: <POINTOPOINT,NOARP> mtu 1472 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ipip 10.65.208.212 peer 10.65.208.211 promiscuity 0
    ipip remote 10.65.208.211 local 10.65.208.212 ttl inherit pmtudisc encap fou encap-sport auto encap-dport 5555 noencap-csum noencap-csum6 noencap-remcsum numtxqueues 1 numrxqueues 1 gso_max_size 65536 gso_max_segs 65535
```