1
0
mirror of https://github.com/systemd/systemd.git synced 2024-12-23 21:35:11 +03:00
Commit Graph

40992 Commits

Author SHA1 Message Date
Zbigniew Jędrzejewski-Szmek
cf95bc1dc2 test-unit-file: move some tests to new test-env-file.c 2019-07-19 16:51:14 +02:00
Zbigniew Jędrzejewski-Szmek
d578f909ce test-hashmap: move tests which should also apply to ordered hashmaps and add comment
Effectively this does two more tests also for ordered hashmaps.
This setup is a bit confusing, let's add a comment.
2019-07-19 16:51:14 +02:00
Zbigniew Jędrzejewski-Szmek
87da87846d basic/hashmap: add hashops variant that does strdup/freeing on its own
So far, we'd use hashmap_free_free to free both keys and values along with
the hashmap. I think it's better to make this more encapsulated: in this variant
the way contents are freed can be decided when the hashmap is created, and
users of the hashmap can always use hashmap_free.
2019-07-19 16:50:36 +02:00
Zbigniew Jędrzejewski-Szmek
0bf2c5e5ec test-strv: add function headers 2019-07-19 16:49:41 +02:00
Zbigniew Jędrzejewski-Szmek
cde7910993 sysusers,strv: export the hash ops to map char* → strv
Also make string_strv_hashmap_put return 0 only if the entry already existed.
2019-07-19 16:49:41 +02:00
Zbigniew Jędrzejewski-Szmek
b124d3f2ce basic/unit-name: allow unit_name_to_instance() to be used to classify units
This could already be done by calling unit_name_is_*(), but if we don't know
if the argument is a valid unit name, it is more convenient to have a single
function which returns the type or possibly an error if the unit name is not
valid.

The values in the enum are sorted "by length". Not really important, but it
seems more natural to me.
2019-07-19 16:49:41 +02:00
Zbigniew Jędrzejewski-Szmek
69de5c16ff basic/unit-name: drop unused function 2019-07-19 16:49:41 +02:00
Zbigniew Jędrzejewski-Szmek
cc4d7d818d path-util: add path_startswith_strv() 2019-07-19 16:49:41 +02:00
Zbigniew Jędrzejewski-Szmek
771fded37f test-path-util: add function headers 2019-07-19 16:49:41 +02:00
Zbigniew Jędrzejewski-Szmek
6176e89c20 systemctl: call the unit dbus path dbus_path everywhere
Similar variables had differing names: unit, path, unit_path. We also
have file system paths in surrounding code. Let's make this easier for
the reader and use "dbus_path" consistently.
2019-07-17 14:35:35 +02:00
Zbigniew Jędrzejewski-Szmek
043fdc4010 pid1: kill unit_file_find_dropin_paths() helper
It had two users, but it is just a very thin wrapper around
unit_file_find_dropin_paths(), so using it seems more complicated than directly
invoking unit_file_find_dropin_paths() twice.
2019-07-17 14:27:23 +02:00
Zbigniew Jędrzejewski-Szmek
b5328434c9 man: rework the description of Aliases and .wants/.requires directories
The description of Alias= wasn't incorrect, but it sounded like Alias= creates
a different type of dependency, while it's just a glorified way to create
symlinks. Also recommend 'preset' in addition to 'enable'.

Describe .wants/.requires dirs as equals, without implying that the [Install]
section can only be used for .wants.

