auth_transfer Struct Reference

The transfer task. More...

#include <authzone.h>

Data Fields

struct workerworker
 
struct module_envenv
 
struct auth_chunkchunks_first
 xfer data that has been transferred, the data is applied once the transfer has completed correctly
 
struct auth_chunkchunks_last
 last element in chunks list (to append new data at the end)
 
struct auth_mastermasters
 list of upstream masters for this zone, from config
 
struct auth_masterlookup_target
 for the hostname lookups, which master is current
 
int lookup_aaaa
 are we looking up A or AAAA, first A, then AAAA (if ip6 enabled)
 
struct auth_masterscan_specific
 once notified, or the timeout has been reached. More...
 
struct auth_masterscan_target
 scan tries all the upstream masters. More...
 
struct auth_addrscan_addr
 what address we are scanning for the master, or NULL if the master is in IP format itself
 
struct auth_mastermaster
 the zone transfer in progress (or NULL if in scan). More...
 
int ixfr_fail
 failed ixfr transfer, retry with axfr (to the current master), the IXFR was 'REFUSED', 'SERVFAIL', 'NOTIMPL' or the contents of the IXFR did not apply cleanly (out of sync, delete of nonexistent data or add of duplicate data). More...
 
int ixfr_possible_timeout_count
 we saw an ixfr-indicating timeout, count of them
 
int on_ixfr
 we are doing IXFR right now
 
int got_xfr_serial
 did we detect the current AXFR/IXFR serial number yet, 0 not yet, 1 we saw the first, 2 we saw the second, 3 must be last SOA in xfr
 
size_t rr_scan_num
 number of RRs scanned for AXFR/IXFR detection
 
int on_ixfr_is_axfr
 we are doing an IXFR but we detected an AXFR contents
 
uint32_t incoming_xfr_serial
 the serial number for the current AXFR/IXFR incoming reply, for IXFR, the outermost SOA records serial
 
uint16_t id
 dns id of AXFR query
 
struct comm_pointcp
 the transfer (TCP) to the master. More...
 
struct comm_timertimer
 timeout for the transfer. More...
 

Detailed Description

The transfer task.

Once done, make sure the nextprobe waiting task is running, whether done with failure or success. If failure, use shorter timeout for wait time.

Field Documentation

◆ scan_specific

struct auth_master* auth_transfer::scan_specific

once notified, or the timeout has been reached.

a scan starts. the scan specific target (notify source), or NULL if none

Referenced by xfr_transfer_current_master(), xfr_transfer_end_of_list(), xfr_transfer_nextmaster(), and xfr_transfer_start_list().

◆ scan_target

struct auth_master* auth_transfer::scan_target

scan tries all the upstream masters.

the scan current target. or NULL if not working on sequential scan

Referenced by xfr_transfer_current_master(), xfr_transfer_end_of_list(), xfr_transfer_nextmaster(), and xfr_transfer_start_list().

◆ master

◆ ixfr_fail

int auth_transfer::ixfr_fail

failed ixfr transfer, retry with axfr (to the current master), the IXFR was 'REFUSED', 'SERVFAIL', 'NOTIMPL' or the contents of the IXFR did not apply cleanly (out of sync, delete of nonexistent data or add of duplicate data).

Flag is cleared once the retry with axfr is done.

Referenced by auth_xfer_transfer_timer_callback(), and process_list_end_transfer().

◆ cp

struct comm_point* auth_transfer::cp

the transfer (TCP) to the master.

on the workers event base.

Referenced by auth_xfer_delete(), auth_xfer_transfer_http_callback(), auth_xfer_transfer_timer_callback(), xfr_transfer_disown(), and xfr_transfer_init_fetch().

◆ timer

struct comm_timer* auth_transfer::timer

timeout for the transfer.

on the workers event base.

Referenced by auth_xfer_delete(), auth_xfer_transfer_http_callback(), xfr_transfer_disown(), and xfr_transfer_init_fetch().


The documentation for this struct was generated from the following file: