1
1
mirror of https://github.com/systemd/systemd-stable.git synced 2024-10-27 18:55:09 +03:00
Commit Graph

34760 Commits

Author SHA1 Message Date
Lennart Poettering
3a13442bbf user-runtime-dir: downgrade a few log messages to LOG_DEBUG that we ignore
As the comments already say it might be quite likely that
$XDG_RUNTIME_DIR is not set up as mount, and we shouldn't complain about
that.

Moreover, let's make this idempotent, so that a runtime dir that is
already gone and is removed again doesn't cause failure.
2018-08-03 10:38:49 +02:00
Yu Watanabe
8e740110df resolve: openssl: make dnstls_stream_{write,read}() may return zero 2018-08-03 07:19:01 +09:00
Yu Watanabe
8eadd29183 resolve: fix error handling of SSL_shutdown() 2018-08-03 07:18:08 +09:00
Yu Watanabe
36f1946c73 resolve: fix typo and coding style cleanups 2018-08-03 06:29:38 +09:00
Yu Watanabe
59c3fee2c7 resolve: clear error queue before calling SSL_*() 2018-08-03 06:26:58 +09:00
Lennart Poettering
e6c7c7ffd5 man: document that 'nofail' also has an effect on ordering
Prompted by #9765
2018-08-02 14:15:44 -07:00
Filipe Brandenburger
8a3386ab4f test-socket-util: Add tests for receive_fd_iov() and friends.
Test it when sending an FD without any contents, or an FD and some contents,
or only contents and no FD (using a bare send().)

Also fix the previous test which forked but was missing an _exit() at the
end of the child execution code.
2018-08-02 09:25:04 -07:00
Filipe Brandenburger
d34673ecb8 socket-util: Introduce send_one_fd_iov() and receive_one_fd_iov()
These take a struct iovec to send data together with the passed FD.

The receive function returns the FD through an output argument. In case data is
received, but no FD is passed, the receive function will set the output
argument to -1 explicitly.

Update code in dynamic-user to use the new helpers.
2018-08-02 09:25:04 -07:00
Lennart Poettering
27d4866ad8
Merge pull request #9776 from keszybz/sd-bus-docs
More man pages for sd-bus and related changes
2018-08-02 17:07:03 +02:00
Yu Watanabe
99521cab77 resolve: fix error handling of dns_stream_read() 2018-08-02 17:06:32 +02:00
Zbigniew Jędrzejewski-Szmek
1a167ac4f6
Merge pull request #9764 from yuwata/hash_ops-cleanups
Hash ops cleanups
2018-08-02 15:53:05 +02:00
Zbigniew Jędrzejewski-Szmek
46fdbae32e man: add sd_bus_message_rewind(3) 2018-08-02 15:49:45 +02:00
Zbigniew Jędrzejewski-Szmek
e7015301fb man: document sd_bus_slot_get_bus in sd_bus_slot_ref(3)
Similar reasoning as for sd_bus_message_get_bus().
2018-08-02 15:49:45 +02:00
Zbigniew Jędrzejewski-Szmek
dee0fccca3 man: add sd_bus_slot_set_description(3) 2018-08-02 15:49:45 +02:00
Zbigniew Jędrzejewski-Szmek
6d4a51820e man: add sd_bus_slot_set_userdata(3) 2018-08-02 15:49:45 +02:00
Zbigniew Jędrzejewski-Szmek
d65044e812 man: add sd_bus_message_set_expect_reply(3) 2018-08-02 15:49:45 +02:00
Zbigniew Jędrzejewski-Szmek
9905256523 man: document sd_bus_message_get_bus() in sd_bus_message_new(3)
It's not a particularly obvious place, but it's a trivial function that isn't
worth a man page of its own, and it doesn't fit anywhere else either.
2018-08-02 15:49:45 +02:00
Zbigniew Jędrzejewski-Szmek
2c48865bd0 man: add sd_bus_message_verify_type(3) 2018-08-02 15:49:45 +02:00
Zbigniew Jędrzejewski-Szmek
3d51a011f1 sd-bus: verify destination and sender values when setting
We would verify destination e.g. in sd_bus_message_new_call, but allow setting
any value later on with sd_bus_message_set_destination. I assume this check was
omitted not on purpose.
2018-08-02 15:49:45 +02:00
Zbigniew Jędrzejewski-Szmek
9c9207912e man: add sd_bus_message_get_type(3)
sd_bus_message{get_type,is_signal,is_method_call,is_method_error} get one man
page.

