bind  9.11.23
About: BIND 9.11 implements the Domain Name System (DNS) protocols for the Internet (see the Release Notes). ESV = Extended Supported Version. Source code distribution.
  Fossies Dox: bind-9.11.23.tar.gz  ("unofficial" and yet experimental doxygen-generated source code documentation)  

event.h File Reference
#include <isc/lang.h>
#include <isc/types.h>
Include dependency graph for event.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  isc_event
 

Macros

#define ISC_EVENT_COMMON(ltype)
 
#define ISC_EVENTATTR_NOPURGE   0x00000001
 
#define ISC_EVENTATTR_CANCELED   0x00000002
 
#define ISC_EVENT_INIT(event, sz, at, ta, ty, ac, ar, sn, df, da)
 
#define ISC_EVENTTYPE_FIRSTEVENT   0x00000000
 
#define ISC_EVENTTYPE_LASTEVENT   0xffffffff
 
#define ISC_EVENT_PTR(p)   ((isc_event_t **)(void *)(p))
 

Typedefs

typedef void(* isc_eventdestructor_t) (isc_event_t *)
 

Functions

ISC_LANG_BEGINDECLS isc_event_tisc_event_allocate (isc_mem_t *mctx, void *sender, isc_eventtype_t type, isc_taskaction_t action, void *arg, size_t size)
 
isc_event_tisc_event_constallocate (isc_mem_t *mctx, void *sender, isc_eventtype_t type, isc_taskaction_t action, const void *arg, size_t size)
 
void isc_event_free (isc_event_t **)
 

Macro Definition Documentation

◆ ISC_EVENT_COMMON

#define ISC_EVENT_COMMON (   ltype)
Value:
size_t ev_size; \
unsigned int ev_attributes; \
void * ev_tag; \
isc_eventtype_t ev_type; \
isc_taskaction_t ev_action; \
void * ev_arg; \
void * ev_sender; \
isc_eventdestructor_t ev_destroy; \
void * ev_destroy_arg; \
ISC_LINK(ltype) ev_link; \
ISC_LINK(ltype) ev_ratelink

Definition at line 26 of file event.h.

◆ ISC_EVENT_INIT

#define ISC_EVENT_INIT (   event,
  sz,
  at,
  ta,
  ty,
  ac,
  ar,
  sn,
  df,
  da 
)
Value:
do { \
(event)->ev_size = (sz); \
(event)->ev_attributes = (at); \
(event)->ev_tag = (ta); \
(event)->ev_type = (ty); \
(event)->ev_action = (ac); \
(event)->ev_arg = (ar); \
(event)->ev_sender = (sn); \
(event)->ev_destroy = (df); \
(event)->ev_destroy_arg = (da); \
ISC_LINK_INIT((event), ev_link); \
ISC_LINK_INIT((event), ev_ratelink); \
} while (0)

Definition at line 55 of file event.h.

◆ ISC_EVENT_PTR

#define ISC_EVENT_PTR (   p)    ((isc_event_t **)(void *)(p))

Definition at line 81 of file event.h.

◆ ISC_EVENTATTR_CANCELED

#define ISC_EVENTATTR_CANCELED   0x00000002

Definition at line 53 of file event.h.

◆ ISC_EVENTATTR_NOPURGE

#define ISC_EVENTATTR_NOPURGE   0x00000001

Definition at line 44 of file event.h.

◆ ISC_EVENTTYPE_FIRSTEVENT

#define ISC_EVENTTYPE_FIRSTEVENT   0x00000000

Definition at line 78 of file event.h.

◆ ISC_EVENTTYPE_LASTEVENT

#define ISC_EVENTTYPE_LASTEVENT   0xffffffff

Definition at line 79 of file event.h.

Typedef Documentation

◆ isc_eventdestructor_t

typedef void(* isc_eventdestructor_t) (isc_event_t *)

Events.

Definition at line 24 of file event.h.

Function Documentation

◆ isc_event_allocate()

◆ isc_event_constallocate()

isc_event_t* isc_event_constallocate ( isc_mem_t mctx,
void *  sender,
isc_eventtype_t  type,
isc_taskaction_t  action,
const void *  arg,
size_t  size 
)

Definition at line 54 of file event.c.

References arg, DE_CONST, destroy(), ISC_EVENT_INIT, isc_mem_get, mctx, REQUIRE, and sender.

◆ isc_event_free()

void isc_event_free ( isc_event_t **  eventp)

Definition at line 88 of file event.c.

References isc_event::ev_destroy, ISC_LINK_LINKED, and REQUIRE.

Referenced by acache_cleaner_init(), acache_cleaner_shutdown_action(), acache_cleaning_timer_action(), adb_shutdown(), authvalidated(), byaddr_done(), cache_cleaner_init(), cache_free(), catz_addmodzone_taskaction(), catz_delzone_taskaction(), checkbogus(), cleaner_shutdown_action(), cleaning_timer_action(), cleanup(), cleanup_dead_nodes_callback(), client_create(), client_delay(), client_newconn(), client_resfind(), client_shutdown(), client_timeout(), cnamevalidated(), connect_done(), connect_timeout(), control_newconn(), control_senddone(), control_timeout(), destroy(), destroy_disp(), dispatch_createudp(), dlvfetched(), dlvvalidated(), dns_byaddr_create(), dns_catz_update_taskaction(), dns_client_startrequest(), dns_client_startresolve(), dns_client_startupdate(), dns_dispatch_importrecv(), dns_lookup_create(), dns_validator_create(), dsfetched(), dsfetched2(), dsvalidated(), dump_quantum(), exit_check(), fctx_finddone(), fctx_timeout(), fetch_callback(), fetch_callback_validator(), fetch_done(), forward_done(), forward_fail(), free_devent(), free_rbtdb(), grow_entries(), grow_names(), heartbeat_timer_tick(), interface_timer_tick(), internal_update_callback(), isc__socket_accept(), isc__socket_connect(), isc__task_purgerange(), isc_httpd_accept(), isc_httpd_recvdone(), isc_httpd_senddone(), isc_task_purgeevent(), keyvalidated(), load_quantum(), localrequest_done(), lookup_done(), lookup_find(), lwdclientmgr_shutdown_callback(), main(), ns_lwdclient_recv(), ns_lwdclient_send(), ns_server_destroy(), onrun_callback(), pps_timer_tick(), prime_done(), process_answer(), process_gabn_finddone(), process_sendevent(), prune_tree(), ratelimiter_tick(), receive_soa(), recv_done(), recv_length(), recv_message(), recvresponse(), recvsoa(), req_connected(), req_destroy(), req_senddone(), req_shutdown(), req_timeout(), request_done(), resolve_done(), resolve_ns(), resolve_nsaddress(), resolveaddr_done(), resolver_shutdown(), resolvesoa_done(), resquery_connected(), resume_dslookup(), rmzone(), rndc_connected(), rndc_recvdone(), rndc_recvnonce(), rndc_senddone(), rndc_start(), run_server(), send_done(), send_forward_event(), send_update_event(), sendqueries(), shutdown_program(), shutdown_server(), shutdown_task(), sign(), spillattimer_countdown(), startupdate(), startworker(), suspend(), tat_done(), tat_timer_tick(), tcp_length_done(), tcp_recv(), udp_recv(), update_completed(), update_done(), updatedone_action(), validated(), writenode(), xfrin_connect_done(), xfrin_recv_done(), xfrin_send_done(), xfrin_timeout(), and xfrout_senddone().

Here is the caller graph for this function: