Yu Watanabe
23e6c10bbe
doc: update TODO
2018-03-21 13:39:16 +09:00
Yu Watanabe
12c2c56dcb
nss-systemd: make dynamic users enumerable by getent
...
This adds `setpwent()`, `getpwent_r()`, `endpwent()`, `setgrent()`,
`getgrent_r()`, and `endgrent()` interfaces to nss-systemd library.
Thus, dynamic users can be enumerated by e.g. `getent passwd` command.
2018-03-21 13:39:03 +09:00
Yu Watanabe
9b5eaef3d1
nss-systemd: define dynamic user properties
2018-03-21 13:11:30 +09:00
Yu Watanabe
2458541961
nss-systemd: cleanup bypassing dbus logic
2018-03-21 13:11:17 +09:00
Yu Watanabe
f9bfa6962d
core: add new dbus method GetDynamicUsers
...
This intruduces a new dbus method GetDynamicUsers for systemd1.Manager,
which enumerates all dynamic users realized in the system.
2018-03-21 13:11:01 +09:00
Yu Watanabe
11d6e9e9dc
resolve: show more global settings in systemd-resolve --status
...
Closes #8455 .
2018-03-20 00:44:47 +09:00
Yu Watanabe
bf4e5c4cc6
resolve: expose global LLMNR, MulticastDNS, and DNSSEC settings as bus property
2018-03-20 00:44:44 +09:00
Yu Watanabe
3b85dace6d
doc: update TODO
2018-03-20 00:44:41 +09:00
Yu Watanabe
07636114b1
bus-util: introduce bus_message_print_all_properties()
...
Then, use it where applicable.
2018-03-20 00:44:37 +09:00
Yu Watanabe
4679a8c301
systemctl: use bus_map_all_properties() in status command
2018-03-20 00:44:34 +09:00
Yu Watanabe
8559e61d64
systemctl: use string table for show()
2018-03-20 00:44:30 +09:00
Yu Watanabe
f37f8a61c0
bus-util: make bus_map_all_properties() not copy string
2018-03-20 00:42:48 +09:00
Yu Watanabe
4f00a11c73
bus-util: store boolean message to bool
2018-03-19 22:53:45 +09:00
Yu Watanabe
32b4727965
systemctl: use bus_map_all_properties() in list-dependencies command
2018-03-19 22:53:39 +09:00
Yu Watanabe
ee5324aa04
tree-wide: voidify pager_open()
...
Even if pager_open() fails, in general, we should continue the operations.
All erroneous cases in pager_open() show log message in the function.
So, it is not necessary to check the returned value.
2018-03-19 21:04:02 +09:00
Yu Watanabe
24fcd009c3
man: mention 'status' is the default command for timedatectl
2018-03-19 21:04:02 +09:00
Yu Watanabe
be90a88654
timedatectl: use dispatch_verb()
2018-03-19 21:04:02 +09:00
Yu Watanabe
d4e0773b4d
man: mention 'status' is the default command for localectl
2018-03-19 21:03:36 +09:00
Yu Watanabe
1d4ecb98be
localectl: use dispatch_verb()
2018-03-19 21:03:36 +09:00
Yu Watanabe
f46bc484f7
hostnamectl: use dispatch_verb()
2018-03-19 21:03:36 +09:00
Yu Watanabe
a456324fef
man: mention that 'status' is the default command for hostnamectl
2018-03-19 21:03:36 +09:00
Yu Watanabe
5ce97d33d0
coredumpctl: use dispatch_verb()
2018-03-19 21:03:36 +09:00
Yu Watanabe
5488660154
busctl: drop redundant pager_open()
2018-03-19 21:03:36 +09:00
Yu Watanabe
cb05d2a514
busctl: add missing oom check
2018-03-19 21:03:36 +09:00
Yu Watanabe
9bb31a0c9f
busctl: use dispatch_verb()
2018-03-19 21:03:36 +09:00
Yu Watanabe
15c3626e06
networkctl,hwdb: make verbs static
2018-03-19 21:03:35 +09:00
Yu Watanabe
cc6861006e
Merge pull request #8399 from keszybz/systemctl-kexec
...
Systemctl kexec buglet fixes
2018-03-19 18:35:41 +09:00
Yu Watanabe
bcabcde5d2
Merge pull request #8408 from keszybz/ln-relative
...
bugs.fd.o bug archelogy
2018-03-19 18:32:30 +09:00
Yu Watanabe
be1bc01d11
Merge pull request #8476 from EliaGeretto/n550jv-touchpad-fix
...
hwdb: correct touchpad resolution for Asus N550JV
2018-03-19 17:06:42 +09:00
Yu Watanabe
6f1ea95493
Merge pull request #8471 from filbranden/envnewline1
...
basic/env-util: Allow newlines in values of environment variables
2018-03-18 20:29:55 +09:00
Yu Watanabe
ef5018515a
Merge pull request #8468 from fbuihuu/sysusers-support-nis
...
Sysusers support nis
Fixes #8467 .
2018-03-18 19:57:18 +09:00
Yu Watanabe
a6d09d946b
Merge pull request #8473 from keszybz/fix-dbus-reload
...
Fix dbus reload. Fixes #8414 .
2018-03-17 19:45:38 +09:00
Yu Watanabe
0caa99466d
udev: use startswith() instead of the combination of strneq() and strlen() ( #8459 )
2018-03-16 10:29:57 +01:00
Yu Watanabe
dace710c4a
dhcp4: introduce new option 'duid-only' for ClientIdentifier= ( #8350 )
...
This makes users can configure DHCPv4 client with ClientIdentifier=duid-only.
If set so, then DHCP client sends only DUID as the client identifier.
This may not be RFC compliant, but some setups require this.
Closes #7828 .
2018-03-12 17:18:07 +01:00
Yu Watanabe
906bdbf5e7
core/cgroup: accepts MemorySwapMax=0 ( #8366 )
...
Also, this moves two macros from dbus-util.h to dbus-cgroup.c,
as they are only used in dbus-cgroup.c.
Fixes #8363 .
2018-03-09 11:34:50 +01:00
Yu Watanabe
5cbaad2f67
core: do not free heap-allocated strings ( #8391 )
...
Fixes #8387 .
2018-03-08 14:21:54 +01:00
Yu Watanabe
280029d18f
sd-bus: do not try to close already closed fd ( #8392 )
...
Fixes #8376 , which is introduced by 2b33ab0957 .
2018-03-08 14:19:35 +01:00
Yu Watanabe
a1d32bac2a
Revert "core: don't setup init.scope in test mode ( #8380 )" ( #8390 )
...
This reverts commit a9e8ecf037 ,
as it breaks test-path.
Fixes #8389 .
2018-03-08 15:29:19 +09:00
Yu Watanabe
694d57655c
rpm: add missing '-p <lua>' in trigger script ( #8367 )
...
Follow-up for 32a00a9c09 (#8090 ).
2018-03-06 08:02:44 +01:00
Yu Watanabe
e8fb0238cd
coredump: do not leak memory ( #8352 )
...
Fixes #8351 .
2018-03-05 08:39:52 +01:00
Yu Watanabe
e5ba1d324d
test-execute: use CAP_CHOWN instead of CAP_NET_ADMIN
...
CAP_NET_ADMIN is somtrimes dropped by container runtime.
This changes to use CAP_CHOWN instead of CAP_NET_ADMIN, as it is
less likely to be dropped.
2018-03-05 00:02:22 +09:00
Yu Watanabe
b7856f9218
test-execute: check capabilities before running tests
...
Fixes #8193 .
2018-03-05 00:00:35 +09:00
Yu Watanabe
5cd33ccc2c
test-execute: change log level from error to notice
...
Skipping some tests due to the missing e.g., capsh binary
or kernel support, are not error.
This changes the log level for such messages.
2018-03-04 16:53:50 +09:00
Yu Watanabe
b6dc25eebc
test-execute: rename tests for AmbientCapabilities=
...
The unit files for test-execute are named like
`exec-(setting-name-in-lower-character)-(optional-text).service`.
However, test units for AmbientCapabilities= are not following this.
So, let's rename them for the consistency.
This does not change anything in the functionality of the test.
2018-03-04 16:37:58 +09:00
Yu Watanabe
69b0740785
test-execute: add tests with user/group daemon
...
The nobody user/group may not synthesized by systemd.
To run tests the functionalities in such situation, this adds tests
by user/group by daemon, as it is expected to exists all environments.
2018-03-02 16:42:53 +09:00
Yu Watanabe
d4f0412de4
sysusers: do not implicitly create group by 'm' if 'u' with the same name exists
...
The commit e2c2060f7b makes 'm' lines
disturb 'u' lines.
This fixes the disturbance.
2018-03-02 07:38:28 +09:00
Yu Watanabe
fb5dfbc2d8
test: add a test for sysusers
...
The test cases for sysusers did not cover the situation reported in
issue #8315 . Let's add one more test case.
2018-03-02 07:12:40 +09:00
Yu Watanabe
b5327d0a65
sysusers: do not create duplicated groups when create users
...
The commit e2c2060f7b introduces
the issue #8315 .
Fixes #8315 .
2018-03-02 07:12:38 +09:00
Yu Watanabe
d2f95a223f
test-execute: add a test for the case that NOBODY_GROUP_NAME is nogroup
2018-03-01 18:31:26 +09:00
Yu Watanabe
57c2efa0c3
test-execute: check nobody user and group are configured correctly
...
Several tests request nobody user or group. If they are badly
configured, then tests may fail.
This makes test-execute check nobody user and group are configured
correctly before running such tests.
Fixes #8276 .
2018-03-01 18:29:28 +09:00
Yu Watanabe
dca4bb35a4
Merge pull request #8280 from poettering/seccomp-flags
...
seccomp flags rework + minor other build system/repo changes
2018-02-28 10:55:59 +09:00
Yu Watanabe
a7bba4ee10
po: add Japanese translation ( #8289 )
2018-02-27 22:18:06 +01:00
Yu Watanabe
e568a92d99
man: suggests TemporaryFileSystem= when people want to nest bind mounts inside InaccessiblePaths= ( #8288 )
...
Suggested by @sourcejedi in #8242 .
Closes #7895 , #7153 , and #2780 .
2018-02-27 08:59:03 +01:00
Yu Watanabe
4c40f267c7
test: use "$$" to pass a literal dollar sign
...
Follow-up for 9323298657 .
2018-02-26 12:50:07 +09:00
Yu Watanabe
ac1f08b92b
test: use setup_fake_runtime_dir() in test-execute
2018-02-26 12:50:03 +09:00
Yu Watanabe
9323298657
test: fix test for TemporaryFileSystem= ( #8241 )
...
This makes test-execute work on SELinux enabled systems.
Fixes the issue reported at
https://github.com/systemd/systemd/pull/7908#discussion_r169583540
2018-02-21 16:43:35 +01:00
Yu Watanabe
24743efe2d
doc: update TRANSIENT-SETTINGS.md
2018-02-21 09:18:22 +09:00
Yu Watanabe
784ad252ea
core: add DBus API for TemporaryFileSystem=
2018-02-21 09:18:20 +09:00
Yu Watanabe
e4da7d8c79
core: add new option 'tmpfs' to ProtectHome=
...
This make ProtectHome= setting can take 'tmpfs'. This is mostly
equivalent to `TemporaryFileSystem=/home /run/user /root`.
2018-02-21 09:18:17 +09:00
Yu Watanabe
4cac89bd7c
test: add tests for TemporaryFileSystem=
2018-02-21 09:18:14 +09:00
Yu Watanabe
c10b460b5a
man: add documents for TemporaryFileSystem=
2018-02-21 09:18:11 +09:00
Yu Watanabe
2abd4e388a
core: add new setting TemporaryFileSystem=
...
This introduces a new setting TemporaryFileSystem=. This is useful
to hide files not relevant to the processes invoked by unit, while
necessary files or directories can be still accessed by combining
with Bind{,ReadOnly}Paths=.
2018-02-21 09:17:52 +09:00
Yu Watanabe
4ca763a902
core/namespace: make '-' prefix in Bind{,ReadOnly}Paths= work
...
Each path in `Bind{ReadOnly}Paths=` accept '-' prefix. However,
the prefix is completely ignored.
This makes it work as expected.
2018-02-21 09:07:56 +09:00
Yu Watanabe
72d967df3e
nspawn: remove unnecessary mount option parsing logic
2018-02-21 09:06:55 +09:00
Yu Watanabe
6ef8df2ba8
mount-util: call mount_option_mangle() in mount_verbose()
2018-02-21 09:06:53 +09:00
Yu Watanabe
f27b437b4c
test: add tests for mount_option_mangle()
2018-02-21 09:06:51 +09:00
Yu Watanabe
9e7f941acb
mount-util: add mount_option_mangle()
...
This is used in the later commits.
2018-02-21 09:06:47 +09:00
Yu Watanabe
4ff4c98a39
core: simplify DBus API for BindPaths=
2018-02-21 09:06:32 +09:00
Yu Watanabe
280921f29e
core: fix DBus API for AppArmorProfile= and SmackProcessLabel=
2018-02-21 09:05:40 +09:00
Yu Watanabe
8e06d57ccb
core/execute: clear bind_mounts
2018-02-21 09:05:37 +09:00
Yu Watanabe
a635a7aec6
core/execute: simplify compile_bind_mounts()
...
It is not necessary to re-assign error code.
2018-02-21 09:05:35 +09:00
Yu Watanabe
30ffb010ff
nspawn: fix indentation
2018-02-21 09:05:33 +09:00
Yu Watanabe
f5c52a7724
core/namespace: remove unused argument
2018-02-21 09:05:30 +09:00
Yu Watanabe
e282f51f57
core/namespace: use free_and_replace()
2018-02-21 09:05:21 +09:00
Yu Watanabe
55fe743273
core/namespace: fix comment
2018-02-21 09:05:18 +09:00
Yu Watanabe
89bd586cd3
core/namespace: merge PRIVATE_VAR_TMP into PRIVATE_TMP
2018-02-21 09:05:16 +09:00
Yu Watanabe
2a2969fd5d
core/namespace: make arguments const if possible
2018-02-21 09:05:14 +09:00
Yu Watanabe
2e536e6d1a
Merge pull request #8223 from jwrdegoede/hwdb-keyboard-touchpad-toggle
...
hwdb: 60-keyboard add mapping for the touchpad-toggle hotkey on 2 laptops
2018-02-20 10:34:53 +09:00
Yu Watanabe
f99fdc3e14
bootspec: accept tab as the separataor in sd-boot config ( #8165 )
...
In the parse logic `line_get_key_value()` in sd-boot treats spaces
and tabs are valid spacing between key and value in the line.
So, let's use the same logic for `bootctl` and the others which read
sd-boot configs.
Fixes #8154 .
2018-02-19 14:26:01 +01:00
Yu Watanabe
b8e2400586
Merge pull request #8143 from yuwata/drop-unused-func
...
Drop several unused functions
2018-02-10 12:47:12 +09:00
Yu Watanabe
92db49a0c2
socket-util: drop getnameinfo_pretty()
2018-02-10 11:10:07 +09:00
Yu Watanabe
01e4793de6
fs-util: drop readlink_and_make_absolute_root()
2018-02-09 16:58:56 +09:00
Yu Watanabe
842e456e79
fs-util: drop readlink_and_canonicalize()
2018-02-09 16:49:54 +09:00
Yu Watanabe
f2e18ef1a3
core: remove unnecessary initialization
2018-02-09 16:36:37 +09:00
Yu Watanabe
43beb0cf68
udev: use "#pragma once"
2018-02-09 16:33:30 +09:00
Yu Watanabe
e5c8029e13
sd-bus: explicitly convert int to bool
2018-02-09 16:22:00 +09:00
Yu Watanabe
cad4fb19c8
sd-bus: use free_and_replace()
2018-02-09 16:21:51 +09:00
Yu Watanabe
b4ca3f45dc
sd-bus: avoid potential memory leaks
2018-02-09 16:21:29 +09:00
Yu Watanabe
3e75a1bb43
nss-mymachines: add work-around to silence gcc warning
...
This is similar to 3c3d384ae9 and
a workaround for the following warning.
```
In file included from ../src/basic/in-addr-util.h:28,
from ../src/nss-mymachines/nss-mymachines.c:31:
../src/nss-mymachines/nss-mymachines.c: In function '_nss_mymachines_getgrnam_r':
../src/nss-mymachines/nss-mymachines.c:653:32: warning: argument to 'sizeof' in 'memset' call is the same pointer type 'char *' as the destination; expected 'char' or an explicit length [-Wsizeof-pointer-memaccess]
memzero(buffer, sizeof(char*));
^~~~
../src/basic/util.h:118:39: note: in definition of macro 'memzero'
#define memzero(x,l) (memset((x), 0, (l)))
^
../src/nss-mymachines/nss-mymachines.c: In function '_nss_mymachines_getgrgid_r':
../src/nss-mymachines/nss-mymachines.c:730:32: warning: argument to 'sizeof' in 'memset' call is the same pointer type 'char *' as the destination; expected 'char' or an explicit length [-Wsizeof-pointer-memaccess]
memzero(buffer, sizeof(char*));
^~~~
../src/basic/util.h:118:39: note: in definition of macro 'memzero'
#define memzero(x,l) (memset((x), 0, (l)))
^
```
2018-02-06 17:08:42 +09:00
Yu Watanabe
aa18944d39
networkd: fix dhcp6_prefixes_compare_func()
...
Found by the following warning by gcc.
```
../src/network/networkd-manager.c: In function 'dhcp6_prefixes_compare_func':
../src/network/networkd-manager.c:1383:16: warning: 'memcmp' reading 16 bytes from a region of size 8 [-Wstringop-overflow=]
return memcmp(&a, &b, sizeof(*a));
^
```
2018-02-06 17:06:01 +09:00
Yu Watanabe
34cf6c4340
core/execute: make arguments constant if possible
...
Also make functions static if possible.
2018-02-06 16:00:50 +09:00
Yu Watanabe
e8a565cb66
core: make ExecRuntime be manager managed object
...
Before this, each ExecRuntime object is owned by a unit. However,
it may be shared with other units which enable JoinsNamespaceOf=.
Thus, by the serialization/deserialization process, its sharing
information, more specifically, reference counter is lost, and
causes issue #7790 .
This makes ExecRuntime objects be managed by manager, and changes
the serialization/deserialization process.
Fixes #7790 .
2018-02-06 16:00:34 +09:00
Yu Watanabe
24c2c5689d
Merge pull request #8058 from keszybz/sysusers-inline
...
Extend sysusers for package installation scripts
2018-02-05 16:50:51 +09:00
Yu Watanabe
009192bb03
systemctl: show: use EnvironmentFiles= instead of EnvironmentFile=
...
EnvironmentFile= is used in the unit file, but in the dbus,
the related field name is EnvironmentFiles=.
As the other variables, let's use the field name instead of the name
used in the unit file setting.
2018-02-05 15:28:02 +09:00
Yu Watanabe
c7366cf17f
systemctl: update 'show' format for path units
...
Before this.
```
$ systemctl show cups.path | grep ^Path
PathExistsGlob=/var/spool/cups/d*
$ systemctl show --property PathExistsGlob cups.path
$ systemctl show --property Paths cups.path
PathExistsGlob=/var/spool/cups/d*
```
After this.
```
$ systemctl show cups.path | grep ^Path
Paths=/var/spool/cups/d* (PathExistsGlob)
$ systemctl show --property Paths cups.path
Paths=/var/spool/cups/d* (PathExistsGlob)
```
2018-02-05 15:27:53 +09:00
Yu Watanabe
eabc13c781
systemctl: update 'show' format for socket units
...
Before this.
```
$ systemctl show systemd-journald.socket | grep Listen
ListenStream=/run/systemd/journal/stdout
ListenDatagram=/run/systemd/journal/socket
$ systemctl show --property ListenStream systemd-journald.socket
$ systemctl show --property ListenDatagram systemd-journald.socket
$ systemctl show --property Listen systemd-journald.socket
ListenStream=/run/systemd/journal/stdout
ListenDatagram=/run/systemd/journal/socket
```
After this.
```
$ systemctl show systemd-journald.socket | grep Listen
Listen=/run/systemd/journal/stdout (Stream)
Listen=/run/systemd/journal/socket (Datagram)
$ systemctl show --property Listen systemd-journald.socket
ListenStream=/run/systemd/journal/stdout
ListenDatagram=/run/systemd/journal/socket
```
Fixes #8064 .
2018-02-05 15:27:47 +09:00
Yu Watanabe
fa6dee52ca
systemctl: show Timers{Monotonic,Calendar}=
2018-02-05 15:27:42 +09:00
Yu Watanabe
cf6e1e6333
Merge pull request #8073 from keszybz/two-fixes
...
Two fixes
2018-02-03 20:11:17 +09:00
Yu Watanabe
e7b2ea7c97
strv: drop strv_join_quoted() ( #8057 )
...
The function `strv_join_quoted()` is now not used, and has a bug
in the buffer size calculation when the strings needs to escaped,
as reported in #8056 .
So, let's remove the function.
Closes #8056 .
2018-02-01 10:11:02 +01:00
Yu Watanabe
c9d4169919
core/service: dump more settings
2018-01-30 17:10:47 +09:00