resolve: split the RR comparison function in two
No functional change.
This commit is contained in:
parent
2d34cf0c16
commit
51969a5893
|
@ -557,18 +557,10 @@ int dns_resource_record_new_address(DnsResourceRecord **ret, int family, const u
|
|||
((a).field ## _size == (b).field ## _size && \
|
||||
memcmp((a).field, (b).field, (a).field ## _size) == 0)
|
||||
|
||||
int dns_resource_record_equal(const DnsResourceRecord *a, const DnsResourceRecord *b) {
|
||||
int dns_resource_record_payload_equal(const DnsResourceRecord *a, const DnsResourceRecord *b) {
|
||||
int r;
|
||||
|
||||
assert(a);
|
||||
assert(b);
|
||||
|
||||
if (a == b)
|
||||
return 1;
|
||||
|
||||
r = dns_resource_key_equal(a->key, b->key);
|
||||
if (r <= 0)
|
||||
return r;
|
||||
/* Check if a and b are the same, but don't look at their keys */
|
||||
|
||||
if (a->unparseable != b->unparseable)
|
||||
return 0;
|
||||
|
@ -692,6 +684,22 @@ int dns_resource_record_equal(const DnsResourceRecord *a, const DnsResourceRecor
|
|||
}
|
||||
}
|
||||
|
||||
int dns_resource_record_equal(const DnsResourceRecord *a, const DnsResourceRecord *b) {
|
||||
int r;
|
||||
|
||||
assert(a);
|
||||
assert(b);
|
||||
|
||||
if (a == b)
|
||||
return 1;
|
||||
|
||||
r = dns_resource_key_equal(a->key, b->key);
|
||||
if (r <= 0)
|
||||
return r;
|
||||
|
||||
return dns_resource_record_payload_equal(a, b);
|
||||
}
|
||||
|
||||
static char* format_location(uint32_t latitude, uint32_t longitude, uint32_t altitude,
|
||||
uint8_t size, uint8_t horiz_pre, uint8_t vert_pre) {
|
||||
char *s;
|
||||
|
|
|
@ -308,6 +308,8 @@ DnsResourceRecord* dns_resource_record_unref(DnsResourceRecord *rr);
|
|||
int dns_resource_record_new_reverse(DnsResourceRecord **ret, int family, const union in_addr_union *address, const char *name);
|
||||
int dns_resource_record_new_address(DnsResourceRecord **ret, int family, const union in_addr_union *address, const char *name);
|
||||
int dns_resource_record_equal(const DnsResourceRecord *a, const DnsResourceRecord *b);
|
||||
int dns_resource_record_payload_equal(const DnsResourceRecord *a, const DnsResourceRecord *b);
|
||||
|
||||
const char* dns_resource_record_to_string(DnsResourceRecord *rr);
|
||||
DnsResourceRecord *dns_resource_record_copy(DnsResourceRecord *rr);
|
||||
DEFINE_TRIVIAL_CLEANUP_FUNC(DnsResourceRecord*, dns_resource_record_unref);
|
||||
|
|
Loading…
Reference in a new issue