xfrd.c File Reference
`#include "config.h"`
`#include "daemon/engine.h"`
`#include "daemon/xfrhandler.h"`
`#include "duration.h"`
`#include "file.h"`
`#include "log.h"`
`#include "status.h"`
`#include "util.h"`
`#include "signer/domain.h"`
`#include "signer/zone.h"`
`#include "wire/tcpset.h"`
`#include "wire/xfrd.h"`
`#include "signer/backup.h"`
`#include <unistd.h>`
`#include <fcntl.h>`

Go to the source code of this file.

## Macros

#define | XFRD_TSIG_MAX_UNSIGNED 100

## Functions

xfrd_type * | xfrd_create (xfrhandler_type *xfrhandler, zone_type *zone)
void | xfrd_set_timer_now (xfrd_type *xfrd)
void | xfrd_set_timer_retry (xfrd_type *xfrd)
void | xfrd_set_timer_refresh (xfrd_type *xfrd)
socklen_t | xfrd_acl_sockaddr_to (acl_type *acl, struct sockaddr_storage *to)
void | xfrd_cleanup (xfrd_type *xfrd, int backup)

## Macro Definition Documentation

## XFRD_TSIG_MAX_UNSIGNED

#define XFRD_TSIG_MAX_UNSIGNED 100

Zone transfers.

Definition at line 49 of file xfrd.c.

## Function Documentation

## xfrd_acl_sockaddr_to()

socklen_t xfrd_acl_sockaddr_to | ( | acl_type * | acl,
|  | struct sockaddr_storage * | to )

Use acl address to setup remote sockaddr struct.

Definition at line 537 of file xfrd.c.

References DNS_PORT_STRING, and acl_struct::port.

## xfrd_cleanup()

void xfrd_cleanup | ( | xfrd_type * | xfrd,
|  | int | backup )

Cleanup zone transfer structure.

Definition at line 2179 of file xfrd.c.

References xfrd_struct::rw_lock, xfrd_struct::serial_lock, xfrd_struct::tsig_rr, and tsig_rr_cleanup().

Referenced by xfrd_create(), and zone_cleanup().

## xfrd_create()

xfrd_type * xfrd_create | ( | xfrhandler_type * | xfrhandler,
|  | zone_type * | zone )

Create zone transfer structure.

Definition at line 315 of file xfrd.c.

References netio_handler_struct::event_handler, netio_handler_struct::event_types, soa_struct::expire, netio_handler_struct::fd, xfrd_struct::handler, xfrd_struct::master, xfrd_struct::master_num, soa_struct::minimum, soa_struct::mname, xfrd_struct::msg_do_retransfer, xfrd_struct::msg_is_ixfr, xfrd_struct::msg_new_serial, xfrd_struct::msg_old_serial, xfrd_struct::msg_rr_count, xfrd_struct::msg_seq_nr, NETIO_EVENT_READ, NETIO_EVENT_TIMEOUT, xfrd_struct::next_master, xfrd_struct::query_id, soa_struct::refresh, soa_struct::retry, soa_struct::rname, xfrd_struct::round_num, xfrd_struct::rw_lock, soa_struct::serial, xfrd_struct::serial_disk, xfrd_struct::serial_disk_acquired, xfrd_struct::serial_lock, xfrd_struct::serial_notify, xfrd_struct::serial_notify_acquired, xfrd_struct::serial_retransfer, xfrd_struct::serial_xfr, xfrd_struct::serial_xfr_acquired, xfrd_struct::soa, xfrd_struct::tcp_conn, xfrd_struct::tcp_waiting, xfrd_struct::tcp_waiting_next, netio_handler_struct::timeout, xfrd_struct::tsig_rr, tsig_rr_create(), soa_struct::ttl, xfrd_struct::udp_waiting, xfrd_struct::udp_waiting_next, netio_handler_struct::user_data, xfrd_cleanup(), xfrd_struct::xfrhandler, and xfrd_struct::zone.

## xfrd_set_timer_now()

void xfrd_set_timer_now | ( | xfrd_type * | xfrd | ) |

Set timeout for zone transfer to now.

Definition at line 454 of file xfrd.c.

References zone_struct::name, xfrd_struct::xfrhandler, and xfrd_struct::zone.

## xfrd_set_timer_refresh()

void xfrd_set_timer_refresh | ( | xfrd_type * | xfrd | ) |

Set timeout for zone transfer to REFRESH.

Definition at line 490 of file xfrd.c.

References zone_struct::name, soa_struct::refresh, xfrd_struct::soa, xfrd_struct::xfrhandler, and xfrd_struct::zone.

## xfrd_set_timer_retry()

void xfrd_set_timer_retry | ( | xfrd_type * | xfrd | ) |

Set timeout for zone transfer to RETRY.

Definition at line 472 of file xfrd.c.

References zone_struct::name, soa_struct::retry, xfrd_struct::soa, xfrd_struct::xfrhandler, and xfrd_struct::zone.