ns_client Struct Reference

nameserver client structure More...

#include <client.h>


Public Member Functions

 ISC_LINK (ns_client_t) link
 ISC_LINK (ns_client_t) rlink
 ISC_QLINK (ns_client_t) ilink

Data Fields

unsigned int magic
isc_mem_tmctx
ns_clientmgr_tmanager
int state
int newstate
int naccepts
int nreads
int nsends
int nrecvs
int nupdates
int nctls
int references
isc_boolean_t needshutdown
unsigned int attributes
isc_task_ttask
dns_view_tview
dns_dispatch_tdispatch
isc_socket_tudpsocket
isc_socket_ttcplistener
isc_socket_ttcpsocket
unsigned char * tcpbuf
dns_tcpmsg_t tcpmsg
isc_boolean_t tcpmsg_valid
isc_timer_ttimer
isc_timer_tdelaytimer
isc_boolean_t timerset
dns_message_tmessage
isc_socketevent_tsendevent
isc_socketevent_trecvevent
unsigned char * recvbuf
dns_rdataset_topt
isc_uint16_t udpsize
isc_uint16_t extflags
isc_int16_t ednsversion
void(* next )(ns_client_t *)
void(* shutdown )(void *arg, isc_result_t result)
void * shutdown_arg
ns_query_t query
isc_stdtime_t requesttime
isc_stdtime_t now
isc_time_t tnow
dns_name_t signername
 [T]SIG key name
dns_name_tsigner
 NULL if not valid sig.
isc_boolean_t mortal
 Die after handling request.
isc_boolean_t pipelined
 TCP queries not in sequence.
isc_quota_ttcpquota
isc_quota_trecursionquota
ns_interface_tinterface
isc_sockaddr_t peeraddr
isc_boolean_t peeraddr_valid
isc_netaddr_t destaddr
isc_netaddr_t ecs_addr
 EDNS client subnet.
