summaryrefslogtreecommitdiff
path: root/src/resolve
AgeCommit message (Collapse)Author
2014-11-27resolve: reject empty TXT recordsStanisław Pitucha
TXT records should have at least one character, so enforce this. Before 0f84a72 parser SIGSEGV'd on ->txt.strings being NULL, but even if this is fixed we should reject invalid TXT records.
2014-11-27resolve: set error code on failureStanisław Pitucha
Set the error code in case of incorrect name. This prevents continuing and failing an assert(name) later on.
2014-11-27resolve: fix redirection loops in compressed RRStanisław Pitucha
Loops in RR compression were only detected for the first entry. Multiple redirections should be allowed, each one checking for an infinite loop on its own starting point. Also update the pointer on each redirection to avoid longer loops of labels and redirections, in names like: (start) [len=1] "A", [ptr to start] (David: rename variable to "jump_barrier" and add reference to RFC)
2014-11-27resolve: fix NULL deref on strv comparisonDavid Herrmann
A strv might be NULL if it is empty. The txt.strings comparison doesn't take that into account. Introduce strv_equal() to provide a proper helper for this and fix resolve to use it. Thanks to Stanisław Pitucha <viraptor@gmail.com> for reporting this!
2014-11-25resolved: fix typo in sd_notify() callTom Gundersen
2014-11-17resolve: fix CID#1237549 Unchecked return valueSusant Sahani
2014-11-01resolved: dns-packet - use unaligned read/write helpersTom Gundersen
2014-10-23resolve: make DnsScope::conflict_queue an OrderedHashmapMichal Schmidt
on_conflict_dispatch() uses hashmap_steal_first() and then does something non-trivial with it. It may care about the order.
2014-10-23mac: rename apis with mac_{selinux/smack}_ prefixWaLyong Cho
2014-10-22resolved: simplify detection of packets from the loopback deviceLennart Poettering
We can simplify our code quite a bit if we explicitly check for the ifindex being 1 on Linux as a loopback check. Apparently, this is hardcoded on Linux on the kernel, and effectively exported to userspace via rtnl and such, hence we should be able to rely on it.
2014-10-17resolve: add missing headerLukasz Skalski
Change-Id: I64f7c6b446f6d92057c35cc3d4e29bd2bad8f75b
2014-10-13resolved: apply label to /run/systemd/resolve/resolv.confZbigniew Jędrzejewski-Szmek
Under an SELinux system, we want the file that is created to have a proper context, different from the default for files in /run. This is so that the policy can give access to almost everyone to this file.
2014-10-13resolved: split out writing of resolv.confZbigniew Jędrzejewski-Szmek
manager_write_resolv_conf() is quite long anyway.
2014-09-15hashmap: introduce hash_ops to make struct Hashmap smallerMichal Schmidt
It is redundant to store 'hash' and 'compare' function pointers in struct Hashmap separately. The functions always comprise a pair. Store a single pointer to struct hash_ops instead. systemd keeps hundreds of hashmaps, so this saves a little bit of memory.
2014-09-13resolved: fall back to hardcoded ifindex when checking if a link is the loopbackTom Gundersen
Reported by Philippe De Swert <philippedeswert@gmail.com>. Coverity CID#1237656
2014-08-22resolved: fix typo in log messageLennart Poettering
2014-08-22shared: add MAXSIZE() and use it in resolvedDavid Herrmann
The MAXSIZE() macro takes two types and returns the size of the larger one. It is much simpler to use than MAX(sizeof(A), sizeof(B)) and also avoids any compiler-extensions, unlike CONST_MAX() and MAX() (which are needed to avoid evaluating arguments more than once). This was suggested by Daniele Nicolodi <daniele@grinta.net>. Also make resolved use this macro instead of CONST_MAX(). This enhances readability quite a bit.
2014-08-21notify: send STOPPING=1 from our daemonsLennart Poettering
2014-08-20resolved: write resolv.conf search - switch argumentsTom Gundersen
Found by Lukáš Nykrýn.
2014-08-20resolved: fix which return codes we checkLennart Poettering
Discovered by Lukas Nykryn
2014-08-20resolved-dns-rr: fix typoLukas Nykryn
a->rrsig.type_covered != a->rrsig.type_covered" is always false regardless of the values of its operands because those operands are identical.
2014-08-15resolve: fix compilation on LLVM+clangDavid Herrmann
LLVM+clang does not allow statement-expressions inside of type-declarations (file-scope). Use CONST_MAX() to avoid this.
2014-08-15resolved: fix assertion when joining llmnr mcast groupLennart Poettering
2014-08-14resolved: pull in domain names from sd-networkTom Gundersen
2014-08-14resolved: clarify that LLMNR scopes must have a link assignedLennart Poettering
This is supposed to remove some compiler warnings: http://lists.freedesktop.org/archives/systemd-devel/2014-July/021393.html
2014-08-14resolved: enable LLMNRLennart Poettering
THis was accidentally broken, as we truned off LLMNR far to frequently, where we only wanted to turn off LLMNr on IPV6 on kernels lacking support for it.
2014-08-14resolved: allow passing on which protocol, family and interface to look ↵Lennart Poettering
something up Also, return on which protocol/family/interface we found something.
2014-08-13sd-network: /_get_link_/_link_get_/Tom Gundersen
The link is the 'object', so make this in line with our usual naming convention. Suggested by Kay and Lennart.
2014-08-13resolved: skip IPv6 LLMNR if IPv6 is not availableLennart Poettering
2014-08-12resolved: return exit code of event loopLennart Poettering
2014-08-12resolved: unify logic how we flush out DNS servers we learntLennart Poettering
2014-08-12resolved: filter out duplicate DNS servers when writing resolv.confLennart Poettering
2014-08-12resolved: initialize counterThomas Hindoe Paaboel Andersen
introduced in: a407657425a3e47fd2b559cd3bc800f791303f63
2014-08-11sd-network: rename the per-ifindex calls to sd_network_get_link_xxx()Lennart Poettering
This way we can introduce system-wide versions of these calls that are called the same way, but without the "link" in the name.
2014-08-11resolved: when picking a new hostname make sure two hosts pick different onesLennart Poettering
This way we can avoid always picking the same replacement hostnames when picking one.
2014-08-11resolved: actually, the peer with the lower IP address wins conflictsLennart Poettering
2014-08-11resolved: make sure we don't mark the wrong zone RRs conflictingLennart Poettering
2014-08-11resolved: be a bit more communicative about conflictsLennart Poettering
2014-08-11resolved: verify all RRs when we come back from suspendLennart Poettering
2014-08-11resolved: destroy outstanding queries if the clients that initiated them dieLennart Poettering
2014-08-11resolved: properly pass aborted transaction result back to clientsLennart Poettering
2014-08-11resolved: implement full LLMNR conflict detection logicLennart Poettering
2014-08-11resolved: properly check return value of dns_resource_record_equal()Lennart Poettering
2014-08-05resolved: don't abort if a transaction is aborted because its scope is removedLennart Poettering
2014-08-05resolved: add 100ms initial jitter to all LLMNR requestsLennart Poettering
2014-08-05resolved: enforce ratelimit on LLMNR trafficLennart Poettering
2014-08-05resolved: don't consider tentative addresses relevantLennart Poettering
2014-08-05resolved: fix a message typoLennart Poettering
2014-08-05resolved: stop the prober when we detect a conflict in LLMNRLennart Poettering
2014-08-05resolved: don't override zone item state after starting the probeLennart Poettering
After all, the probe might be finished immeidately (due to resources, ...), and we shouldn't then set the state back to probing.