sd_bus_message_{set,get}_{destination,path,interface,member,sender} are put in
the second one.
2018-08-02 15:49:45 +02:00
Zbigniew Jędrzejewski-Szmek
f16a506418 man: add sd_bus_slot_ref(3) 2018-08-02 15:49:45 +02:00
Zbigniew Jędrzejewski-Szmek
7ddee21716 man: document sd_bus_message_new_method_return 2018-08-02 15:49:45 +02:00
Zbigniew Jędrzejewski-Szmek
65889ab72d meson: print stats in check-api-docs 2018-08-02 15:49:45 +02:00
Zbigniew Jędrzejewski-Szmek
f00ded93e0 man: document *_with_description functions 2018-08-02 15:49:45 +02:00
Zbigniew Jędrzejewski-Szmek
206ed9c1f6 man: add sd_bus_message_new(3) 2018-08-02 15:48:46 +02:00
Zbigniew Jędrzejewski-Szmek
787f78b6a1 man: move more examples to stand-alone files and use 2-space indentation consistenty
Moving them out makes it easier to run them through a compiler, use automatic
indentation, and opens the possibility to provide a download link in the
future. I verified that all examples compile cleanly.

(2-space indentation is used because the examples are already significantly
indented in the man page, and we need to keep them narrow so that they display
well on standard terminals.)
2018-08-02 15:45:24 +02:00
Zbigniew Jędrzejewski-Szmek
2c47fff6d2 man: clarify what can be NULL in an sd_bus_unrefp call
Confusingly, the argument is called 'bus' in all cases. Let's not give people
the idea to call sd_bus_unrefp(NULL).
2018-08-02 15:45:24 +02:00
Zbigniew Jędrzejewski-Szmek
cfe8ee463d man: add sd_bus_message_new_call(3) 2018-08-02 15:45:20 +02:00
Zbigniew Jędrzejewski-Szmek
e8b84fcca6 man: add sd_bus_message_new_signal(3) 2018-08-02 15:44:25 +02:00
Yu Watanabe
2357724699 basic: use FAMILY_ADDRESS_SIZE() macro in hash_ops for in_addr_data 2018-08-02 17:07:25 +09:00
Yu Watanabe
ca52812a94 network: make compare functions safe
As the variable 'line' is unsigned.
2018-08-02 17:06:03 +09:00
Zbigniew Jędrzejewski-Szmek
5b316330be
Merge pull request #9624 from poettering/service-state-flush
flush out ExecStatus structures when a new service cycle begins
2018-08-02 09:50:39 +02:00
Yu Watanabe
5bad7ebdda network: add more log messages in configuring DHCP6 client 2018-08-02 08:37:18 +02:00
Yu Watanabe
1f6860d984 network: add more log messages in configuring DHCP4 client 2018-08-02 08:37:18 +02:00
Yu Watanabe
5e5420d1a1
Merge pull request #9770 from keszybz/etc-resolved-no-address
Slightly more efficient handling of /etc/hosts blacklist entries
2018-08-02 12:54:50 +09:00
Zbigniew Jędrzejewski-Szmek
be19cdf31c resolved: change error handling for manager_etc_hosts_read()
The choice what errors to ignore is left to the caller, and the caller is
changed to ignore all errors.

On error, previously read data is kept. So if e.g. an oom error happens, we
will continue to return slightly stale data instead of pretending we have no
entries for the given address. I think that's better, for example when
/etc/hosts contains some important overrides that external DNS should not be
queried for.
2018-08-01 12:45:54 +02:00
Zbigniew Jędrzejewski-Szmek
fd373593ba resolved: keep addresses mapped to ::0 in a separate set
We'd store every 0.0.0.0 and ::0 entry as a structure without any addresses
allocated. This is a somewhat common use case, let's optimize it a bit.

