Current Path: > > usr > > > include > bind9 > dns
Operation : Linux premium88.web-hosting.com 4.18.0-553.54.1.lve.el8.x86_64 #1 SMP Wed Jun 4 13:01:13 UTC 2025 x86_64 Software : Apache Server IP : 185.61.154.216 | Your IP: 216.73.216.44 Domains : 1034 Domain(s) Permission : [ 0755 ]
Name | Type | Size | Last Modified | Actions |
---|---|---|---|---|
acache.h | File | 14232 bytes | February 20 2025 09:05:25. | |
acl.h | File | 7242 bytes | February 20 2025 09:05:25. | |
adb.h | File | 22595 bytes | February 20 2025 09:05:25. | |
badcache.h | File | 3369 bytes | February 20 2025 09:05:25. | |
bit.h | File | 807 bytes | February 20 2025 09:05:25. | |
byaddr.h | File | 4002 bytes | February 20 2025 09:05:25. | |
cache.h | File | 8643 bytes | February 20 2025 09:05:25. | |
callbacks.h | File | 2271 bytes | February 20 2025 09:05:25. | |
catz.h | File | 11833 bytes | February 20 2025 09:05:25. | |
cert.h | File | 1466 bytes | February 20 2025 09:05:25. | |
client.h | File | 22042 bytes | February 20 2025 09:05:25. | |
clientinfo.h | File | 2006 bytes | February 20 2025 09:05:25. | |
compress.h | File | 6646 bytes | February 20 2025 09:05:25. | |
db.h | File | 46567 bytes | February 20 2025 09:05:25. | |
dbiterator.h | File | 7422 bytes | February 20 2025 09:05:25. | |
dbtable.h | File | 3165 bytes | February 20 2025 09:05:25. | |
diff.h | File | 6980 bytes | February 20 2025 09:05:25. | |
dispatch.h | File | 16427 bytes | February 20 2025 09:05:25. | |
dlz.h | File | 10618 bytes | February 20 2025 09:05:25. | |
dlz_dlopen.h | File | 4677 bytes | February 20 2025 09:05:25. | |
dns64.h | File | 5635 bytes | February 20 2025 09:05:25. | |
dnssec.h | File | 12115 bytes | February 20 2025 09:05:25. | |
dnstap.h | File | 9364 bytes | February 20 2025 09:05:25. | |
ds.h | File | 1225 bytes | February 20 2025 09:05:25. | |
dsdigest.h | File | 1722 bytes | February 20 2025 09:05:25. | |
dyndb.h | File | 4835 bytes | February 20 2025 09:05:25. | |
ecdb.h | File | 809 bytes | February 20 2025 09:05:25. | |
edns.h | File | 722 bytes | February 20 2025 09:05:25. | |
enumclass.h | File | 1220 bytes | February 20 2025 09:05:25. | |
enumtype.h | File | 8300 bytes | February 20 2025 09:05:25. | |
events.h | File | 4059 bytes | February 20 2025 09:05:25. | |
fixedname.h | File | 1663 bytes | February 20 2025 09:05:25. | |
forward.h | File | 3452 bytes | February 20 2025 09:05:25. | |
geoip.h | File | 2792 bytes | February 20 2025 09:05:25. | |
ipkeylist.h | File | 2186 bytes | February 20 2025 09:05:25. | |
iptable.h | File | 1621 bytes | February 20 2025 09:05:25. | |
journal.h | File | 8227 bytes | February 20 2025 09:05:25. | |
keydata.h | File | 1059 bytes | February 20 2025 09:05:25. | |
keyflags.h | File | 1278 bytes | February 20 2025 09:05:25. | |
keytable.h | File | 9462 bytes | February 20 2025 09:05:25. | |
keyvalues.h | File | 4159 bytes | February 20 2025 09:05:25. | |
lib.h | File | 1192 bytes | February 20 2025 09:05:25. | |
log.h | File | 3964 bytes | February 20 2025 09:05:25. | |
lookup.h | File | 2924 bytes | February 20 2025 09:05:25. | |
master.h | File | 11289 bytes | February 20 2025 09:05:25. | |
masterdump.h | File | 12647 bytes | February 20 2025 09:05:25. | |
message.h | File | 38832 bytes | February 20 2025 09:05:25. | |
name.h | File | 37115 bytes | February 20 2025 09:05:25. | |
ncache.h | File | 4929 bytes | February 20 2025 09:05:25. | |
nsec.h | File | 2928 bytes | February 20 2025 09:05:25. | |
nsec3.h | File | 8032 bytes | February 20 2025 09:05:25. | |
nta.h | File | 4548 bytes | February 20 2025 09:05:25. | |
opcode.h | File | 1007 bytes | February 20 2025 09:05:25. | |
order.h | File | 1999 bytes | February 20 2025 09:05:25. | |
peer.h | File | 5966 bytes | February 20 2025 09:05:25. | |
portlist.h | File | 2101 bytes | February 20 2025 09:05:25. | |
private.h | File | 1935 bytes | February 20 2025 09:05:25. | |
rbt.h | File | 40618 bytes | February 20 2025 09:05:25. | |
rcode.h | File | 2481 bytes | February 20 2025 09:05:25. | |
rdata.h | File | 21613 bytes | February 20 2025 09:05:25. | |
rdataclass.h | File | 2257 bytes | February 20 2025 09:05:25. | |
rdatalist.h | File | 2569 bytes | February 20 2025 09:05:25. | |
rdataset.h | File | 21536 bytes | February 20 2025 09:05:25. | |
rdatasetiter.h | File | 3926 bytes | February 20 2025 09:05:25. | |
rdataslab.h | File | 4384 bytes | February 20 2025 09:05:25. | |
rdatastruct.h | File | 61584 bytes | February 20 2025 09:05:25. | |
rdatatype.h | File | 2298 bytes | February 20 2025 09:05:25. | |
request.h | File | 11156 bytes | February 20 2025 09:05:25. | |
resolver.h | File | 20227 bytes | February 20 2025 09:05:25. | |
result.h | File | 9284 bytes | February 20 2025 09:05:25. | |
rootns.h | File | 892 bytes | February 20 2025 09:05:25. | |
rpz.h | File | 10335 bytes | February 20 2025 09:05:25. | |
rriterator.h | File | 4230 bytes | February 20 2025 09:05:25. | |
rrl.h | File | 6640 bytes | February 20 2025 09:05:25. | |
sdb.h | File | 7224 bytes | February 20 2025 09:05:25. | |
sdlz.h | File | 14214 bytes | February 20 2025 09:05:25. | |
secalg.h | File | 1706 bytes | February 20 2025 09:05:25. | |
secproto.h | File | 1557 bytes | February 20 2025 09:05:25. | |
soa.h | File | 2186 bytes | February 20 2025 09:05:25. | |
ssu.h | File | 8308 bytes | February 20 2025 09:05:25. | |
stats.h | File | 13451 bytes | February 20 2025 09:05:25. | |
tcpmsg.h | File | 3145 bytes | February 20 2025 09:05:25. | |
time.h | File | 1695 bytes | February 20 2025 09:05:25. | |
timer.h | File | 1051 bytes | February 20 2025 09:05:25. | |
tkey.h | File | 7631 bytes | February 20 2025 09:05:25. | |
tsec.h | File | 2949 bytes | February 20 2025 09:05:25. | |
tsig.h | File | 8384 bytes | February 20 2025 09:05:25. | |
ttl.h | File | 1945 bytes | February 20 2025 09:05:25. | |
types.h | File | 14158 bytes | February 20 2025 09:05:25. | |
update.h | File | 1653 bytes | February 20 2025 09:05:25. | |
validator.h | File | 7161 bytes | February 20 2025 09:05:25. | |
version.h | File | 868 bytes | February 20 2025 09:05:25. | |
view.h | File | 35274 bytes | February 20 2025 09:05:25. | |
xfrin.h | File | 2924 bytes | February 20 2025 09:05:25. | |
zone.h | File | 60864 bytes | February 20 2025 09:05:25. | |
zonekey.h | File | 777 bytes | February 20 2025 09:05:25. | |
zt.h | File | 5562 bytes | February 20 2025 09:05:25. |
/* * Copyright (C) Internet Systems Consortium, Inc. ("ISC") * * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, you can obtain one at https://mozilla.org/MPL/2.0/. * * See the COPYRIGHT file distributed with this work for additional * information regarding copyright ownership. */ #ifndef DNS_REQUEST_H #define DNS_REQUEST_H 1 /***** ***** Module Info *****/ /*! \file dns/request.h * * \brief * The request module provides simple request/response services useful for * sending SOA queries, DNS Notify messages, and dynamic update requests. * * MP: *\li The module ensures appropriate synchronization of data structures it * creates and manipulates. * * Resources: *\li TBS * * Security: *\li No anticipated impact. */ #include <stdbool.h> #include <isc/lang.h> #include <isc/event.h> #include <dns/types.h> #define DNS_REQUESTOPT_TCP 0x00000001U #define DNS_REQUESTOPT_CASE 0x00000002U #define DNS_REQUESTOPT_FIXEDID 0x00000004U #define DNS_REQUESTOPT_SHARE 0x00000008U typedef struct dns_requestevent { ISC_EVENT_COMMON(struct dns_requestevent); isc_result_t result; dns_request_t *request; } dns_requestevent_t; ISC_LANG_BEGINDECLS isc_result_t dns_requestmgr_create(isc_mem_t *mctx, isc_timermgr_t *timermgr, isc_socketmgr_t *socketmgr, isc_taskmgr_t *taskmgr, dns_dispatchmgr_t *dispatchmgr, dns_dispatch_t *dispatchv4, dns_dispatch_t *dispatchv6, dns_requestmgr_t **requestmgrp); /*%< * Create a request manager. * * Requires: * *\li 'mctx' is a valid memory context. * *\li 'timermgr' is a valid timer manager. * *\li 'socketmgr' is a valid socket manager. * *\li 'taskmgr' is a valid task manager. * *\li 'dispatchv4' is a valid dispatcher with an IPv4 UDP socket, or is NULL. * *\li 'dispatchv6' is a valid dispatcher with an IPv6 UDP socket, or is NULL. * *\li requestmgrp != NULL && *requestmgrp == NULL * * Ensures: * *\li On success, *requestmgrp is a valid request manager. * * Returns: * *\li ISC_R_SUCCESS * *\li Any other result indicates failure. */ void dns_requestmgr_whenshutdown(dns_requestmgr_t *requestmgr, isc_task_t *task, isc_event_t **eventp); /*%< * Send '*eventp' to 'task' when 'requestmgr' has completed shutdown. * * Notes: * *\li It is not safe to detach the last reference to 'requestmgr' until * shutdown is complete. * * Requires: * *\li 'requestmgr' is a valid request manager. * *\li 'task' is a valid task. * *\li *eventp is a valid event. * * Ensures: * *\li *eventp == NULL. */ void dns_requestmgr_shutdown(dns_requestmgr_t *requestmgr); /*%< * Start the shutdown process for 'requestmgr'. * * Notes: * *\li This call has no effect if the request manager is already shutting * down. * * Requires: * *\li 'requestmgr' is a valid requestmgr. */ void dns_requestmgr_attach(dns_requestmgr_t *source, dns_requestmgr_t **targetp); /*%< * Attach to the request manager. dns_requestmgr_shutdown() must not * have been called on 'source' prior to calling dns_requestmgr_attach(). * * Requires: * *\li 'source' is a valid requestmgr. * *\li 'targetp' to be non NULL and '*targetp' to be NULL. */ void dns_requestmgr_detach(dns_requestmgr_t **requestmgrp); /*%< * Detach from the given requestmgr. If this is the final detach * requestmgr will be destroyed. dns_requestmgr_shutdown() must * be called before the final detach. * * Requires: * *\li '*requestmgrp' is a valid requestmgr. * * Ensures: *\li '*requestmgrp' is NULL. */ isc_result_t dns_request_create(dns_requestmgr_t *requestmgr, dns_message_t *message, isc_sockaddr_t *address, unsigned int options, dns_tsigkey_t *key, unsigned int timeout, isc_task_t *task, isc_taskaction_t action, void *arg, dns_request_t **requestp); /*%< * Create and send a request. * * Notes: * *\li 'message' will be rendered and sent to 'address'. If the * #DNS_REQUESTOPT_TCP option is set, TCP will be used, * #DNS_REQUESTOPT_SHARE option is set too, connecting TCP * (vs. connected) will be shared too. The request * will timeout after 'timeout' seconds. * *\li If the #DNS_REQUESTOPT_CASE option is set, use case sensitive * compression. * *\li When the request completes, successfully, due to a timeout, or * because it was canceled, a completion event will be sent to 'task'. * * Requires: * *\li 'message' is a valid DNS message. * *\li 'address' is a valid sockaddr. * *\li 'timeout' > 0 * *\li 'task' is a valid task. * *\li requestp != NULL && *requestp == NULL */ /*% See dns_request_createvia4() */ isc_result_t dns_request_createvia(dns_requestmgr_t *requestmgr, dns_message_t *message, isc_sockaddr_t *srcaddr, isc_sockaddr_t *destaddr, unsigned int options, dns_tsigkey_t *key, unsigned int timeout, isc_task_t *task, isc_taskaction_t action, void *arg, dns_request_t **requestp); /*% See dns_request_createvia4() */ isc_result_t dns_request_createvia2(dns_requestmgr_t *requestmgr, dns_message_t *message, isc_sockaddr_t *srcaddr, isc_sockaddr_t *destaddr, unsigned int options, dns_tsigkey_t *key, unsigned int timeout, unsigned int udptimeout, isc_task_t *task, isc_taskaction_t action, void *arg, dns_request_t **requestp); /*% See dns_request_createvia4() */ isc_result_t dns_request_createvia3(dns_requestmgr_t *requestmgr, dns_message_t *message, isc_sockaddr_t *srcaddr, isc_sockaddr_t *destaddr, unsigned int options, dns_tsigkey_t *key, unsigned int timeout, unsigned int udptimeout, unsigned int udpretries, isc_task_t *task, isc_taskaction_t action, void *arg, dns_request_t **requestp); isc_result_t dns_request_createvia4(dns_requestmgr_t *requestmgr, dns_message_t *message, isc_sockaddr_t *srcaddr, isc_sockaddr_t *destaddr, isc_dscp_t dscp, unsigned int options, dns_tsigkey_t *key, unsigned int timeout, unsigned int udptimeout, unsigned int udpretries, isc_task_t *task, isc_taskaction_t action, void *arg, dns_request_t **requestp); /*%< * Create and send a request. * * Notes: * *\li 'message' will be rendered and sent to 'address'. If the * #DNS_REQUESTOPT_TCP option is set, TCP will be used, * #DNS_REQUESTOPT_SHARE option is set too, connecting TCP * (vs. connected) will be shared too. The request * will timeout after 'timeout' seconds. UDP requests will be resent * at 'udptimeout' intervals if non-zero or 'udpretries' is non-zero. * *\li If the #DNS_REQUESTOPT_CASE option is set, use case sensitive * compression. * *\li When the request completes, successfully, due to a timeout, or * because it was canceled, a completion event will be sent to 'task'. * * Requires: * *\li 'message' is a valid DNS message. * *\li 'dstaddr' is a valid sockaddr. * *\li 'srcaddr' is a valid sockaddr or NULL. * *\li 'srcaddr' and 'dstaddr' are the same protocol family. * *\li 'timeout' > 0 * *\li 'task' is a valid task. * *\li requestp != NULL && *requestp == NULL */ /*% See dns_request_createraw4() */ isc_result_t dns_request_createraw(dns_requestmgr_t *requestmgr, isc_buffer_t *msgbuf, isc_sockaddr_t *srcaddr, isc_sockaddr_t *destaddr, unsigned int options, unsigned int timeout, isc_task_t *task, isc_taskaction_t action, void *arg, dns_request_t **requestp); /*% See dns_request_createraw4() */ isc_result_t dns_request_createraw2(dns_requestmgr_t *requestmgr, isc_buffer_t *msgbuf, isc_sockaddr_t *srcaddr, isc_sockaddr_t *destaddr, unsigned int options, unsigned int timeout, unsigned int udptimeout, isc_task_t *task, isc_taskaction_t action, void *arg, dns_request_t **requestp); /*% See dns_request_createraw4() */ isc_result_t dns_request_createraw3(dns_requestmgr_t *requestmgr, isc_buffer_t *msgbuf, isc_sockaddr_t *srcaddr, isc_sockaddr_t *destaddr, unsigned int options, unsigned int timeout, unsigned int udptimeout, unsigned int udpretries, isc_task_t *task, isc_taskaction_t action, void *arg, dns_request_t **requestp); isc_result_t dns_request_createraw4(dns_requestmgr_t *requestmgr, isc_buffer_t *msgbuf, isc_sockaddr_t *srcaddr, isc_sockaddr_t *destaddr, isc_dscp_t dscp, unsigned int options, unsigned int timeout, unsigned int udptimeout, unsigned int udpretries, isc_task_t *task, isc_taskaction_t action, void *arg, dns_request_t **requestp); /*!< * \brief Create and send a request. * * Notes: * *\li 'msgbuf' will be sent to 'destaddr' after setting the id. If the * #DNS_REQUESTOPT_TCP option is set, TCP will be used, * #DNS_REQUESTOPT_SHARE option is set too, connecting TCP * (vs. connected) will be shared too. The request * will timeout after 'timeout' seconds. UDP requests will be resent * at 'udptimeout' intervals if non-zero or if 'udpretries' is not zero. * *\li When the request completes, successfully, due to a timeout, or * because it was canceled, a completion event will be sent to 'task'. * * Requires: * *\li 'msgbuf' is a valid DNS message in compressed wire format. * *\li 'destaddr' is a valid sockaddr. * *\li 'srcaddr' is a valid sockaddr or NULL. * *\li 'srcaddr' and 'dstaddr' are the same protocol family. * *\li 'timeout' > 0 * *\li 'task' is a valid task. * *\li requestp != NULL && *requestp == NULL */ void dns_request_cancel(dns_request_t *request); /*%< * Cancel 'request'. * * Requires: * *\li 'request' is a valid request. * * Ensures: * *\li If the completion event for 'request' has not yet been sent, it * will be sent, and the result code will be ISC_R_CANCELED. */ isc_result_t dns_request_getresponse(dns_request_t *request, dns_message_t *message, unsigned int options); /*%< * Get the response to 'request' by filling in 'message'. * * 'options' is passed to dns_message_parse(). See dns_message_parse() * for more details. * * Requires: * *\li 'request' is a valid request for which the caller has received the * completion event. * *\li The result code of the completion event was #ISC_R_SUCCESS. * * Returns: * *\li ISC_R_SUCCESS * *\li Any result that dns_message_parse() can return. */ bool dns_request_usedtcp(dns_request_t *request); /*%< * Return whether this query used TCP or not. Setting #DNS_REQUESTOPT_TCP * in the call to dns_request_create() will cause the function to return * #true, otherwise the result is based on the query message size. * * Requires: *\li 'request' is a valid request. * * Returns: *\li true if TCP was used. *\li false if UDP was used. */ void dns_request_destroy(dns_request_t **requestp); /*%< * Destroy 'request'. * * Requires: * *\li 'request' is a valid request for which the caller has received the * completion event. * * Ensures: * *\li *requestp == NULL */ ISC_LANG_ENDDECLS #endif /* DNS_REQUEST_H */
SILENT KILLER Tool