unbound: auth_probe Struct Reference

unbound 0.1

Data Fields
auth_probe Struct Reference

The probe task. More...

`#include <authzone.h>`

## Data Fields
struct worker * | worker
struct module_env * | env
struct auth_master * | masters
| list of upstream masters for this zone, from config
struct auth_master * | lookup_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)
int | only_lookup
| we only want to do lookups for making config work (for notify), don't proceed with UDP SOA probe queries
int | have_new_lease
| we have seen a new lease this scan, because one of the masters replied with the current SOA serial version
struct auth_master * | scan_specific
| once notified, or the timeout has been reached.
struct auth_master * | scan_target
| scan tries all the upstream masters.
struct auth_addr * | scan_addr
| if not NULL, the specific addr for the current master
uint16_t | id
| dns id of packet in flight
struct comm_point * | cp
| the SOA probe udp event.
int | cp_is_ip6
| is the cp for ip6 or ip4
struct comm_timer * | timer
| timeout for packets.
int | timeout
| timeout in msec

## Detailed Description

The probe task.

Send a SOA UDP query to see if the zone needs to be updated (or similar, potential, HTTP probe query) and check serial number. If yes, start the auth_transfer task. If no, make sure auth_nextprobe timeout wait task is running. Needs to be a task, because the UDP query needs an event entry. This task could also be started by eg. a NOTIFY being received, even though another worker is performing the nextprobe task (and that worker keeps waiting uninterrupted).

## Field Documentation

## ◆ scan_specific

struct auth_master* auth_probe::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_probe_current_master(), xfr_probe_end_of_list(), xfr_probe_nextmaster(), and xfr_probe_start_list().

## ◆ scan_target

struct auth_master* auth_probe::scan_target

scan tries all the upstream masters.

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

Referenced by xfr_probe_current_master(), xfr_probe_end_of_list(), xfr_probe_nextmaster(), and xfr_probe_start_list().

## ◆ cp

struct comm_point* auth_probe::cp

the SOA probe udp event.

on the workers event base.

Referenced by auth_xfer_delete(), auth_xfer_get_mem(), auth_xfer_probe_timer_callback(), auth_xfer_probe_udp_callback(), xfr_probe_disown(), xfr_probe_send_probe(), and xfr_start_probe().

## ◆ timer

struct comm_timer* auth_probe::timer

timeout for packets.

on the workers event base.

Referenced by auth_xfer_delete(), auth_xfer_get_mem(), auth_xfer_probe_udp_callback(), xfr_probe_disown(), and xfr_probe_send_probe().

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

- services/authzone.h