summaryrefslogtreecommitdiff
path: root/src/resolve/resolvectl.c
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2022-09-28 12:44:43 +0200
committerLennart Poettering <lennart@poettering.net>2022-09-30 14:21:38 +0200
commitab26cdf730e7d5907d9c93cc24f9e7bad2dbbf18 (patch)
tree229ff1718306fb80791a53fa1c662aa3bad52f0a /src/resolve/resolvectl.c
parentb497a958d651dc41c6c0551842a52c8a59b85930 (diff)
downloadsystemd-ab26cdf730e7d5907d9c93cc24f9e7bad2dbbf18.tar.gz
resolved: split out helper for allocating DnsResourceRecord object from raw data
No change in behaviour, just some refactoring.
Diffstat (limited to 'src/resolve/resolvectl.c')
-rw-r--r--src/resolve/resolvectl.c13
1 files changed, 1 insertions, 12 deletions
diff --git a/src/resolve/resolvectl.c b/src/resolve/resolvectl.c
index bda7ca2add..c069763e15 100644
--- a/src/resolve/resolvectl.c
+++ b/src/resolve/resolvectl.c
@@ -395,20 +395,9 @@ static int resolve_address(sd_bus *bus, int family, const union in_addr_union *a
static int output_rr_packet(const void *d, size_t l, int ifindex) {
_cleanup_(dns_resource_record_unrefp) DnsResourceRecord *rr = NULL;
- _cleanup_(dns_packet_unrefp) DnsPacket *p = NULL;
int r;
- r = dns_packet_new(&p, DNS_PROTOCOL_DNS, 0, DNS_PACKET_SIZE_MAX);
- if (r < 0)
- return log_oom();
-
- p->refuse_compression = true;
-
- r = dns_packet_append_blob(p, d, l, NULL);
- if (r < 0)
- return log_oom();
-
- r = dns_packet_read_rr(p, &rr, NULL, NULL);
+ r = dns_resource_record_new_from_raw(&rr, d, l);
if (r < 0)
return log_error_errno(r, "Failed to parse RR: %m");