This gives some memory savings and a bit faster response time too:
'time build/test-resolved-etc-hosts hosts' goes from 7.7s to 5.6s, and
memory use as reported by valgrind for ~10000 hosts is reduced
==18097==   total heap usage: 29,902 allocs, 29,902 frees, 2,136,437 bytes allocated
==18240==   total heap usage: 19,955 allocs, 19,955 frees, 1,556,021 bytes allocated

Also rename 'suppress' to 'found' (with reverse meaning). I think this makes
the intent clearer.
2018-08-01 12:38:39 +02:00
Zbigniew Jędrzejewski-Szmek
78fc21a11a test-resolved-etc-hosts: add tests for /etc/hosts parsing
Calling 'build/test-resolved-etc-hosts filename' parses just that file.
This is useful to test against https://hosts.ubuntu101.co.za/hosts.
2018-08-01 12:38:39 +02:00
Zbigniew Jędrzejewski-Szmek
37b7cc8d9a resolved: put /etc/hosts hashmaps in a structure and pass that around
This hides the details of juggling the two hashmaps from the callers a bit.
It also makes memory management a bit easier, because those two hashmaps share
some strings, so we can only free them together.

etc_hosts_parse() is made responsible to free the half-filled data structures
on error, which makes the caller a bit simpler.

No functional change. A refactoring to prepare for later changes.
2018-08-01 12:38:34 +02:00
Zbigniew Jędrzejewski-Szmek
8d732e2f71 test-nss-files: simplify module name handling
- drop compatibility with autotools (/.libs/ directory)
- don't special-case "libnss_dns", just try build/libnss_foo.so.2 and libnss_foo.so.2.
  This makes it possible to call e.g. build/test-nss files google.com.
2018-07-31 19:37:49 +02:00
Zbigniew Jędrzejewski-Szmek
5a8b164092 meson: drop parens when appending to list
Meson does not care either way, so let's use the simpler syntax. And files()
already gives a list, so nesting this in a list wouldn't be necessary even
if meson did not flatten everything.
2018-07-31 21:02:01 +09:00
Lennart Poettering
48e0e10ff5
Merge pull request #9760 from yuwata/resolve-etc-hosts-cleanup
resolve: several cleanups of handing /etc/hosts
2018-07-31 10:52:34 +02:00
Evgeni Golov
eefe36e64c udev: net_id: document predictable names for SR-IOV virtual devices 2018-07-31 16:41:32 +09:00
Yu Watanabe
7bf8c3ded4 resolve: support address with ifname in /etc/hosts 2018-07-31 16:12:13 +09:00
Yu Watanabe
0351eb1148 resolve: use in_addr_data type for storing address 2018-07-31 15:46:28 +09:00
Yu Watanabe
6c39e02609 basic: introduce in_addr_data_hash_ops 2018-07-31 15:45:38 +09:00
Franck Bui
7f6240fab1 path-util: make use of path_join() in path_make_absolute_cwd() 2018-07-30 16:06:02 +02:00
Franck Bui
9f36a8fb38 tmpfiles: add more tests 2018-07-30 16:04:23 +02:00
Franck Bui
addc3e302d tmpfiles: don't follow unsafe transitions in path_set_*()
Since all path_set_*() helpers don't follow symlinks, it's possible to use
chase_symlinks(CHASE_NOFOLLOW) flag to both open the files specified by the
passed paths and check their validity (unlike their counterpart fd_set_*()
helpers).
2018-07-30 16:04:20 +02:00
Franck Bui
1f56e4ce77 fs-util: add new CHASE_NOFOLLOW flag to chase_symlinks()
This flag mimics what "O_NOFOLLOW|O_PATH" does for open(2) that is
chase_symlinks() will not resolve the final pathname component if it's a
symlink and instead will return a file descriptor referring to the symlink
itself.

Note: if CHASE_SAFE is also passed, no safety checking is performed on the
transition done if the symlink would have been followed.
2018-07-30 15:54:03 +02:00