notify.h File Reference
`#include "config.h"`
`#include <ldns/ldns.h>`
`#include "status.h"`
`#include "wire/acl.h"`
`#include "wire/buffer.h"`
`#include "wire/netio.h"`
`#include "wire/tsig.h"`
`#include "daemon/xfrhandler.h"`
`#include "signer/zone.h"`

Go to the source code of this file.

## Data Structures

struct | notify_struct

## Macros

#define | NOTIFY_MAX_UDP 50
#define | NOTIFY_MAX_RETRY 5
#define | NOTIFY_RETRY_TIMEOUT 15

## Typedefs

typedef struct notify_struct | notify_type

## Functions

notify_type * | notify_create (xfrhandler_type *xfrhandler, zone_type *zone)
void | notify_enable (notify_type *notify, ldns_rr *soa)
void | notify_send (notify_type *notify)
void | notify_cleanup (notify_type *notify)

## Macro Definition Documentation

## NOTIFY_MAX_RETRY

#define NOTIFY_MAX_RETRY 5

Definition at line 49 of file notify.h.

## NOTIFY_MAX_UDP

#define NOTIFY_MAX_UDP 50

Definition at line 48 of file notify.h.

## NOTIFY_RETRY_TIMEOUT

#define NOTIFY_RETRY_TIMEOUT 15

Definition at line 50 of file notify.h.

## Typedef Documentation

## notify_type

typedef struct notify_struct notify_type

Notify sending.

Definition at line 38 of file notify.h.

## Function Documentation

## notify_cleanup()

void notify_cleanup | ( | notify_type * | notify | ) |

extern

Cleanup notify structure.

Parameters

  [in] | notify | notify structure.

Cleanup notify structure.

Definition at line 600 of file notify.c.

References netio_handler_struct::fd, notify_struct::handler, notify_struct::soa, notify_struct::tsig_rr, and tsig_rr_cleanup().

Referenced by notify_create(), and zone_cleanup().

## notify_create()

notify_type * notify_create | ( | xfrhandler_type * | xfrhandler,
|  | zone_type * | zone
| ) |  |

extern

Create notify structure.

Parameters

  [in] | xfrhandler | zone transfer handler
  [in] | zone | zone reference

Returns
  notify_type* notify structure.

Create notify structure.

Definition at line 100 of file notify.c.

References netio_handler_struct::event_handler, netio_handler_struct::event_types, netio_handler_struct::fd, notify_struct::handler, notify_struct::is_waiting, NETIO_EVENT_READ, NETIO_EVENT_TIMEOUT, notify_cleanup(), notify_struct::query_id, notify_struct::retry, notify_struct::secondary, notify_struct::soa, netio_handler_struct::timeout, notify_struct::timeout, notify_struct::tsig_rr, tsig_rr_create(), netio_handler_struct::user_data, notify_struct::waiting_next, notify_struct::xfrhandler, and notify_struct::zone.

## notify_enable()

void notify_enable | ( | notify_type * | notify,
|  | ldns_rr * | soa
| ) |  |

extern

Enable notify.

Parameters

  [in] | notify | notify structure
  [in] | soa | current soa

Enable notify.

Definition at line 544 of file notify.c.

References ADAPTER_DNS, zone_struct::adoutbound, adapter_struct::config, dnsout_struct::do_notify, netio_handler_struct::fd, notify_struct::handler, notify_struct::is_waiting, zone_struct::name, NOTIFY_MAX_UDP, xfrhandler_struct::notify_udp_num, xfrhandler_struct::notify_waiting_first, xfrhandler_struct::notify_waiting_last, notify_struct::secondary, netio_handler_struct::timeout, adapter_struct::type, notify_struct::waiting_next, notify_struct::xfrhandler, and notify_struct::zone.

## notify_send()

void notify_send | ( | notify_type * | notify | ) |

extern

Send notify.

Parameters

  [in] | notify | notify structure

Send notify.

Definition at line 422 of file notify.c.

References acl_struct::address, zone_struct::apex, buffer_flip(), buffer_pkt_id(), buffer_pkt_notify(), buffer_pkt_set_aa(), buffer_pkt_set_ancount(), buffer_write_rr(), netio_handler_struct::fd, notify_struct::handler, zone_struct::name, NOTIFY_RETRY_TIMEOUT, xfrhandler_struct::packet, notify_struct::query_id, notify_struct::retry, notify_struct::secondary, notify_struct::soa, notify_struct::timeout, acl_struct::tsig, notify_struct::xfrhandler, and notify_struct::zone.