1
0
mirror of https://github.com/systemd/systemd.git synced 2024-11-05 15:21:37 +03:00
Commit Graph

16617 Commits

Author SHA1 Message Date
Lennart Poettering
4e945a6f79 resolved: beef up DNS server configuration logic
We now maintain two lists of DNS servers: system servers and fallback
servers.

system servers are used in combination with any per-link servers.

fallback servers are only used if there are no system servers or
per-link servers configured.

The system server list is supposed to be populated from a foreign tool's
/etc/resolv.conf (not implemented yet).

Also adds a configuration switch for LLMNR, that allows configuring
whether LLMNR shall be used simply for resolving or also for responding.
2014-08-01 16:06:39 +02:00
Lennart Poettering
e70df46b97 nss: always explicitly reset all error variables
glibc appears to be broken if we don't explicitly reset all error
variables, let's work around that.

https://bugzilla.redhat.com/show_bug.cgi?id=1125975
2014-08-01 16:06:39 +02:00
Tom Gundersen
9fecce8041 Revert "networkd: don't assume udev_device_new_from_device_id sets errno"
libudev now does set errno correctly, so we can indeed rely on this.

This reverts commit 2b49732c3d.
2014-08-01 11:56:13 +02:00
Tom Gundersen
aa0e72ea54 libudev: set errno when udev_device_new_from_* or udev_device_get_parent_* fail 2014-08-01 11:56:13 +02:00
Lennart Poettering
7cfb38b596 update TODO 2014-08-01 01:57:33 +02:00
Lennart Poettering
7c2a5e264c nss-resolve: fallback to the class NSS "dns" module if we cannot contact resolved
That way DNS resolution works both with and without resolved running.
2014-08-01 01:55:15 +02:00
Lennart Poettering
95dd6257a6 resolved: don't bother caching negative RRs when the SOA TTL is 0 anyway 2014-08-01 00:58:13 +02:00
Lennart Poettering
7be6885326 update TODO 2014-08-01 00:58:13 +02:00
Lennart Poettering
9a015429b3 resolved: use CLOCK_BOOTTIME instead of CLOCK_MONOTONIC when aging caches and timeing out transactions
That way the cache doens't get confused when the system is suspended.
2014-08-01 00:58:12 +02:00
Lennart Poettering
7da40fc108 resolved: fix negative caching of IDNA domains 2014-08-01 00:58:12 +02:00
Lennart Poettering
bdf10b5b4d resolved: handle IDNA domains
Make sure we format UTF-8 labels as IDNA when writing them to DNS
packets, and as native UTF-8 when writing them to mDNS or LLMNR packets.

When comparing or processing labels always consider native UTF-8 and
IDNA formats equivalent.
2014-08-01 00:58:12 +02:00
Zbigniew Jędrzejewski-Szmek
afbc4f267b resolved: fix serialization of LOC records, check correctness 2014-07-31 17:42:14 -04:00
Kay Sievers
e90b8642cd kdbus: update header 2014-07-31 23:08:44 +02:00
Kay Sievers
bd64a88fb0 hwdb: update 2014-07-31 23:07:44 +02:00
Lennart Poettering
eb60f9cd4e hostnamed: watch system hostname changes and update LLMNR RRs accordingly 2014-07-31 19:54:43 +02:00
Lennart Poettering
8581858257 resolved: fix deserialization of UTF8 host names 2014-07-31 19:54:24 +02:00
Lennart Poettering
7b9f7afcc0 resolved: accept UTF-8 hostnames from bus clients 2014-07-31 19:53:59 +02:00
Lennart Poettering
07bed172ed resolved: various fixes regarding encoding of UTF8 characters in DNS RRs 2014-07-31 19:51:11 +02:00
Lennart Poettering
fd0b4602f6 resolved: properly compare RRs we cannot parse 2014-07-31 18:41:54 +02:00
Lennart Poettering
42cc2eebb0 resolved: properly process SSHFP RRs 2014-07-31 18:41:41 +02:00
Lennart Poettering
9c92ce6d67 resolved: properly process SRV records 2014-07-31 18:23:34 +02:00
Lennart Poettering
c0eb11cfd0 resolved: provide properly named way to access SPF data in RRs 2014-07-31 18:23:34 +02:00
Lennart Poettering
6a6fc3df74 resolved: make sure we always initialize r when parsing TXT records 2014-07-31 18:23:34 +02:00
Lennart Poettering
8ac4e9e1e5 resolved: properly process DNAME RRs 2014-07-31 18:02:24 +02:00
Lennart Poettering
0f47ed0a05 update TODO 2014-07-31 17:47:19 +02:00
Lennart Poettering
ec2c5e4398 resolved: implement LLMNR uniqueness verification 2014-07-31 17:47:19 +02:00
Kevin Wells
b5df2eabf3 rules: allow systemd to manage loop device partitions
SYSTEMD_READY is currently set to 0 for all loop devices (loop[0-9]*)
that do not have a backing_file. Partitioned loop devices (ex. loop0p1),
however, are matched by this rule and excluded by systemd even though
they are active devices.

This change adds an additional check to the rule, ensuring that only
top level loop devices (loop[0-9]+$) are excluded from systemd.
2014-07-31 17:38:21 +02:00
Zbigniew Jędrzejewski-Szmek
cbd67a86fb resolved: fix multi-record packets with TXTs 2014-07-31 10:45:24 -04:00
Robert Schiele
a59f16ce4a build-sys: check for intltool also when polkit is enabled
intltool is needed for nls _and_ polkit, thus the check needs to be
changed to do the test whenever one of them is enables.