The text was partially out of date (systemd-networkd.service now creates as
alias in /etc, not /usr/lib, let's just not say anything about the full path).
2019-07-17 14:27:23 +02:00
Lennart Poettering
52f4b5ac8a
Merge pull request #12675 from yuwata/network-set-dns
resolvectl: support to modify interfaces managed by networkd
2019-07-17 12:07:39 +02:00
Jakob Unterwurzacher
d34a40082d mount-util: bind_remount: avoid calling statvfs
The commit
"util: Do not clear parent mount flags when setting up namespaces"
introduced a statvfs call read the flags of the original mount
and have them applied to the bind mount.

This has two problems:

(1) The mount flags returned by statvfs(2) do not match the flags
accepted by mount(2). For example, the value 4096 means ST_RELATIME
when returned by statvfs(2), but means MS_BIND when passed to mount(2).

(2) A call to statvfs blocks indefinitely when ran against a disconnected
network drive ( https://github.com/systemd/systemd/issues/12667 ).

We already use libmount to parse `/proc/self/mountinfo` but did not use the
mount flag information from there. This patch changes that to use the mount
flags parsed by libmount instead of calling statvfs. Only if getting the
flags through libmount fails we call statvfs.

Fixes https://github.com/systemd/systemd/issues/12667
2019-07-17 11:37:09 +02:00
Anita Zhang
31cd5f63ce core: ExecCondition= for services
Closes #10596
2019-07-17 11:35:02 +02:00
Zbigniew Jędrzejewski-Szmek
cc2f3f05a7
Merge pull request #12927 from fbuihuu/coredump-cleanup-part-2
Coredump cleanup part 2
2019-07-17 09:14:20 +02:00
Zbigniew Jędrzejewski-Szmek
4a747647b3
Merge pull request #13082 from ddstreet/minor
Minor fixes in test framework
2019-07-17 08:44:01 +02:00
Dan Streetman
59279e9618 test/test-functions: fix install_dmeventd to correctly install bin/libs 2019-07-17 08:34:48 +02:00
Evgeny Vereshchagin
b5efca2a65 Free up some resources on Azure Pipelines
Let's drop the tests we also run on CentOS CI to free up some resources
for something more useful.
2019-07-17 13:28:38 +09:00
Dan Streetman
e96386521c test/test-functions: instmods call to find should use -type f
without using -type f, the logs print an error such as:

E:  E: modprobe: FATAL: Module asymmetric_keys not found in directory /lib/modules/4.15.0-54-generic

while this doesn't appear to cause problems, it can be extremely
distracting when trying to debug real failures.
2019-07-16 18:05:15 -04:00
Dan Streetman
d391ee10a0 test: when stripping binaries, ignore case in suppressing "File format not recognized"
The grep -v matches all lowercase, but "file" is captialized; just ignore case so
it's suppressed for either all lowercase or capital File.
2019-07-16 18:05:15 -04:00
Dan Streetman
f85bc044e5 test: ignore errors during test cleanup, so cleanup can finish
Also move TESTDIR and STATEFILE removal into test_cleanup
2019-07-16 18:05:15 -04:00
Dan Streetman
ec4cab49c9 test: add create_empty_image_rootdir() to simplify testcase setup
Almost all tests were manually mounting/unmounting $TESTDIR/root
from the loopback image; this moves all that into test-functions
so the test setup functions are simplier.

Also add test_setup_cleanup() function, to cleanup what is mounted
by create_empty_image_rootdir()
2019-07-16 18:05:15 -04:00
Yu Watanabe
217246a990 test-network: drop warn_about_firewalld() as it is not necessary any more 2019-07-17 06:59:12 +09:00
Yu Watanabe
2225e7fd88 test-network: stop firewalld in setUpModule() 2019-07-17 06:59:12 +09:00
Yu Watanabe
336d18f0ff test-network: add tests for link state file vs resolvectl or timedatectl 2019-07-17 06:59:12 +09:00
Yu Watanabe
2400ae29a5 resolve: fix memleak 2019-07-17 06:59:12 +09:00
Yu Watanabe
0a0564a1b5 bash-completion: support ntp-servers and revert command for timedatectl 2019-07-17 06:59:12 +09:00
Yu Watanabe
159a855b34 timedatectl: add 'ntp-servers' and 'revert' commands to modify link NTP servers 2019-07-17 06:59:12 +09:00
Yu Watanabe
65856bf208 resolvectl: support networkd managed interfaces
Closes #9808.
2019-07-17 06:59:12 +09:00
Yu Watanabe
1576154957 network: implement DBus methods to set DNS related properties 2019-07-17 06:59:12 +09:00
Yu Watanabe
00d28db322 resolve: expose dns_server_address_valid() 2019-07-17 06:59:12 +09:00
Yu Watanabe
071712b281 network: introduce GetLinkByName and GetLinkByIndex bus methods 2019-07-17 06:59:12 +09:00
Yu Watanabe
37d577c895 network: implement ListLinks DBus method 2019-07-17 06:59:12 +09:00
Yu Watanabe
79a59fa51d network: move manager dbus prototypes to networkd-manager-bus.h 2019-07-17 06:59:12 +09:00
Yu Watanabe
26408c7d5f
Merge pull request #13069 from yuwata/network-do-not-set-routes-when-carrier-lost
network: do not configure routes when dropping addresses
2019-07-17 06:56:32 +09:00
Franck Bui
a9fd4cd120 pid1: make sure to restore correct default values for some rlimits
Commit fb39af4ce4 forgot to restore the default
rlimit values (RLIMIT_NOFILE and RLIMIT_MEMLOCK) while PID1 is reloading.

This patch extracts the code in charge of initializing the default values for
those rlimits in order to create dedicated functions, which take care of their
initialization.

These functions are then called in parse_configuration() so we make sure that
the default values for these rlimits get restored every time PID1 is reloading
its configuration.
2019-07-17 06:24:27 +09:00
Frantisek Sumsal
ca22d04cee
Merge pull request #12851 from evverx/test-01-basic-asan
tests: run TEST-01-BASIC under ASAN+UBSan again
2019-07-16 18:51:59 +00:00
Frantisek Sumsal
64c3b40c25
Merge pull request #13077 from poettering/activate-n-fds
activate: move array allocation to heap
2019-07-16 18:46:30 +00:00
Zbigniew Jędrzejewski-Szmek
3151b668c2
Merge pull request #13076 from keszybz/pr/13062
Timer formatting fixes
2019-07-16 20:02:26 +02:00
Yu Watanabe
7d7bb5c861 test-network: extend sleep time
Even if addresses provided by DHCP is assigned, the state file may not
be written yet, or resolved may not receive the state change signal
yet, or resolved may not process the signal yet...
2019-07-17 01:01:10 +09:00
Yu Watanabe
4e2ef9d9d1 network: do not configure routes when dropping addresses
Follow-up for 4ff296b024.
2019-07-17 00:51:46 +09:00
Franck Bui
2a3bebd02a coredump: (void)ify all calls of iovw_put_string_field() where we ignore failure on purpose
All those calls are dealing with optional metadata.
2019-07-16 17:41:07 +02:00
Franck Bui
f46c706bdd coredump: gather all process metadata in iovecs first and then cache them
Now we first gather all process metadata and populate the process info cache
with them. In this way, the cache only references metadata recorded in iovecs[]
so there's no need to bother freeing (part of) cached metadata later.

The other advantage is that the coredump handler mode and the service mode are
more similar as the cache is populated in the same way for both cases.

It also renames the array indexes so it becomes clear which metadata are passed
by the kernel and which ones are retrieved from the runtime environment.
2019-07-16 17:40:35 +02:00
Franck Bui
f8540bde72 coredump: use 'input_fd' name for the pipe fd passed by the kernel everywhere
'input_fd' variable name is used mostly everywhere except in process_socket()
where it's named 'coredump_fd', which is pretty confusing since 'coredump_fd'
is used for the coredump filename in submit_coredump().

So let's use 'input_fd' consistently as name for the pipe fd passed by the
kernel.

No functional changes.
2019-07-16 17:39:19 +02:00
Zbigniew Jędrzejewski-Szmek
a483dc92c2
Merge pull request #13038 from poettering/pam-fixes
tmpfiles factory PAM tweaks
2019-07-16 17:09:29 +02:00
Evgeny Vereshchagin
038bf640e9 tests: bump up QEMU_MEM 2019-07-16 15:01:26 +00:00
Evgeny Vereshchagin
ee784fff1a tests: run TEST-01-BASIC under ASAN+UBSan again
Not that `journalctl --flush` is no longer flaky, it should be
safe to bring the test back.
2019-07-16 15:01:04 +00:00
Lennart Poettering
15bcd9fa09
Merge pull request #12925 from yuwata/network-generator
network-generator: introduce new tool systemd-network-generator
2019-07-16 16:23:42 +02:00
Lennart Poettering
c1b71f3a61
Merge pull request #13074 from poettering/format-tree-many
table_add_many() improvements
2019-07-16 16:03:54 +02:00