OpenDNSSEC-signer  2.0.4
Data Structures | Macros | Typedefs | Enumerations | Functions
xfrd.h File Reference
#include "config.h"
#include <stdint.h>
#include <time.h>
#include "locks.h"
#include "status.h"
#include "wire/acl.h"
#include "wire/buffer.h"
#include "wire/netio.h"
#include "wire/tsig.h"
#include "daemon/xfrhandler.h"

Go to the source code of this file.

Data Structures

struct  soa_struct
 
struct  xfrd_struct
 

Macros

#define XFRD_MAX_ROUNDS   3 /* max number of rounds along the masters */
 
#define XFRD_MAX_UDP   100 /* max number of udp sockets at a time for ixfr */
 
#define XFRD_NO_IXFR_CACHE   172800 /* 48h before retrying ixfr after notimpl */
 
#define XFRD_TCP_TIMEOUT   120 /* seconds, before a tcp request times out */
 
#define XFRD_UDP_TIMEOUT   5 /* seconds, before a udp request times out */
 

Typedefs

typedef enum xfrd_pkt_enum xfrd_pkt_status
 
typedef struct soa_struct soa_type
 
typedef struct xfrd_struct xfrd_type
 

Enumerations

enum  xfrd_pkt_enum {
  XFRD_PKT_BAD, XFRD_PKT_MORE, XFRD_PKT_NOTIMPL, XFRD_PKT_TC,
  XFRD_PKT_XFR, XFRD_PKT_NEWLEASE
}
 

Functions

xfrd_typexfrd_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_MAX_ROUNDS

#define XFRD_MAX_ROUNDS   3 /* max number of rounds along the masters */

Definition at line 65 of file xfrd.h.

◆ XFRD_MAX_UDP

#define XFRD_MAX_UDP   100 /* max number of udp sockets at a time for ixfr */

Definition at line 66 of file xfrd.h.

◆ XFRD_NO_IXFR_CACHE

#define XFRD_NO_IXFR_CACHE   172800 /* 48h before retrying ixfr after notimpl */

Definition at line 67 of file xfrd.h.

◆ XFRD_TCP_TIMEOUT

#define XFRD_TCP_TIMEOUT   120 /* seconds, before a tcp request times out */

Definition at line 68 of file xfrd.h.

◆ XFRD_UDP_TIMEOUT

#define XFRD_UDP_TIMEOUT   5 /* seconds, before a udp request times out */

Definition at line 69 of file xfrd.h.

Typedef Documentation

◆ soa_type

typedef struct soa_struct soa_type

Definition at line 53 of file xfrd.h.

◆ xfrd_pkt_status

Definition at line 51 of file xfrd.h.

◆ xfrd_type

typedef struct xfrd_struct xfrd_type

Definition at line 55 of file xfrd.h.

Enumeration Type Documentation

◆ xfrd_pkt_enum

Zone transfers. Packet status.

Enumerator
XFRD_PKT_BAD 
XFRD_PKT_MORE 
XFRD_PKT_NOTIMPL 
XFRD_PKT_TC 
XFRD_PKT_XFR 
XFRD_PKT_NEWLEASE 

Definition at line 43 of file xfrd.h.

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.

Parameters
[in]aclacl
[in]toremote address storage
Returns
socklen_t length of address

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.

Parameters
[in]xfrdzone transfer structure.
[in]backupbackup transfer variables.

Cleanup zone transfer structure.

Definition at line 2159 of file xfrd.c.

Referenced by xfrd_create(), and zone_cleanup().

◆ xfrd_create()

xfrd_type* xfrd_create ( xfrhandler_type xfrhandler,
zone_type zone 
)

◆ xfrd_set_timer_now()

void xfrd_set_timer_now ( xfrd_type xfrd)

Set timeout for zone transfer to now.

Parameters
[in]xfrdzone transfer structure.

Set timeout for zone transfer to now.

Definition at line 454 of file xfrd.c.

References 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.

Parameters
[in]xfrdzone transfer structure.

Set timeout for zone transfer to REFRESH.

Definition at line 490 of file xfrd.c.

References 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.

Parameters
[in]xfrdzone transfer structure.

Set timeout for zone transfer to RETRY.

Definition at line 472 of file xfrd.c.

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