summaryrefslogtreecommitdiff
path: root/src/resolve/resolved-dns-packet.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/resolve/resolved-dns-packet.c')
-rw-r--r--src/resolve/resolved-dns-packet.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/resolve/resolved-dns-packet.c b/src/resolve/resolved-dns-packet.c
index 75c8bf315e..664e92c363 100644
--- a/src/resolve/resolved-dns-packet.c
+++ b/src/resolve/resolved-dns-packet.c
@@ -1426,7 +1426,7 @@ int dns_packet_read_name(
n += r;
continue;
- } else if (allow_compression && (c & 0xc0) == 0xc0) {
+ } else if (allow_compression && FLAGS_SET(c, 0xc0)) {
uint16_t ptr;
/* Pointer */
@@ -2241,12 +2241,11 @@ static int dns_packet_extract_answer(DnsPacket *p, DnsAnswer **ret_answer) {
if (DNS_PACKET_QR(p)) {
/* Additional checks for responses */
- if (!DNS_RESOURCE_RECORD_OPT_VERSION_SUPPORTED(rr)) {
+ if (!DNS_RESOURCE_RECORD_OPT_VERSION_SUPPORTED(rr))
/* If this is a reply and we don't know the EDNS version
* then something is weird... */
- log_debug("EDNS version newer that our request, bad server.");
- return -EBADMSG;
- }
+ return log_debug_errno(SYNTHETIC_ERRNO(EBADMSG),
+ "EDNS version newer that our request, bad server.");
if (has_rfc6975) {
/* If the OPT RR contains RFC6975 algorithm data, then this