Remove src/resolve
Use space after a silencing (void) We were using a space more often than not, and this way is codified in CODING_STYLE.
tree-wide: there is no ENOTSUP on linux Replace ENOTSUP by EOPNOTSUPP as this is what linux actually uses.
networkd/resolved: correct spacing near eol in code comments
resolved: don't resolve the hostname "gateway" with LLMNR, leave that to nss-myhostname
treewide: yet more log_*_errno + return simplifications Using: find . -name '*.[ch]' | while read f; do perl -i.mmm -e \ 'local $/; local $_=<>; s/(if\s*\([^\n]+\))\s*{\n(\s*)(log_[a-z_]*_errno\(\s*([->a-zA-Z_]+)\s*,[^;]+);\s*return\s+\g4;\s+}/\1\n\2return \3;/msg; print;' $f done And a couple of manual whitespace fixups.
treewide: no need to negate errno for log_*_errno() It corrrectly handles both positive and negative errno values.
treewide: auto-convert the simple cases to log_*_errno() As a followup to 086891e5c1 "log: add an "error" parameter to all low-level logging calls and intrdouce log_error_errno() as log calls that take error numbers", use sed to convert the simple cases to use the new macros: find . -name '*.[ch]' | xargs sed -r -i -e \ 's/log_(debug|info|notice|warning|error|emergency)\("(.*)%s"(.*), strerror\(-([a-zA-Z_]+)\)\);/log_\1_errno(-\4, "\2%m"\3);/' Multi-line log_*() invocations are not covered. And we also should add log_unit_*_errno().
resolve: fix CID#1237549 Unchecked return value
resolve: make DnsScope::conflict_queue an OrderedHashmap on_conflict_dispatch() uses hashmap_steal_first() and then does something non-trivial with it. It may care about the order.
hashmap: introduce hash_ops to make struct Hashmap smaller 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.
resolved: fix assertion when joining llmnr mcast group
resolved: clarify that LLMNR scopes must have a link assigned This is supposed to remove some compiler warnings: http://lists.freedesktop.org/archives/systemd-devel/2014-July/021393.html
resolved: allow passing on which protocol, family and interface to look something up Also, return on which protocol/family/interface we found something.
resolved: implement full LLMNR conflict detection logic
resolved: add 100ms initial jitter to all LLMNR requests
resolved: enforce ratelimit on LLMNR traffic
resolved: never reuse transactions for probing that are already completed based on cached data
resolved: avoid possible dereference of null pointer In dns_scope_make_reply_packet the structs q, answer, and soa can be null. We should check for null before reading their fields.
resolved: always drop multicast membership before adding one This is apparently necessary on some devices, such as veth.