Without this build fails when configured with
--disable-nls --enable-polkit
2014-07-31 09:14:52 -04:00
Zbigniew Jędrzejewski-Szmek
0dae31d468 resolved: LOC records
LOC records have a version field. So far only version 0 has been
published, but if a record with a different version was encountered,
our only recourse is to treat it as an unknown type. This is
implemented with the 'unparseable' flag, which causes the
serialization/deserialization and printing function to cause the
record as a blob. The flag can be used if other packet types cannot be
parsed for whatever reason.
2014-07-31 08:56:03 -04:00
Zbigniew Jędrzejewski-Szmek
9de3e32940 resolved: SPF records 2014-07-31 08:56:03 -04:00
Zbigniew Jędrzejewski-Szmek
2e276efc7b resolved: TXT records 2014-07-31 08:56:03 -04:00
Zbigniew Jędrzejewski-Szmek
946c70944e resolved: MX records 2014-07-31 08:56:03 -04:00
Zbigniew Jędrzejewski-Szmek
b93312f596 resolve-host: list types and classes
Also update systemctl to similar style.
2014-07-31 08:56:03 -04:00
Zbigniew Jędrzejewski-Szmek
73f860db98 Always prefer our headers to system headers
In practice this shouldn't make much difference, but
sometimes our headers might be newer, and we want to
test them.
2014-07-31 08:56:03 -04:00
Zbigniew Jędrzejewski-Szmek
5d459d6b07 Constify option table and add missing option 2014-07-31 08:56:03 -04:00
Zbigniew Jędrzejewski-Szmek
6fc5a40438 man: add udev.conf(5)
We generally have separate man pages for all configuration files.
In this case udev.conf was already described in systemd-udevd.service(8),
but it was hard to find. Docbook makes it hard to add a .so link from
a different section, so describe udev.conf in its own page.
2014-07-31 08:56:03 -04:00
Zbigniew Jędrzejewski-Szmek
2b09983f94 man: add missing comma 2014-07-31 08:56:03 -04:00
Zbigniew Jędrzejewski-Szmek
a489205405 sysusers: split users for remote into separate file
This mirrors the setup for tmpfiles.d done in ad95fd1d2b.
2014-07-31 08:56:03 -04:00
Zbigniew Jędrzejewski-Szmek
d8aa69b9c8 systemd-analyze verify: improve error message
There's little sense in telling the user to look at the logs...
2014-07-31 08:56:03 -04:00
Zbigniew Jędrzejewski-Szmek
1e2fd62d70 core/load-fragment.c: correct argument sign and split up long lines
With everything on one line they are just harder to read.
2014-07-31 08:56:03 -04:00
Zbigniew Jędrzejewski-Szmek
b2fadec604 Properly report invalid quoted strings
$ systemd-analyze verify trailing-g.service
[./trailing-g.service:2] Trailing garbage, ignoring.
trailing-g.service lacks ExecStart setting. Refusing.
Error: org.freedesktop.systemd1.LoadFailed: Unit trailing-g.service failed to load: Invalid argument.
Failed to create trailing-g.service/start: Invalid argument
2014-07-31 08:56:03 -04:00
Zbigniew Jędrzejewski-Szmek
a2a5291b3f Reject invalid quoted strings
String which ended in an unfinished quote were accepted, potentially
with bad memory accesses.

Reject anything which ends in a unfished quote, or contains
non-whitespace characters right after the closing quote.

_FOREACH_WORD now returns the invalid character in *state. But this return
value is not checked anywhere yet.

Also, make 'word' and 'state' variables const pointers, and rename 'w'
to 'word' in various places. Things are easier to read if the same name
is used consistently.

mbiebl_> am I correct that something like this doesn't work
mbiebl_> ExecStart=/usr/bin/encfs --extpass='/bin/systemd-ask-passwd "Unlock EncFS"'
mbiebl_> systemd seems to strip of the quotes
mbiebl_> systemctl status shows
mbiebl_> ExecStart=/usr/bin/encfs --extpass='/bin/systemd-ask-password Unlock EncFS  $RootDir $MountPoint
mbiebl_> which is pretty weird
2014-07-31 04:00:31 -04:00
Zbigniew Jędrzejewski-Szmek
73381fcf54 test-strv: add test which shows access to random memory 2014-07-31 04:00:31 -04:00
Tom Gundersen
2b49732c3d networkd: don't assume udev_device_new_from_device_id sets errno
This reverts 6f4d55a8ae, as we cannot rely on errno here.

Reported by David Herrmann.
2014-07-30 21:53:38 +02:00
Lennart Poettering
e4501ed4e6 resolved: when we got a successful DNS reply, then only wait for other transactions on the same scope, nowhere else 2014-07-30 20:39:52 +02:00
Lennart Poettering
699bd879ef update TODO 2014-07-30 19:34:55 +02:00
Lennart Poettering
57f5ad3149 resolved: properly set TTL in SOA records 2014-07-30 19:34:50 +02:00
Lennart Poettering
fcf57f9cf7 resolved: don't attempt to order empty answer array 2014-07-30 19:24:13 +02:00
Lennart Poettering
351e6342d5 resolved: properly return start index when appending RR to packet 2014-07-30 19:24:13 +02:00