Commit Graph
100 Commits
Author SHA1 Message Date
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
Yu Watanabe 9bd0e1b814 core/swap: dump TimeoutSec= 2018-01-30 17:10:09 +09:00
Yu Watanabe 9189979213 core/mount: dump TimeoutSec= 2018-01-30 17:09:59 +09:00
Yu Watanabe 90657286fc analyze: merge {get,set}-log-{level,target} to log-{level,target} (#8020)
Also, service-watchdogs now shows current watchdog state when
no optional argument is provided.
2018-01-27 13:51:32 +01:00
Yu Watanabe f359fb92da Merge pull request #8006 from zx2c4-forks/jd/no-wg-ll
networkd: assume no link local addresses for where it isn't used
2018-01-27 17:31:02 +09:00
Yu Watanabe 786b8fa0fb Merge pull request #7973 from mvo5/sysusers-uid-gid
sysusers: allow uid:gid in sysusers.conf files
2018-01-27 17:24:39 +09:00
Yu Watanabe 4c6ceea773 Merge pull request #7738 from yuwata/fix-7721
core: manager logs firmware and loader time when startup finished
2018-01-26 13:03:25 +09:00
Yu Watanabe dd1db3c288 core: manager logs firmware and loader time when startup finished 2018-01-26 00:59:20 +09:00
Yu Watanabe 68a4b89ca3 bus-util: fix format of NextElapseUSecRealtime= and LastTriggerUSec=
Before this, `systemctl show` for calendar type timer unit outputs
something like below.
```
NextElapseUSecRealtime=48y 3w 3d 15h
NextElapseUSecMonotonic=0
LastTriggerUSec=48y 3w 3d 3h 41min 44.093095s
LastTriggerUSecMonotonic=0
```
As both NextElapseUSecRealtime= and LastTriggerUSec= are not timespan
but timestamp, this makes format these values by `format_timestamp()`.
2018-01-25 14:49:24 +01:00
Yu Watanabe a219c2698e systemctl: remove unused variable
Follow-up for 98f6093687.
2018-01-24 12:54:15 +09:00
Yu Watanabe e61d3d8aae core/device: remove unused variable
Follow-up for bf70ff2cff.
2018-01-24 12:52:23 +09:00
Yu Watanabe abd8b9788b Merge pull request #7971 from poettering/dev-node-fixes
small follow-up for #7886
2018-01-24 04:27:27 +09:00
Yu Watanabe 77d0776c3b loopback-setup: update log message (#7956)
This makes not log "Failed to ..." when each operation succeeds.

Fixes #7930.
2018-01-23 09:50:31 +09:00
Yu Watanabe db52db4afa fuzz: cast to void when return value is ignored 2018-01-22 09:58:29 +09:00
Yu Watanabe 0f3da640de fuzz: check return value
Closes CID #1385306 and #1385300.
2018-01-22 09:55:38 +09:00
Yu Watanabe 7444956723 fuzz: fix coding style 2018-01-22 09:54:30 +09:00
Yu Watanabe 48eae2e480 test-resolve: check return value
Closes CID #1385310.
2018-01-21 19:38:33 +09:00
Yu Watanabe 1eeddba492 sd-dhcp6-client: do not refer uninitialized variable
Fixes CID #1385308.
2018-01-21 19:27:30 +09:00
Yu Watanabe b539437a05 fs-util: chase_symlinks(): prevent double free
Fixes CID #1385316.
2018-01-21 19:19:28 +09:00
Yu Watanabe 2b6d2dda6b fs-util: use _cleanup_close_ attribute
The commit f14f1806e3 introduced CHASE_SAFE
flag. When the flag is set, then `fd_parent` may not be properly closed.
This sets `_cleanup_close_` attribute to `fd_parent`.
Thus, now `fd_parent` is always closed properly.
2018-01-21 19:07:14 +09:00
Yu Watanabe 08fde561ba Merge pull request #7938 from keszybz/get-fd-unsafe
man: document signal unsafeness of sd_journal_get_fd
2018-01-20 13:20:33 +09:00
Yu Watanabe fec0ccea86 man: fix typo (#7937)
Reported by Дилян Палаузов (https://github.com/dilyanpalauzov) in #7870.
2018-01-20 13:22:57 +11:00
Yu Watanabe 7e577c30d6 Merge pull request #7934 from keszybz/man-improvements
Man page improvements
2018-01-20 11:15:52 +09:00
Yu Watanabe 22bc57c58a fs-util: chase_symlinks(): support empty root
The commit b1bfb84804 makes chase_symlinks()
recognize empty string for root as an invalid parameter. However,
empty root is often used e.g. systemd-nspawn.
This makes chase_symlinks() support empty string safely.

Fixes #7927.
2018-01-19 11:41:28 +01:00
Yu Watanabe 5caf49360b efivars: include errno.h when EFI support is disabled (#7900)
Fixes #7898.
2018-01-17 20:25:42 +11:00
Yu Watanabe 0a02e38379 network: create runtime sub-directories after drop_privileges()
For old kernels not supporting AmbientCapabilities=, networkd is
started as root with limited capabilities. Then, networkd cannot
chown the directories under runtime directory as
CapabilityBoundingSet= does not contains enough capabilities.
This makes these directories are created after dropping privileges.
Thus, networkd does not need to chown them anymore.

Fixes #7863.
2018-01-17 03:35:28 +09:00
Yu Watanabe d1c2774b6d timesync: do not fail when started as privileged user 2018-01-17 03:34:45 +09:00
Yu Watanabe 976fade6c1 dhcp6: fix warnings by clang with -Waddress-of-packed-member
This fixes the following warnings:
```
[194/1521] Compiling C object 'src/libsystemd-network/systemd-network@sta/dhcp6-option.c.o'.
../../git/systemd/src/libsystemd-network/dhcp6-option.c:110:25: warning: taking address of packed member 'id' of class or structure 'ia_na' may result in an unaligned pointer value [-Waddress-of-packed-member]
                iaid = &ia->ia_na.id;
                        ^~~~~~~~~~~~
../../git/systemd/src/libsystemd-network/dhcp6-option.c:115:25: warning: taking address of packed member 'id' of class or structure 'ia_ta' may result in an unaligned pointer value [-Waddress-of-packed-member]
                iaid = &ia->ia_ta.id;
                        ^~~~~~~~~~~~
2 warnings generated.
```
2018-01-17 01:53:03 +09:00
Yu Watanabe b7d16a91d6 networkd: fix wrong argument check 2018-01-17 01:29:13 +09:00
Yu Watanabe 1291a04298 ipvlan: fix wrong assignment in ipvlan_init() 2018-01-17 01:28:09 +09:00
Yu Watanabe c7612b2005 man: mention that systemctl is-active or is-failed do not load units
See the discussion in the issue #7875.
2018-01-16 23:25:56 +09:00
Yu Watanabe 47dbb99ad7 virt: add comment that we need to use sscanf()
Follow-up for 13e0f9fe83.
See PR #7890 and comment in PR #7581.
2018-01-16 23:00:39 +09:00
Yu Watanabe fb76275a7a man: remove duplicated line
Follow-up for c46bc7e216.
2018-01-16 22:22:18 +09:00
Yu Watanabe 3249bf3125 man: logind: update reference
Fixes #7858.
2018-01-16 00:03:33 +09:00
Yu Watanabe bb6b922f9f journal: coding style fix
This is originally pointed out by @cpsw.
2018-01-15 23:53:10 +09:00
Yu Watanabe 9c3b99feb8 network: fix indentation
Follow-up for 56a23cb40a.
2018-01-15 23:49:55 +09:00
Yu Watanabe 55a7c78b9d networkd: remove unnecessary parentheses
Follow-up for 56a23cb40a.
2018-01-15 23:48:00 +09:00
Yu Watanabe 3e7e587d32 systemctl: comment that the verb 'check' is deprecated 2018-01-15 23:44:31 +09:00
Yu Watanabe 444c1915f9 timesync: use current uid when started as non-root user
Fixes #7883.
2018-01-15 23:40:29 +09:00
Yu Watanabe 5a45fde547 test: free memory
Fixes #7882.
2018-01-15 23:37:02 +09:00
Yu Watanabe 68c7139a4b bash-completion: timedatectl: suggests hostname and machine name 2018-01-10 23:21:26 +09:00
Yu Watanabe e352389a02 bash-completion: run: add missing options 2018-01-10 23:21:22 +09:00
Yu Watanabe a953b31a8b man: run: add missing option 2018-01-10 23:21:17 +09:00
Yu Watanabe 14aeb7ce7f bash-completion: resolve: add missing options 2018-01-10 23:20:52 +09:00
Yu Watanabe 86b4188d5e bash-completion: nspawn: add missing options 2018-01-10 23:20:45 +09:00
Yu Watanabe 4deb55036b man: nspawn: add missing option 2018-01-10 23:20:20 +09:00
Yu Watanabe 51bcbb6030 bash-completion: detect-virt: add missing option 2018-01-10 23:19:20 +09:00
Yu Watanabe 82ebb6ba1f bash-completion: cgls: suggests units 2018-01-10 23:19:00 +09:00
Yu Watanabe 7c3940f6ce bash-completion: analyze: add missing options and verbs 2018-01-10 23:18:49 +09:00
Yu Watanabe 035dd8c0a3 bash-completion: systemctl: add missing options and verbs 2018-01-10 23:18:16 +09:00
Yu Watanabe f568dcd101 bash-completion: networkctl: 'list' and 'lldp' can take links 2018-01-10 23:17:41 +09:00
Yu Watanabe 6d92077e39 bash-completion: machinectl: add missing options and verbs 2018-01-10 23:17:32 +09:00
Yu Watanabe ee156e8d88 man: machinectl: fix typo 2018-01-10 23:17:00 +09:00
Yu Watanabe fe56e4ba47 bash-completion: loginctl: add missing options and verbs 2018-01-10 23:16:41 +09:00
Yu Watanabe f822279e62 bash-completion: localectl: add a missing option and verbs 2018-01-10 23:16:36 +09:00
Yu Watanabe 29e08b9e9e bash-completion: kernel-install: update default path to kernel image 2018-01-10 23:16:29 +09:00
Yu Watanabe 41053e9bdf bash-completion: journalctl add missing options
Also, this deprecates '--this-boot' option.
2018-01-10 23:16:14 +09:00
Yu Watanabe afcb2246be bash-completion: hostnamectl: add a missing option 2018-01-10 23:15:45 +09:00
Yu Watanabe 245c1e6802 bash-completion: coredumpctl: support more options 2018-01-10 23:15:21 +09:00
Yu Watanabe cdb8ec2d37 bash-completion: busctl: support more options and verbs 2018-01-10 23:11:00 +09:00
Yu Watanabe 92360836a0 bash-completion: bootctl: support more options and verbs 2018-01-10 23:10:19 +09:00
Yu Watanabe f011fcfdec timesync: fix typo 2018-01-10 20:52:59 +09:00