]> git.ipfire.org Git - thirdparty/unbound.git/commitdiff
Apply suggestions from code review
authorTCY16 <8014108+TCY16@users.noreply.github.com>
Fri, 21 May 2021 13:42:56 +0000 (15:42 +0200)
committerGitHub <noreply@github.com>
Fri, 21 May 2021 13:42:56 +0000 (15:42 +0200)
Co-authored-by: Willem Toorop <willem@nlnetlabs.nl>
sldns/rrdef.c
sldns/rrdef.h
sldns/str2wire.c
sldns/wire2str.c

index 125d3d0aba21252e7d97ab5919ca223ab2ad5469..803a0fa7d9524c5456a0bcfa729c94e47a9e081c 100644 (file)
@@ -382,7 +382,7 @@ static sldns_rr_descriptor rdata_field_descriptors[] = {
        {LDNS_RR_TYPE_ZONEMD, "ZONEMD", 4, 4, type_zonemd_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 },
        /* 64 */
        {LDNS_RR_TYPE_SVCB, "SVCB", 2, 2, type_svcb_wireformat, LDNS_RDF_TYPE_SVCPARAM, LDNS_RR_NO_COMPRESS, 0 },
-{(enum sldns_enum_rr_type)0, "TYPE65", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 },
+       {LDNS_RR_TYPE_HTTPS, "HTTPS", 2, 2, type_svcb_wireformat, LDNS_RDF_TYPE_SVCPARAM, LDNS_RR_NO_COMPRESS, 0 },
 {(enum sldns_enum_rr_type)0, "TYPE66", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 },
 {(enum sldns_enum_rr_type)0, "TYPE67", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 },
 {(enum sldns_enum_rr_type)0, "TYPE68", 1, 1, type_0_wireformat, LDNS_RDF_TYPE_NONE, LDNS_RR_NO_COMPRESS, 0 },
index cd65c41267a360e2911bf772c18aea055383688a..42d5de064eea2581400421fab9e9a15c9e205d7f 100644 (file)
@@ -355,7 +355,7 @@ enum sldns_enum_rdf_type
        /** TSIG extended 16bit error value */
        LDNS_RDF_TYPE_TSIGERROR,
 
-       /* draft-ietf-dnsop-svcb-https-04:
+       /* draft-ietf-dnsop-svcb-https-05:
         * each SvcParam consisting of a SvcParamKey=SvcParamValue pair or
         * a standalone SvcParamKey */
        LDNS_RDF_TYPE_SVCPARAM,
index a35dfc83638c901d6ddaa0a2a546df4502390f58..f905939fd0e8f96c095454f3a6da53f096078b4d 100644 (file)
@@ -1055,8 +1055,8 @@ sldns_str2wire_svcbparam_ipv4hint(const char* val, uint8_t* rd, size_t* rd_len)
        while (count) {
                if (!(next_ip_str = strchr(val, ','))) {
                        if (inet_pton(AF_INET, val, rd + *rd_len) != 1)
-                               *rd_len += LDNS_IP4ADDRLEN;
                                break;
+                       *rd_len += LDNS_IP4ADDRLEN;
 
                        assert(count == 1);
 
@@ -1067,10 +1067,10 @@ sldns_str2wire_svcbparam_ipv4hint(const char* val, uint8_t* rd, size_t* rd_len)
                        memcpy(ip_str, val, next_ip_str - val);
                        ip_str[next_ip_str - val] = 0;
                        if (inet_pton(AF_INET, ip_str, rd + *rd_len) != 1) {
-                               *rd_len += LDNS_IP4ADDRLEN;
                                val = ip_str; /* to use in error reporting below */
                                break;
                        }
+                       *rd_len += LDNS_IP4ADDRLEN;
 
                        val = next_ip_str + 1;
                }
index 7d1143c6d19921c4bfd5fd1b703ace0dc5323b09..8ade3daca2c8c74be1d0cc75f9ce8b055f1a3975 100644 (file)
@@ -1122,7 +1122,7 @@ int sldns_wire2str_svcparam_scan(uint8_t** d, size_t* dlen, char** s, size_t* sl
        uint8_t* data = *d;
        int written_chars = 0;
 
-       if(*dlen == 0) return 0; /* verify that we actualy have data */
+       if(*dlen < 4) return 0; /* verify that we actualy have data */
 
        svcparamkey = sldns_read_uint16(data);