]> git.ipfire.org Git - thirdparty/systemd.git/log
thirdparty/systemd.git
5 years agocgroup: Move attribute application into unit_create_cgroup
Chris Down [Tue, 27 Nov 2018 15:16:35 +0000 (15:16 +0000)] 
cgroup: Move attribute application into unit_create_cgroup

We always end up doing these together, so just colocate them and require
manager state for unit_create_cgroup.

5 years agonetwork: drop unnecessary buffers
Yu Watanabe [Mon, 3 Dec 2018 09:22:05 +0000 (10:22 +0100)] 
network: drop unnecessary buffers

5 years agoMerge pull request #10992 from yuwata/follow-up-10948
Lennart Poettering [Mon, 3 Dec 2018 10:09:04 +0000 (11:09 +0100)] 
Merge pull request #10992 from yuwata/follow-up-10948

network: make fib rule accept arbitrary ip protocol

5 years agomissing: split network related entries
Yu Watanabe [Sun, 2 Dec 2018 15:27:02 +0000 (16:27 +0100)] 
missing: split network related entries

Also adds comments which kernel version added the entries.

Closes #10553.

5 years agosd-boot: remove Stall() call (#11029)
Harald Hoyer [Mon, 3 Dec 2018 09:27:26 +0000 (10:27 +0100)] 
sd-boot: remove Stall() call (#11029)

This is left-over from debugging.

5 years agovxlan: minor coding style fixes.
Susant Sahani [Sun, 2 Dec 2018 13:04:06 +0000 (18:34 +0530)] 
vxlan: minor coding style fixes.

5 years agoMerge pull request #11011 from poettering/tmpfile-util
Yu Watanabe [Sun, 2 Dec 2018 17:04:31 +0000 (02:04 +0900)] 
Merge pull request #11011 from poettering/tmpfile-util

split up fileio.c a bit

5 years agoresolved: sort headers again 11011/head
Lennart Poettering [Sun, 2 Dec 2018 12:22:14 +0000 (13:22 +0100)] 
resolved: sort headers again

5 years agoutil-lib: split out env file parsing code into env-file.c
Lennart Poettering [Fri, 30 Nov 2018 21:08:41 +0000 (22:08 +0100)] 
util-lib: split out env file parsing code into env-file.c

It's quite complex, let's split this out.

No code changes, just some file rearranging.

5 years agoutil-lib: move open_serialization_fd() to serialize.c
Lennart Poettering [Fri, 30 Nov 2018 20:39:12 +0000 (21:39 +0100)] 
util-lib: move open_serialization_fd() to serialize.c

It definitely fits better there.

No code changes, just some rearranging.

5 years agoresolved: remove duplicate #include
Lennart Poettering [Fri, 30 Nov 2018 20:12:50 +0000 (21:12 +0100)] 
resolved: remove duplicate #include

5 years agotest: remove duplicate #include
Lennart Poettering [Fri, 30 Nov 2018 20:18:34 +0000 (21:18 +0100)] 
test: remove duplicate #include

5 years agoutil-lib: split out all temporary file related calls into tmpfiles-util.c
Lennart Poettering [Fri, 30 Nov 2018 20:05:27 +0000 (21:05 +0100)] 
util-lib: split out all temporary file related calls into tmpfiles-util.c

This splits out a bunch of functions from fileio.c that have to do with
temporary files. Simply to make the header files a bit shorter, and to
group things more nicely.

No code changes, just some rearranging of source files.

5 years agoutil-lib: don't include fileio.h from fileio-label.h
Lennart Poettering [Fri, 30 Nov 2018 20:07:21 +0000 (21:07 +0100)] 
util-lib: don't include fileio.h from fileio-label.h

There's no reason for doing that, hence simply don't.

5 years agotest: remove unnecessary include
Lennart Poettering [Fri, 30 Nov 2018 20:17:20 +0000 (21:17 +0100)] 
test: remove unnecessary include

5 years agotest: (void)ify unlink() call
Lennart Poettering [Fri, 30 Nov 2018 20:15:57 +0000 (21:15 +0100)] 
test: (void)ify unlink() call

5 years agofileio: remove unnecessary initialization
Lennart Poettering [Fri, 30 Nov 2018 20:06:16 +0000 (21:06 +0100)] 
fileio: remove unnecessary initialization

5 years agofileio: include ctype.h with <> rather than ""
Lennart Poettering [Fri, 30 Nov 2018 20:05:49 +0000 (21:05 +0100)] 
fileio: include ctype.h with <> rather than ""

It's a system header after all.

5 years agocore,run: make SocketProtocol= accept protocol name in upper case an protocol number 10992/head
Yu Watanabe [Fri, 30 Nov 2018 03:57:03 +0000 (04:57 +0100)] 
core,run: make SocketProtocol= accept protocol name in upper case an protocol number

5 years agonetwork: make IPProtocol= also accept IP protocol number
Yu Watanabe [Thu, 29 Nov 2018 15:43:40 +0000 (16:43 +0100)] 
network: make IPProtocol= also accept IP protocol number

5 years agonetwork: rename Protocol= in [RoutingPolicyRule] to IPProtocol=
Yu Watanabe [Thu, 29 Nov 2018 15:42:39 +0000 (16:42 +0100)] 
network: rename Protocol= in [RoutingPolicyRule] to IPProtocol=

5 years agotest: add tests for ip_protocol_{from,to}_name()
Yu Watanabe [Thu, 29 Nov 2018 15:28:33 +0000 (16:28 +0100)] 
test: add tests for ip_protocol_{from,to}_name()

5 years agoutil: introduce parse_ip_protocol()
Yu Watanabe [Thu, 29 Nov 2018 15:09:30 +0000 (16:09 +0100)] 
util: introduce parse_ip_protocol()

Not only protocol name in lower case, but it optionally accepts
IP protocol name in upper case and IP protocol number.

5 years agoutil: cast smaller type to large type
Yu Watanabe [Sun, 2 Dec 2018 04:58:18 +0000 (05:58 +0100)] 
util: cast smaller type to large type

5 years agoutil: rename socket_protocol_{from,to}_name() to ip_protocol_{from,to}_name()
Yu Watanabe [Thu, 29 Nov 2018 14:58:43 +0000 (15:58 +0100)] 
util: rename socket_protocol_{from,to}_name() to ip_protocol_{from,to}_name()

5 years agotree-wide: remove various unused functions
Lennart Poettering [Fri, 30 Nov 2018 16:38:56 +0000 (17:38 +0100)] 
tree-wide: remove various unused functions

All found with "cppcheck --enable=unusedFunction".

5 years agoMerge pull request #11013 from evverx/travis-clang
Evgeny Vereshchagin [Sun, 2 Dec 2018 00:54:21 +0000 (03:54 +0300)] 
Merge pull request #11013 from evverx/travis-clang

travis: also build systemd with clang

5 years agoip rule: fix clang warning. 11013/head
Susant Sahani [Sat, 1 Dec 2018 09:44:35 +0000 (15:14 +0530)] 
ip rule: fix clang warning.

```
[2/1209] Compiling C object 'src/network/src@network@@networkd-core@sta/networkd-routing-policy-rule.c.o'.
FAILED: src/network/src@network@@networkd-core@sta/networkd-routing-policy-rule.c.o
clang -Isrc/network/src@network@@networkd-core@sta -Isrc/network -I../src/network -Isrc/basic -I../src/basic -Isrc/shared -I../src/shared -Isrc/systemd -I../src/systemd -Isrc/journal -I../src/journal -Isrc/journal-remote -I../src/journal-remote -Isrc/nspawn -I../src/nspawn -Isrc/resolve -I../src/resolve -Isrc/timesync -I../src/timesync -I../src/time-wait-sync -Isrc/login -I../src/login -Isrc/udev -I../src/udev -Isrc/libudev -I../src/libudev -Isrc/core -I../src/core -I../src/libsystemd/sd-bus -I../src/libsystemd/sd-device -I../src/libsystemd/sd-event -I../src/libsystemd/sd-hwdb -I../src/libsystemd/sd-id128 -I../src/libsystemd/sd-netlink -I../src/libsystemd/sd-network -Isrc/libsystemd-network -I../src/libsystemd-network -I. -I../ -Xclang -fcolor-diagnostics -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Werror -std=gnu99 -O0 -g -Wextra -Werror=undef -Wmissing-include-dirs -Wold-style-definition -Wpointer-arith -Winit-self -Wfloat-equal -Werror=missing-prototypes -Werror=implicit-function-declaration -Werror=missing-declarations -Werror=return-type -Werror=incompatible-pointer-types -Werror=format=2 -Wstrict-prototypes -Wredundant-decls -Wmissing-noreturn -Wshadow -Wendif-labels -Wstrict-aliasing=2 -Wwrite-strings -Werror=overflow -Werror=shift-count-overflow -Wdate-time -Wnested-externs -Wno-unused-parameter -Wno-missing-field-initializers -Wno-unused-result -Wno-error=nonnull -ffast-math -fno-common -fdiagnostics-show-option -fno-strict-aliasing -fvisibility=hidden -fstack-protector -fstack-protector-strong --param=ssp-buffer-size=4 -fPIE -Wno-typedef-redefinition -Wno-gnu-variable-sized-type-not-at-end -Werror=shadow -include config.h -fPIC  -MD -MQ 'src/network/src@network@@networkd-core@sta/networkd-routing-policy-rule.c.o' -MF 'src/network/src@network@@networkd-core@sta/networkd-routing-policy-rule.c.o.d' -o 'src/network/src@network@@networkd-core@sta/networkd-routing-policy-rule.c.o' -c ../src/network/networkd-routing-policy-rule.c
../src/network/networkd-routing-policy-rule.c:1071:33: error: format specifies type 'unsigned char' but the argument has type '__u16' (aka 'unsigned short') [-Werror,-Wformat]
                                rule->sport.start, rule->sport.end);
                                ^~~~~~~~~~~~~~~~~
../src/network/networkd-routing-policy-rule.c:1071:52: error: format specifies type 'unsigned char' but the argument has type '__u16' (aka 'unsigned short') [-Werror,-Wformat]
                                rule->sport.start, rule->sport.end);
                                                   ^~~~~~~~~~~~~~~
../src/network/networkd-routing-policy-rule.c:1078:33: error: format specifies type 'unsigned char' but the argument has type '__u16' (aka 'unsigned short') [-Werror,-Wformat]
                                rule->dport.start, rule->dport.end);
                                ^~~~~~~~~~~~~~~~~
../src/network/networkd-routing-policy-rule.c:1078:52: error: format specifies type 'unsigned char' but the argument has type '__u16' (aka 'unsigned short') [-Werror,-Wformat]
                                rule->dport.start, rule->dport.end);
                                                   ^~~~~~~~~~~~~~~
4 errors generated.
```

5 years agoresolved: add missed io-util.h header to resolved-dnstls-openssl.c
Aleksei Timofeyev [Sat, 1 Dec 2018 09:10:08 +0000 (14:10 +0500)] 
resolved: add missed io-util.h header to resolved-dnstls-openssl.c

Regression after commit 5cfa2c3dc09ffed1

5 years agotravis: also build systemd with clang
Evgeny Vereshchagin [Fri, 30 Nov 2018 23:45:35 +0000 (00:45 +0100)] 
travis: also build systemd with clang

5 years agotravis: use latest instead of rawhide
Evgeny Vereshchagin [Sat, 1 Dec 2018 03:28:50 +0000 (04:28 +0100)] 
travis: use latest instead of rawhide

5 years agoMerge pull request #11006 from poettering/conf-file-fix
Lennart Poettering [Fri, 30 Nov 2018 23:47:22 +0000 (00:47 +0100)] 
Merge pull request #11006 from poettering/conf-file-fix

minor fixes for conf-files.c

5 years agoMerge pull request #11002 from keszybz/path_join-merging
Lennart Poettering [Fri, 30 Nov 2018 23:44:58 +0000 (00:44 +0100)] 
Merge pull request #11002 from keszybz/path_join-merging

Path join merging

5 years agoMerge pull request #11004 from keszybz/remove-fixme-comment
Lennart Poettering [Fri, 30 Nov 2018 23:01:11 +0000 (00:01 +0100)] 
Merge pull request #11004 from keszybz/remove-fixme-comment

socket-util: drop obsolete FIXME comment and add test

5 years agopath-util: allow NULLs in arguments to path_join() 11002/head
Zbigniew Jędrzejewski-Szmek [Fri, 30 Nov 2018 10:06:24 +0000 (11:06 +0100)] 
path-util: allow NULLs in arguments to path_join()

This removes the need to remember to put strempty() in places, thus reducing
the likelihood of a stupid mistake.

5 years agonetworkd: refuse IPv6 RADV prefixes that lack Prefix= setting
Lennart Poettering [Fri, 30 Nov 2018 18:34:17 +0000 (19:34 +0100)] 
networkd: refuse IPv6 RADV prefixes that lack Prefix= setting

Fixes: #9589
5 years agobasic/socket-util: use c-escaping to print unprintable socket paths 11004/head
Zbigniew Jędrzejewski-Szmek [Fri, 30 Nov 2018 10:54:42 +0000 (11:54 +0100)] 
basic/socket-util: use c-escaping to print unprintable socket paths

We are pretty careful to reject abstract sockets that are too long to fit in
the address structure as a NUL-terminated string. And since we parse sockets as
strings, it is not possible to embed a NUL in the the address either.  But we
might receive an external socket (abstract or not), and we want to be able to
print its address in all cases. We would call socket_address_verify() and
refuse to print various sockets that the kernel considers legit.

Let's do the strict verification only in case of socket addresses we parse and
open ourselves, and do less strict verification when printing addresses of
existing sockets, and use c-escaping to print embedded NULs and such.

More tests are added.

This should make LGTM happier because on FIXME comment is removed.

5 years agoshared/socket-util: do not print empty CID
Zbigniew Jędrzejewski-Szmek [Fri, 30 Nov 2018 14:17:25 +0000 (15:17 +0100)] 
shared/socket-util: do not print empty CID

That's just ugly.

5 years agotest-socket-util: add test for socket_address_print
Zbigniew Jędrzejewski-Szmek [Fri, 30 Nov 2018 14:13:32 +0000 (15:13 +0100)] 
test-socket-util: add test for socket_address_print

5 years agotest-socket-util: the usual modernization
Zbigniew Jędrzejewski-Szmek [Fri, 30 Nov 2018 13:23:19 +0000 (14:23 +0100)] 
test-socket-util: the usual modernization

5 years agoMerge pull request #10701 from poettering/analyze-security
Lennart Poettering [Fri, 30 Nov 2018 18:41:59 +0000 (19:41 +0100)] 
Merge pull request #10701 from poettering/analyze-security

systemd-analyze: add a new "security" verb for analyzing unit sandboxing options

5 years agoconf-files: remove unused function 11006/head
Lennart Poettering [Fri, 30 Nov 2018 15:56:35 +0000 (16:56 +0100)] 
conf-files: remove unused function

5 years agoconf-files: remove misplaced log_oom()
Lennart Poettering [Fri, 30 Nov 2018 15:55:57 +0000 (16:55 +0100)] 
conf-files: remove misplaced log_oom()

The caller should log in this case (and all callers in fact already do),
hence let's remove the duplicate logging here.

5 years agoconf-files: improve algorithm O(n²) → O(n)
Lennart Poettering [Fri, 30 Nov 2018 15:55:33 +0000 (16:55 +0100)] 
conf-files: improve algorithm O(n²) → O(n)

5 years agoupdate TODO 10701/head
Lennart Poettering [Wed, 7 Nov 2018 16:41:55 +0000 (17:41 +0100)] 
update TODO

5 years agoman: document systemd-analyze security
Lennart Poettering [Fri, 9 Nov 2018 11:19:30 +0000 (12:19 +0100)] 
man: document systemd-analyze security

5 years agoanalyze: add new security verb
Lennart Poettering [Thu, 8 Nov 2018 08:32:17 +0000 (09:32 +0100)] 
analyze: add new security verb

5 years agoformat-table: make sure we never call memcmp() with NULL parameters
Lennart Poettering [Wed, 14 Nov 2018 17:39:37 +0000 (18:39 +0100)] 
format-table: make sure we never call memcmp() with NULL parameters

5 years agoformat-table: add calls to query the data in a specific cell
Lennart Poettering [Fri, 9 Nov 2018 10:38:12 +0000 (11:38 +0100)] 
format-table: add calls to query the data in a specific cell

5 years agoformat-table: always underline header line
Lennart Poettering [Thu, 8 Nov 2018 20:39:28 +0000 (21:39 +0100)] 
format-table: always underline header line

5 years agoformat-table: add an API for getting the cell at a specific row/column
Lennart Poettering [Thu, 8 Nov 2018 20:21:09 +0000 (21:21 +0100)] 
format-table: add an API for getting the cell at a specific row/column

5 years agoformat-table: add table_update() to update existing entries
Lennart Poettering [Thu, 8 Nov 2018 20:17:47 +0000 (21:17 +0100)] 
format-table: add table_update() to update existing entries

5 years agoformat-table: optionally allow reversing the sort order for a column
Lennart Poettering [Wed, 7 Nov 2018 16:41:32 +0000 (17:41 +0100)] 
format-table: optionally allow reversing the sort order for a column

5 years agoformat-table: add option to store/format percent and uint64_t values in cells
Lennart Poettering [Wed, 7 Nov 2018 14:25:51 +0000 (15:25 +0100)] 
format-table: add option to store/format percent and uint64_t values in cells

5 years agoformat-table: before outputting a color, check if colors are available
Lennart Poettering [Tue, 6 Nov 2018 17:37:21 +0000 (18:37 +0100)] 
format-table: before outputting a color, check if colors are available

This is in many cases redundant, as a similar check is done by various
callers already, but in other cases (where we read the color from a
static table for example), it's nice to let the color check be done by
the table code itself, and since it doesn't hurt in the other cases just
do it again.

5 years agoformat-table: optionally make specific cells clickable links
Lennart Poettering [Tue, 6 Nov 2018 11:06:14 +0000 (12:06 +0100)] 
format-table: optionally make specific cells clickable links

5 years agoformat-table: when duplicating a cell, also copy the color
Lennart Poettering [Thu, 8 Nov 2018 20:16:23 +0000 (21:16 +0100)] 
format-table: when duplicating a cell, also copy the color

5 years agoterminal-util: split out file:// generation from terminal_urlify_path()
Lennart Poettering [Wed, 7 Nov 2018 10:09:03 +0000 (11:09 +0100)] 
terminal-util: split out file:// generation from terminal_urlify_path()

This way we can use it at other places, for example when preparing URLs
for format_table_set_url()

5 years agomacro: update DIV_ROUND_UP() so that it can be called nested
Lennart Poettering [Fri, 9 Nov 2018 10:37:21 +0000 (11:37 +0100)] 
macro: update DIV_ROUND_UP() so that it can be called nested

5 years agoparse-util: allow parse_boolean() to take a NULL argument
Lennart Poettering [Tue, 6 Nov 2018 11:06:45 +0000 (12:06 +0100)] 
parse-util: allow parse_boolean() to take a NULL argument

It's pretty useful to allow parse_boolean() to take a NULL argument and
return an error in that case, rather than abort. i.e. making this a
runtime rather than programming error allows us to shorten code
elsewhere.

5 years agoanalyze: use strv_skip() where appropriate
Lennart Poettering [Tue, 6 Nov 2018 11:05:26 +0000 (12:05 +0100)] 
analyze: use strv_skip() where appropriate

5 years agoanalyze: remove unnecessary negation of bus_error_message() error number parameter
Lennart Poettering [Tue, 6 Nov 2018 11:04:23 +0000 (12:04 +0100)] 
analyze: remove unnecessary negation of bus_error_message() error number parameter

5 years agoanalyze: fix include order
Lennart Poettering [Tue, 6 Nov 2018 11:02:55 +0000 (12:02 +0100)] 
analyze: fix include order

5 years agoseccomp-util: drop process_vm_readv from @debug group
Lennart Poettering [Thu, 8 Nov 2018 19:13:54 +0000 (20:13 +0100)] 
seccomp-util: drop process_vm_readv from @debug group

it's already part of @ipc, no need to have it in both. Given that @ipc
is much more popular (as it is part of @system-service for example),
let's not define it a second time.

5 years agolocale-util: add logic to output smiley emojis at various happiness levels
Lennart Poettering [Tue, 6 Nov 2018 16:59:58 +0000 (17:59 +0100)] 
locale-util: add logic to output smiley emojis at various happiness levels

5 years agotree-wide: rename path_join_many() to path_join()
Zbigniew Jędrzejewski-Szmek [Fri, 30 Nov 2018 09:43:57 +0000 (10:43 +0100)] 
tree-wide: rename path_join_many() to path_join()

$ git grep -e path_join_many -l|xargs sed -r -i 's/path_join_many/path_join/g'

The two test functions are merged into one.

5 years agotree-wide: replace path_join with path_join_many
Zbigniew Jędrzejewski-Szmek [Fri, 30 Nov 2018 09:40:38 +0000 (10:40 +0100)] 
tree-wide: replace path_join with path_join_many

5 years agoMerge pull request #10996 from poettering/oci-prep
Zbigniew Jędrzejewski-Szmek [Fri, 30 Nov 2018 09:09:00 +0000 (10:09 +0100)] 
Merge pull request #10996 from poettering/oci-prep

Preparation for the nspawn-OCI work

5 years agodocs: turn LGTM URL into a markdown link
Filipe Brandenburger [Fri, 30 Nov 2018 08:47:13 +0000 (00:47 -0800)] 
docs: turn LGTM URL into a markdown link

5 years agohwdb: Put Lenovo mouse under the correct category in 70-mouse.hwdb (#10995)
Claudius Ellsel [Fri, 30 Nov 2018 08:14:30 +0000 (09:14 +0100)] 
hwdb: Put Lenovo mouse under the correct category in 70-mouse.hwdb (#10995)

[zj: the entry for a Thinkpad mouse is moved to the end of Lenovo section, and a
      Lenovo mouse is moved from Logitech section to Lenovo section.]

5 years agomeson.build: fix detection of -Werror=shadow
Fabrice Fontaine [Thu, 29 Nov 2018 12:22:08 +0000 (13:22 +0100)] 
meson.build: fix detection of -Werror=shadow

Pass -Werror=shadow in args of cc.compiles otherwise test will always
succeed
This fix a build failure with gcc 4.7.3

Fixes:
 - http://autobuild.buildroot.org/results/ffd71c473d3b29618c18cd2e04705370266696f2

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
5 years agoMerge pull request #10990 from keszybz/link-libmount-less
Zbigniew Jędrzejewski-Szmek [Thu, 29 Nov 2018 20:38:37 +0000 (21:38 +0100)] 
Merge pull request #10990 from keszybz/link-libmount-less

Link libmount less

5 years agoMove mount-util.c to shared/ 10990/head
Zbigniew Jędrzejewski-Szmek [Thu, 29 Nov 2018 09:29:34 +0000 (10:29 +0100)] 
Move mount-util.c to shared/

libmount dep is moved from libbasic to libshared, potentially removing
libmount from some build products.

5 years agoSplit out part of mount-util.c into mountpoint-util.c
Zbigniew Jędrzejewski-Szmek [Thu, 29 Nov 2018 09:24:39 +0000 (10:24 +0100)] 
Split out part of mount-util.c into mountpoint-util.c

The idea is that anything which is related to actually manipulating mounts is
in mount-util.c, but functions for mountpoint introspection are moved to the
new file. Anything which requires libmount must be in mount-util.c.

This was supposed to be a preparation for further changes, with no functional
difference, but it results in a significant change in linkage:

$ ldd build/libnss_*.so.2
(before)
build/libnss_myhostname.so.2:
linux-vdso.so.1 (0x00007fff77bf5000)
librt.so.1 => /lib64/librt.so.1 (0x00007f4bbb7b2000)
libmount.so.1 => /lib64/libmount.so.1 (0x00007f4bbb755000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f4bbb734000)
libc.so.6 => /lib64/libc.so.6 (0x00007f4bbb56e000)
/lib64/ld-linux-x86-64.so.2 (0x00007f4bbb8c1000)
libblkid.so.1 => /lib64/libblkid.so.1 (0x00007f4bbb51b000)
libuuid.so.1 => /lib64/libuuid.so.1 (0x00007f4bbb512000)
libselinux.so.1 => /lib64/libselinux.so.1 (0x00007f4bbb4e3000)
libpcre2-8.so.0 => /lib64/libpcre2-8.so.0 (0x00007f4bbb45e000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f4bbb458000)
build/libnss_mymachines.so.2:
linux-vdso.so.1 (0x00007ffc19cc0000)
librt.so.1 => /lib64/librt.so.1 (0x00007fdecb74b000)
libcap.so.2 => /lib64/libcap.so.2 (0x00007fdecb744000)
libmount.so.1 => /lib64/libmount.so.1 (0x00007fdecb6e7000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fdecb6c6000)
libc.so.6 => /lib64/libc.so.6 (0x00007fdecb500000)
/lib64/ld-linux-x86-64.so.2 (0x00007fdecb8a9000)
libblkid.so.1 => /lib64/libblkid.so.1 (0x00007fdecb4ad000)
libuuid.so.1 => /lib64/libuuid.so.1 (0x00007fdecb4a2000)
libselinux.so.1 => /lib64/libselinux.so.1 (0x00007fdecb475000)
libpcre2-8.so.0 => /lib64/libpcre2-8.so.0 (0x00007fdecb3f0000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007fdecb3ea000)
build/libnss_resolve.so.2:
linux-vdso.so.1 (0x00007ffe8ef8e000)
librt.so.1 => /lib64/librt.so.1 (0x00007fcf314bd000)
libcap.so.2 => /lib64/libcap.so.2 (0x00007fcf314b6000)
libmount.so.1 => /lib64/libmount.so.1 (0x00007fcf31459000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fcf31438000)
libc.so.6 => /lib64/libc.so.6 (0x00007fcf31272000)
/lib64/ld-linux-x86-64.so.2 (0x00007fcf31615000)
libblkid.so.1 => /lib64/libblkid.so.1 (0x00007fcf3121f000)
libuuid.so.1 => /lib64/libuuid.so.1 (0x00007fcf31214000)
libselinux.so.1 => /lib64/libselinux.so.1 (0x00007fcf311e7000)
libpcre2-8.so.0 => /lib64/libpcre2-8.so.0 (0x00007fcf31162000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007fcf3115c000)
build/libnss_systemd.so.2:
linux-vdso.so.1 (0x00007ffda6d17000)
librt.so.1 => /lib64/librt.so.1 (0x00007f610b83c000)
libcap.so.2 => /lib64/libcap.so.2 (0x00007f610b835000)
libmount.so.1 => /lib64/libmount.so.1 (0x00007f610b7d8000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f610b7b7000)
libc.so.6 => /lib64/libc.so.6 (0x00007f610b5f1000)
/lib64/ld-linux-x86-64.so.2 (0x00007f610b995000)
libblkid.so.1 => /lib64/libblkid.so.1 (0x00007f610b59e000)
libuuid.so.1 => /lib64/libuuid.so.1 (0x00007f610b593000)
libselinux.so.1 => /lib64/libselinux.so.1 (0x00007f610b566000)
libpcre2-8.so.0 => /lib64/libpcre2-8.so.0 (0x00007f610b4e1000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007f610b4db000)

(after)
build/libnss_myhostname.so.2:
linux-vdso.so.1 (0x00007fff0b5e2000)
librt.so.1 => /lib64/librt.so.1 (0x00007fde0c328000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fde0c307000)
libc.so.6 => /lib64/libc.so.6 (0x00007fde0c141000)
/lib64/ld-linux-x86-64.so.2 (0x00007fde0c435000)
build/libnss_mymachines.so.2:
linux-vdso.so.1 (0x00007ffdc30a7000)
librt.so.1 => /lib64/librt.so.1 (0x00007f06ecabb000)
libcap.so.2 => /lib64/libcap.so.2 (0x00007f06ecab4000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f06eca93000)
libc.so.6 => /lib64/libc.so.6 (0x00007f06ec8cd000)
/lib64/ld-linux-x86-64.so.2 (0x00007f06ecc15000)
build/libnss_resolve.so.2:
linux-vdso.so.1 (0x00007ffe95747000)
librt.so.1 => /lib64/librt.so.1 (0x00007fa56a80f000)
libcap.so.2 => /lib64/libcap.so.2 (0x00007fa56a808000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fa56a7e7000)
libc.so.6 => /lib64/libc.so.6 (0x00007fa56a621000)
/lib64/ld-linux-x86-64.so.2 (0x00007fa56a964000)
build/libnss_systemd.so.2:
linux-vdso.so.1 (0x00007ffe67b51000)
librt.so.1 => /lib64/librt.so.1 (0x00007ffb32113000)
libcap.so.2 => /lib64/libcap.so.2 (0x00007ffb3210c000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007ffb320eb000)
libc.so.6 => /lib64/libc.so.6 (0x00007ffb31f25000)
/lib64/ld-linux-x86-64.so.2 (0x00007ffb3226a000)

I don't quite understand what is going on here, but let's not be too picky.

5 years agoupdate TODO 10996/head
Lennart Poettering [Mon, 2 Jul 2018 16:22:07 +0000 (18:22 +0200)] 
update TODO

5 years agodev-setup: generalize logic we use to create "inaccessible" device nodes
Lennart Poettering [Fri, 27 Jul 2018 16:04:11 +0000 (18:04 +0200)] 
dev-setup: generalize logic we use to create "inaccessible" device nodes

Let's generalize this, so that we can use this in nspawn later on, which
is pretty useful as we need to be able to mask files from the inner
child of nspawn too, where the host's /run/systemd/inaccessible
directory is not visible anymore. Moreover, if nspawn can create these
nodes on its own before the payload this means the payload can run with
fewer privileges.

5 years agonspawn: let's also pre-mount /dev/mqueue
Lennart Poettering [Thu, 26 Jul 2018 15:24:51 +0000 (17:24 +0200)] 
nspawn: let's also pre-mount /dev/mqueue

5 years agoptyfwd: optionally override terminal width/height
Lennart Poettering [Tue, 24 Jul 2018 15:15:33 +0000 (17:15 +0200)] 
ptyfwd: optionally override terminal width/height

5 years agofs-util: beef up chmod_and_chown() a bit
Lennart Poettering [Tue, 24 Jul 2018 15:12:27 +0000 (17:12 +0200)] 
fs-util: beef up chmod_and_chown() a bit

5 years agocapability: add new type for maintaining all five cap sets as one
Lennart Poettering [Tue, 24 Jul 2018 15:00:58 +0000 (17:00 +0200)] 
capability: add new type for maintaining all five cap sets as one

5 years agocgroup: use device_path_parse_major_minor() also for block device paths
Lennart Poettering [Mon, 2 Jul 2018 16:20:03 +0000 (18:20 +0200)] 
cgroup: use device_path_parse_major_minor() also for block device paths

Not only when we populate the "devices" cgroup controller we need
major/minor numbers, but for the io/blkio one it's the same, hence let's
use the same logic for both.

5 years agotree-wide: port various parts of the code over to the new device_major_minor_path...
Lennart Poettering [Fri, 29 Jun 2018 14:49:23 +0000 (16:49 +0200)] 
tree-wide: port various parts of the code over to the new device_major_minor_path() calls

5 years agostat-util: add new APIs device_path_make_{major_minor|canonical}() and device_path_pa...
Lennart Poettering [Fri, 29 Jun 2018 13:57:49 +0000 (15:57 +0200)] 
stat-util: add new APIs device_path_make_{major_minor|canonical}() and device_path_parse_major_minor()

device_path_make_{major_minor|canonical)  generate device node paths
given a mode_t and a dev_t. We have similar code all over the place,
let's unify this in one place. The former will generate a "/dev/char/"
or "/dev/block" path, and never go to disk. The latter then goes to disk
and resolves that path to the actual path of the device node.

device_path_parse_major_minor() reverses device_path_make_major_minor(),
also withozut going to disk.

We have similar code doing something like this at various places, let's
unify this in a single set of functions. This also allows us to teach
them special tricks, for example handling of the
/run/systemd/inaccessible/{blk|chr} device nodes, which we use for
masking device nodes, and which do not exist in /dev/char/* and
/dev/block/*

5 years agocgroups: beef up DeviceAllow= syntax a bit
Lennart Poettering [Fri, 29 Jun 2018 10:09:29 +0000 (12:09 +0200)] 
cgroups: beef up DeviceAllow= syntax a bit

Previously we'd allow pattern expressions such as "char-input" to match
all input devices. Internally, this would look up the right major to
test in /proc/devices. With this commit the syntax is slightly extended:

- "char-*" can be used to match any kind of character device, and
  similar "block-*. This expression would work previously already, but
  instead of actually installing a wildcard match it would install many
  individual matches for everything listed in /proc/devices.

- "char-<MAJOR>" with "<MAJOR>" being a numerical parameter works now
  too. This allows clients to install whitelist items by specifying the
  major directly.

The main reason to add these is to provide limited compat support for
clients that for some reason contain whitelists with major/minor numbers
(such as OCI containers).

5 years agocore: add special handling for devices cgroup allow lists for /dev/block/* and /dev...
Lennart Poettering [Fri, 29 Jun 2018 10:03:33 +0000 (12:03 +0200)] 
core: add special handling for devices cgroup allow lists for /dev/block/* and /dev/char/* device nodes

This adds some code to hanlde /dev/block/* and /dev/char/* device node
paths specially: instead of actually stat()ing them we'll just parse the
major/minor name from the name. This is useful 'hack' to allow clients
to install whitelists for devices that don't actually have to exist.

Also, let's similarly handle /run/systemd/inaccessible/{blk|chr}. This
allows us to simplify our built-in default whitelist to not require a
"ignore_enoent" mode for these nodes.

In general we should be careful with hardcoding major/minor numbers, but
in this case this should safe.

5 years agotree-wide: port various parts of the code to use parse_dev()
Lennart Poettering [Fri, 29 Jun 2018 10:01:02 +0000 (12:01 +0200)] 
tree-wide: port various parts of the code to use parse_dev()

5 years agopath-util: port path_join() over to path_join_many()
Lennart Poettering [Mon, 30 Jul 2018 19:29:34 +0000 (21:29 +0200)] 
path-util: port path_join() over to path_join_many()

We should probably drop path_join() entirely in the long run (and
then rename path_join_many() to it?), but for now let's make one a
wrapper for the other.

5 years agopath-util: add new path_join_many() API
Lennart Poettering [Thu, 28 Jun 2018 20:28:40 +0000 (22:28 +0200)] 
path-util: add new path_join_many() API

5 years agoparse-util: rework parse_dev() based on safe_atou() and DEVICE_MAJOR_VALID()/DEVICE_M...
Lennart Poettering [Fri, 29 Jun 2018 09:58:24 +0000 (11:58 +0200)] 
parse-util: rework parse_dev() based on safe_atou() and DEVICE_MAJOR_VALID()/DEVICE_MINOR_VALID()

Let's be a bit more careful when parsing major/minor pairs, and filter
out more corner cases. This also means using safe_atou() rather than
sscanf() to avoid weird negative unsigned handling and such.

5 years agologind: validate majors/minors we receieve via the bus
Lennart Poettering [Fri, 29 Jun 2018 10:13:33 +0000 (12:13 +0200)] 
logind: validate majors/minors we receieve via the bus

5 years agostat-util: add macros for checking whether major and minor values are in range
Lennart Poettering [Thu, 28 Jun 2018 18:57:15 +0000 (20:57 +0200)] 
stat-util: add macros for checking whether major and minor values are in range

As it turns out glibc and the Linux kernel have different ideas about
the size of dev_t and how many bits exist for the major and the minor.
When validating major/minor numbers we should check against the kernel's
actual sizes, hence add macros for this.

5 years agoMerge pull request #10987 from poettering/index-md-work-around
Lennart Poettering [Thu, 29 Nov 2018 18:29:02 +0000 (19:29 +0100)] 
Merge pull request #10987 from poettering/index-md-work-around

docs: work around GitHub pages weirdness

5 years agoMerge pull request #10989 from keszybz/nss-man
Lennart Poettering [Thu, 29 Nov 2018 18:28:39 +0000 (19:28 +0100)] 
Merge pull request #10989 from keszybz/nss-man

Add example to nss-mymachines(8)

5 years agodocs: work around GitHub pages weirdness 10987/head
Lennart Poettering [Thu, 29 Nov 2018 10:40:23 +0000 (11:40 +0100)] 
docs: work around GitHub pages weirdness

Fixes: #10546
5 years agoMerge pull request #10357 from poettering/import-fs
Zbigniew Jędrzejewski-Szmek [Thu, 29 Nov 2018 15:38:46 +0000 (16:38 +0100)] 
Merge pull request #10357 from poettering/import-fs

machinectl import-fs command and other fixes

5 years agoman: add an extensive example to nss-mymachines(8) 10989/head
Zbigniew Jędrzejewski-Szmek [Thu, 29 Nov 2018 11:28:02 +0000 (12:28 +0100)] 
man: add an extensive example to nss-mymachines(8)

The man page didn't really say what we are mapping and with what
patterns. Let's fix that.

5 years agoMerge pull request #10959 from poettering/systemctl-edit-fixo
Zbigniew Jędrzejewski-Szmek [Thu, 29 Nov 2018 14:35:07 +0000 (15:35 +0100)] 
Merge pull request #10959 from poettering/systemctl-edit-fixo

Fix "systemctl edit" for non-loadable units

5 years agodocs: fix typo
Lennart Poettering [Thu, 29 Nov 2018 10:17:36 +0000 (11:17 +0100)] 
docs: fix typo

5 years agodocs: uppercase the title of our Markdown docs
Lennart Poettering [Thu, 29 Nov 2018 10:09:09 +0000 (11:09 +0100)] 
docs: uppercase the title of our Markdown docs

5 years agonetworkd: vxlan make use of parse_ip_port_range
Susant Sahani [Thu, 29 Nov 2018 09:47:49 +0000 (15:17 +0530)] 
networkd: vxlan make use of parse_ip_port_range

Use parse_ip_port_range