isc_uint8_t ecs_addrlen
isc_uint8_t ecs_scope
struct in6_pktinfo pktinfo
isc_dscp_t dscp
isc_event_t ctlevent
struct {
   isc_sockaddr_t   addr
   isc_stdtime_t   time
   dns_messageid_t   id
formerrcache
unsigned char cookie [8]
isc_uint32_t expire


Detailed Description

nameserver client structure

Definition at line 87 of file client.h.


Member Function Documentation

ns_client::ISC_LINK ( ns_client_t   ) 

ns_client::ISC_LINK ( ns_client_t   ) 

ns_client::ISC_QLINK ( ns_client_t   ) 


Field Documentation

unsigned int ns_client::magic

Definition at line 88 of file client.h.

Referenced by client_create(), and exit_check().

isc_mem_t* ns_client::mctx

Definition at line 89 of file client.h.

Referenced by check_dnssec(), client_allocsendbuf(), client_create(), client_newconn(), client_send(), client_senddone(), dns64_aaaaok(), exit_check(), get_key(), get_worker(), ns_client_dumpmessage(), ns_client_sendraw(), query_add_cname(), query_dns64(), query_filter64(), query_find(), query_freefreeversions(), query_newdbversion(), query_newnamebuf(), query_reset(), rpz_rewrite(), send_forward_event(), send_update_event(), update_action(), and verify().

ns_clientmgr_t* ns_client::manager

Definition at line 90 of file client.h.

Referenced by client_create(), client_shutdown(), exit_check(), get_client(), get_worker(), ns_client_killoldestquery(), ns_client_recursing(), ns_client_replace(), and ns_client_send().

int ns_client::state

Definition at line 91 of file client.h.

Referenced by client_create(), client_newconn(), client_read(), client_request(), exit_check(), get_client(), get_worker(), ns_client_dumprecursing(), ns_client_endrequest(), ns_client_next(), and ns_client_recursing().

int ns_client::newstate

Definition at line 92 of file client.h.

Referenced by client_create(), client_newconn(), client_read(), client_request(), client_shutdown(), client_timeout(), exit_check(), get_worker(), ns_client_next(), ns_client_recursing(), and ns_client_shuttingdown().

int ns_client::naccepts

Definition at line 93 of file client.h.

Referenced by client_accept(), client_create(), client_newconn(), exit_check(), and ns_client_endrequest().

int ns_client::nreads

Definition at line 94 of file client.h.

Referenced by client_create(), client_read(), client_request(), exit_check(), and ns_client_endrequest().

int ns_client::nsends

Definition at line 95 of file client.h.

Referenced by client_create(), client_senddone(), client_sendpkg(), exit_check(), and ns_client_endrequest().

int ns_client::nrecvs

Definition at line 96 of file client.h.

Referenced by client_create(), client_request(), client_udprecv(), exit_check(), and ns_client_endrequest().

int ns_client::nupdates

Definition at line 97 of file client.h.

Referenced by client_create(), exit_check(), forward_done(), forward_fail(), ns_client_endrequest(), send_forward_event(), send_update_event(), and updatedone_action().

int ns_client::nctls

Definition at line 98 of file client.h.

Referenced by client_create(), client_start(), exit_check(), get_client(), and get_worker().

int ns_client::references

Definition at line 99 of file client.h.

Referenced by client_create(), exit_check(), ns_client_attach(), and ns_client_detach().

isc_boolean_t ns_client::needshutdown

Definition at line 100 of file client.h.

Referenced by client_create(), client_shutdown(), and exit_check().

unsigned int ns_client::attributes

Definition at line 107 of file client.h.

Referenced by client_allocsendbuf(), client_create(), client_request(), client_send(), client_sendpkg(), exit_check(), get_client(), get_worker(), log_query(), ns_client_addopt(), ns_client_checkaclsilent(), ns_client_endrequest(), ns_client_error(), ns_query_start(), process_ecs(), process_opt(), query_find(), query_prefetch(), query_recurse(), rpz_add_cname(), send_forward_event(), and sendstream().

isc_task_t* ns_client::task

Definition at line 108 of file client.h.

Referenced by client_accept(), client_create(), client_delay(), client_newconn(), client_read(), client_request(), client_senddone(), client_sendpkg(), client_shutdown(), client_start(), client_timeout(), client_udprecv(), exit_check(), forward_action(), forward_callback(), get_client(), get_worker(), ns_client_send(), ns_clientmgr_destroy(), prefetch_done(), query_prefetch(), query_recurse(), query_resume(), sendstream(), update_action(), updatedone_action(), and xfrout_maybe_destroy().

dns_view_t* ns_client::view

Definition at line 109 of file client.h.

Referenced by checkqueryacl(), checkupdateacl(), client_allocsendbuf(), client_create(), client_request(), client_send(), dns64_aaaaok(), exit_check(), mark_secure(), ns_client_addopt(), ns_client_dumprecursing(), ns_client_endrequest(), ns_client_error(), ns_client_logv(), ns_notify_start(), ns_query_start(), ns_update_start(), query_addadditional(), query_addadditional2(), query_addbestns(), query_addrdataset(), query_discardcache(), query_dns64(), query_find(), query_getcachedb(), query_getdb(), query_getzonedb(), query_prefetch(), query_recurse(), query_validatezonedb(), redirect(), redirect2(), rpz_ck_dnssec(), rpz_get_zbits(), rpz_rewrite(), rpz_rewrite_ip(), rpz_rewrite_name(), rpz_rrset_find(), setup_query_sortlist(), validate(), and verify().

dns_dispatch_t* ns_client::dispatch

Definition at line 110 of file client.h.

Referenced by client_create(), client_request(), client_sendpkg(), exit_check(), get_client(), and ns_client_replace().

isc_socket_t* ns_client::udpsocket

Definition at line 111 of file client.h.

Referenced by client_create(), client_sendpkg(), client_udprecv(), exit_check(), and get_client().

isc_socket_t* ns_client::tcplistener

Definition at line 112 of file client.h.

Referenced by client_accept(), client_create(), exit_check(), get_client(), and get_worker().

isc_socket_t* ns_client::tcpsocket

Definition at line 113 of file client.h.

Referenced by client_create(), client_newconn(), client_request(), client_sendpkg(), exit_check(), get_worker(), ns_client_replace(), sendstream(), and xfrout_maybe_destroy().

unsigned char* ns_client::tcpbuf

Definition at line 114 of file client.h.

Referenced by client_allocsendbuf(), client_create(), client_send(), client_senddone(), exit_check(), and ns_client_sendraw().

dns_tcpmsg_t ns_client::tcpmsg

Definition at line 115 of file client.h.

Referenced by client_newconn(), client_read(), client_request(), exit_check(), and get_worker().

isc_boolean_t ns_client::tcpmsg_valid

Definition at line 116 of file client.h.

Referenced by client_create(), client_newconn(), exit_check(), and get_worker().

isc_timer_t* ns_client::timer

Definition at line 117 of file client.h.

Referenced by client_create(), client_timeout(), exit_check(), ns_client_settimeout(), xfrout_ctx_create(), and xfrout_senddone().

isc_timer_t* ns_client::delaytimer

Definition at line 118 of file client.h.

Referenced by client_create(), client_delay(), exit_check(), and ns_client_send().

isc_boolean_t ns_client::timerset

Definition at line 119 of file client.h.

Referenced by client_create(), exit_check(), and ns_client_settimeout().

dns_message_t* ns_client::message

Definition at line 120 of file client.h.

Referenced by answer_in_glue(), client_create(), client_request(), client_send(), exit_check(), forward_action(), ns_client_dumpmessage(), ns_client_dumprecursing(), ns_client_endrequest(), ns_client_error(), ns_client_qnamereplace(), ns_client_sendraw(), ns_notify_start(), ns_query_start(), ns_update_start(), process_opt(), query_add_cname(), query_addadditional(), query_addadditional2(), query_addds(), query_addns(), query_addrrset(), query_addsoa(), query_dns64(), query_filter64(), query_find(), query_isduplicate(), query_newname(), query_newrdataset(), query_prefetch(), query_putrdataset(), query_recurse(), query_releasename(), query_reset(), query_send(), respond(), rpz_add_cname(), sendstream(), setup_query_sortlist(), and update_action().

isc_socketevent_t* ns_client::sendevent

Definition at line 121 of file client.h.

Referenced by client_create(), client_senddone(), client_sendpkg(), and exit_check().

isc_socketevent_t* ns_client::recvevent

Definition at line 122 of file client.h.

Referenced by client_create(), client_request(), client_udprecv(), and exit_check().

unsigned char* ns_client::recvbuf

Definition at line 123 of file client.h.

Referenced by client_create(), client_udprecv(), and exit_check().

dns_rdataset_t* ns_client::opt

Definition at line 124 of file client.h.

Referenced by client_create(), client_send(), exit_check(), ns_client_endrequest(), and process_opt().

isc_uint16_t ns_client::udpsize

Definition at line 125 of file client.h.

Referenced by client_allocsendbuf(), client_create(), client_request(), ns_client_endrequest(), ns_query_start(), and process_opt().

isc_uint16_t ns_client::extflags

Definition at line 126 of file client.h.

Referenced by client_create(), ns_client_addopt(), ns_client_endrequest(), ns_query_start(), and process_opt().

isc_int16_t ns_client::ednsversion

Definition at line 127 of file client.h.

Referenced by client_create(), log_query(), ns_client_endrequest(), ns_query_start(), and process_opt().

void(* ns_client::next)(ns_client_t *)

Referenced by client_create(), ns_client_endrequest(), and ns_query_start().

void(* ns_client::shutdown)(void *arg, isc_result_t result)

Referenced by client_create(), client_shutdown(), client_timeout(), xfrout_ctx_create(), and xfrout_ctx_destroy().

void* ns_client::shutdown_arg

Definition at line 130 of file client.h.

Referenced by client_create(), client_shutdown(), client_timeout(), xfrout_ctx_create(), and xfrout_ctx_destroy().

ns_query_t ns_client::query

Definition at line 131 of file client.h.

Referenced by answer_in_glue(), dns64_aaaaok(), exit_check(), inc_stats(), log_query(), log_queryerror(), ns_client_dumprecursing(), ns_client_error(), ns_client_logv(), ns_client_qnamereplace(), ns_query_cancel(), ns_query_init(), ns_query_start(), prefetch_done(), query_addadditional(), query_addadditional2(), query_addbestns(), query_addns(), query_addnxrrsetnsec(), query_addrrset(), query_addsoa(), query_addwildcardproof(), query_dns64(), query_filter64(), query_find(), query_findclosestnsec3(), query_findversion(), query_freefreeversions(), query_getcachedb(), query_getdbversion(), query_getnamebuf(), query_keepname(), query_newdbversion(), query_newname(), query_newnamebuf(), query_prefetch(), query_recurse(), query_releasename(), query_reset(), query_resume(), query_send(), query_validatezonedb(), redirect(), redirect2(), rpz_add_cname(), rpz_get_zbits(), rpz_getdb(), rpz_log_fail(), rpz_log_rewrite(), rpz_rewrite(), rpz_rewrite_ip(), rpz_rewrite_ip_rrset(), rpz_rewrite_ip_rrsets(), rpz_rewrite_name(), rpz_rewrite_ns_skip(), rpz_rrset_find(), and rpz_st_clear().

isc_stdtime_t ns_client::requesttime

Definition at line 132 of file client.h.

Referenced by client_request(), ns_client_dumprecursing(), and ns_client_error().

isc_stdtime_t ns_client::now

Definition at line 133 of file client.h.

Referenced by client_request(), get_key(), mark_secure(), ns_client_error(), query_addadditional(), query_addadditional2(), query_addbestns(), query_addds(), query_addns(), query_addsoa(), query_find(), query_findclosestnsec3(), query_resume(), redirect(), redirect2(), rpz_find_p(), and rpz_rrset_find().

isc_time_t ns_client::tnow

Definition at line 134 of file client.h.

Referenced by client_request(), and query_find().

dns_name_t ns_client::signername

[T]SIG key name

Definition at line 135 of file client.h.

Referenced by client_create(), and client_request().

dns_name_t* ns_client::signer

NULL if not valid sig.

Definition at line 136 of file client.h.

Referenced by checkupdateacl(), client_create(), client_request(), dns64_aaaaok(), log_query(), ns_client_checkaclsilent(), ns_client_endrequest(), ns_client_logv(), query_dns64(), and update_action().

isc_boolean_t ns_client::mortal

Die after handling request.

Definition at line 137 of file client.h.

Referenced by client_create(), exit_check(), ns_client_replace(), ns_client_send(), query_recurse(), and send_forward_event().

isc_boolean_t ns_client::pipelined

TCP queries not in sequence.

Definition at line 138 of file client.h.

Referenced by client_create(), client_newconn(), client_request(), client_start(), exit_check(), get_worker(), and ns_client_replace().

isc_quota_t* ns_client::tcpquota

Definition at line 139 of file client.h.

Referenced by client_create(), client_newconn(), exit_check(), and get_worker().

isc_quota_t* ns_client::recursionquota

Definition at line 140 of file client.h.

Referenced by client_create(), client_newconn(), client_read(), client_request(), exit_check(), get_client(), get_worker(), ns_client_endrequest(), query_prefetch(), and query_recurse().

ns_interface_t* ns_client::interface

Definition at line 141 of file client.h.

Referenced by client_accept(), client_create(), client_newconn(), client_request(), exit_check(), get_client(), get_worker(), and ns_client_replace().

isc_sockaddr_t ns_client::peeraddr

Definition at line 143 of file client.h.

Referenced by client_newconn(), client_request(), client_send(), client_sendpkg(), dns64_aaaaok(), get_worker(), ns_client_checkaclsilent(), ns_client_error(), ns_client_getsockaddr(), ns_client_name(), ns_client_sourceip(), query_dns64(), query_find(), query_prefetch(), query_recurse(), rpz_rewrite(), setup_query_sortlist(), and update_action().

isc_boolean_t ns_client::peeraddr_valid

Definition at line 144 of file client.h.

Referenced by client_create(), client_newconn(), client_request(), client_send(), exit_check(), get_worker(), and ns_client_name().

isc_netaddr_t ns_client::destaddr

Definition at line 145 of file client.h.

Referenced by client_request(), log_query(), and query_validatezonedb().

isc_netaddr_t ns_client::ecs_addr

EDNS client subnet.

Definition at line 147 of file client.h.

Referenced by client_request(), ns_client_addopt(), ns_client_checkaclsilent(), and process_ecs().

isc_uint8_t ns_client::ecs_addrlen

Definition at line 148 of file client.h.

Referenced by client_create(), client_request(), ns_client_addopt(), ns_client_checkaclsilent(), and process_ecs().

isc_uint8_t ns_client::ecs_scope

Definition at line 149 of file client.h.

Referenced by client_create(), client_request(), ns_client_addopt(), and process_ecs().

struct in6_pktinfo ns_client::pktinfo [read]

Definition at line 151 of file client.h.

Referenced by client_request(), and client_sendpkg().

isc_dscp_t ns_client::dscp

Definition at line 152 of file client.h.

Referenced by client_create(), client_request(), client_sendpkg(), get_client(), and get_worker().

isc_event_t ns_client::ctlevent

Definition at line 153 of file client.h.

Referenced by client_create(), get_client(), and get_worker().

isc_sockaddr_t ns_client::addr

Definition at line 164 of file client.h.

Referenced by client_create(), and ns_client_error().

isc_stdtime_t ns_client::time

Definition at line 165 of file client.h.

Referenced by client_create(), and ns_client_error().

dns_messageid_t ns_client::id

Definition at line 166 of file client.h.

Referenced by client_create(), and ns_client_error().

struct { ... } ns_client::formerrcache

Referenced by client_create(), and ns_client_error().

unsigned char ns_client::cookie[8]

Definition at line 172 of file client.h.

isc_uint32_t ns_client::expire

Definition at line 173 of file client.h.

Referenced by ns_client_addopt(), and query_find().


The documentation for this struct was generated from the following file:
Generated on Tue Apr 28 17:41:21 2015 by Doxygen 1.5.4 for BIND9 Internals 9.11.0pre-alpha