---
name: "ldns_axfr_complete"
section: "3"
platform: "linux"
package: "ldns"
version: "1.9.2-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/ldns_axfr_complete"
---

# ldns\_axfr\_complete(3)

functions for full zone transfer

## NAME

ldns\_axfr\_start, ldns\_axfr\_next, ldns\_axfr\_abort, ldns\_axfr\_complete, ldns\_axfr\_last\_pkt - functions for full zone transfer

## SYNOPSIS

\#include \<stdint.h\>\
 \#include \<stdbool.h\>\

\#include \<ldns/ldns.h\>

ldns\_status ldns\_axfr\_start(ldns\_resolver \*resolver, const ldns\_rdf \*domain, ldns\_rr\_class c);

ldns\_rr\* ldns\_axfr\_next(ldns\_resolver \*resolver);

void ldns\_axfr\_abort(ldns\_resolver \*resolver);

bool ldns\_axfr\_complete(const ldns\_resolver \*resolver);

ldns\_pkt\* ldns\_axfr\_last\_pkt(const ldns\_resolver \*res);

## DESCRIPTION

*ldns\_axfr\_start*() Prepares the resolver for an axfr query The query is sent and the answers can be read with ldns\_axfr\_next .br **resolver**: the resolver to use .br **domain**: the domain to axfr .br **c**: the class to use .br Returns ldns\_status the status of the transfer

*ldns\_axfr\_next*() Get the next stream of RRs in a AXFR .br **resolver**: the resolver to use. First ldns\_axfr\_start() must be called .br Returns ldns\_rr the next RR from the AXFR stream After you get this returned RR (not NULL: on error), then check if  ldns\_axfr\_complete() is true to see if the zone transfer has completed.

*ldns\_axfr\_abort*() Abort a transfer that is in progress .br **resolver**: the resolver that is used

*ldns\_axfr\_complete*() Returns true if the axfr transfer has completed (i.e. 2 SOA RRs and no errors were encountered .br **resolver**: the resolver that is used .br Returns bool true if axfr transfer was completed without error

*ldns\_axfr\_last\_pkt*() Returns a pointer to the last ldns\_pkt that was sent by the server in the AXFR transfer usable for instance to get the error code on failure .br **res**: the resolver that was used in the axfr transfer .br Returns ldns\_pkt the last packet sent

## AUTHOR

The ldns team at NLnet Labs.

## REPORTING BUGS

Please report bugs to dns-team@nlnetlabs.nl or on GitHub at https://github.com/NLnetLabs/ldns/issues

## COPYRIGHT

Copyright (c) 2004 - 2006 NLnet Labs.

Licensed under the BSD License. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

## SEE ALSO

**perldoc Net::DNS**, **RFC1034**, **RFC1035**, **RFC4033**, **RFC4034** and **RFC4035**.

## REMARKS

This manpage was automatically generated from the ldns source code.
