Edit File by line
/home/barbar84/public_h.../wp-conte.../plugins/sujqvwi/ShExBy/shex_roo.../usr/include/bind9/dns
File: ncache.h
/*
[0] Fix | Delete
* Copyright (C) Internet Systems Consortium, Inc. ("ISC")
[1] Fix | Delete
*
[2] Fix | Delete
* This Source Code Form is subject to the terms of the Mozilla Public
[3] Fix | Delete
* License, v. 2.0. If a copy of the MPL was not distributed with this
[4] Fix | Delete
* file, you can obtain one at https://mozilla.org/MPL/2.0/.
[5] Fix | Delete
*
[6] Fix | Delete
* See the COPYRIGHT file distributed with this work for additional
[7] Fix | Delete
* information regarding copyright ownership.
[8] Fix | Delete
*/
[9] Fix | Delete
[10] Fix | Delete
[11] Fix | Delete
#ifndef DNS_NCACHE_H
[12] Fix | Delete
#define DNS_NCACHE_H 1
[13] Fix | Delete
[14] Fix | Delete
/*****
[15] Fix | Delete
***** Module Info
[16] Fix | Delete
*****/
[17] Fix | Delete
[18] Fix | Delete
/*! \file dns/ncache.h
[19] Fix | Delete
*\brief
[20] Fix | Delete
* DNS Ncache
[21] Fix | Delete
*
[22] Fix | Delete
* XXX TBS XXX
[23] Fix | Delete
*
[24] Fix | Delete
* MP:
[25] Fix | Delete
*\li The caller must ensure any required synchronization.
[26] Fix | Delete
*
[27] Fix | Delete
* Reliability:
[28] Fix | Delete
*\li No anticipated impact.
[29] Fix | Delete
*
[30] Fix | Delete
* Resources:
[31] Fix | Delete
*\li TBS
[32] Fix | Delete
*
[33] Fix | Delete
* Security:
[34] Fix | Delete
*\li No anticipated impact.
[35] Fix | Delete
*
[36] Fix | Delete
* Standards:
[37] Fix | Delete
*\li RFC2308
[38] Fix | Delete
*/
[39] Fix | Delete
[40] Fix | Delete
#include <stdbool.h>
[41] Fix | Delete
[42] Fix | Delete
#include <isc/lang.h>
[43] Fix | Delete
#include <isc/stdtime.h>
[44] Fix | Delete
[45] Fix | Delete
#include <dns/types.h>
[46] Fix | Delete
[47] Fix | Delete
ISC_LANG_BEGINDECLS
[48] Fix | Delete
[49] Fix | Delete
/*%
[50] Fix | Delete
* _OMITDNSSEC:
[51] Fix | Delete
* Omit DNSSEC records when rendering.
[52] Fix | Delete
*/
[53] Fix | Delete
#define DNS_NCACHETOWIRE_OMITDNSSEC 0x0001
[54] Fix | Delete
[55] Fix | Delete
isc_result_t
[56] Fix | Delete
dns_ncache_add(dns_message_t *message, dns_db_t *cache, dns_dbnode_t *node,
[57] Fix | Delete
dns_rdatatype_t covers, isc_stdtime_t now, dns_ttl_t maxttl,
[58] Fix | Delete
dns_rdataset_t *addedrdataset);
[59] Fix | Delete
isc_result_t
[60] Fix | Delete
dns_ncache_addoptout(dns_message_t *message, dns_db_t *cache,
[61] Fix | Delete
dns_dbnode_t *node, dns_rdatatype_t covers,
[62] Fix | Delete
isc_stdtime_t now, dns_ttl_t maxttl,
[63] Fix | Delete
bool optout, dns_rdataset_t *addedrdataset);
[64] Fix | Delete
/*%<
[65] Fix | Delete
* Convert the authority data from 'message' into a negative cache
[66] Fix | Delete
* rdataset, and store it in 'cache' at 'node' with a TTL limited to
[67] Fix | Delete
* 'maxttl'.
[68] Fix | Delete
*
[69] Fix | Delete
* \li dns_ncache_add produces a negative cache entry with a trust of no
[70] Fix | Delete
* more than answer
[71] Fix | Delete
* \li dns_ncache_addoptout produces a negative cache entry which will have
[72] Fix | Delete
* a trust of secure if all the records that make up the entry are secure.
[73] Fix | Delete
*
[74] Fix | Delete
* The 'covers' argument is the RR type whose nonexistence we are caching,
[75] Fix | Delete
* or dns_rdatatype_any when caching a NXDOMAIN response.
[76] Fix | Delete
*
[77] Fix | Delete
* 'optout' indicates a DNS_RDATASETATTR_OPTOUT should be set.
[78] Fix | Delete
*
[79] Fix | Delete
* Note:
[80] Fix | Delete
*\li If 'addedrdataset' is not NULL, then it will be attached to the added
[81] Fix | Delete
* rdataset. See dns_db_addrdataset() for more details.
[82] Fix | Delete
*
[83] Fix | Delete
* Requires:
[84] Fix | Delete
*\li 'message' is a valid message with a properly formatting negative cache
[85] Fix | Delete
* authority section.
[86] Fix | Delete
*
[87] Fix | Delete
*\li The requirements of dns_db_addrdataset() apply to 'cache', 'node',
[88] Fix | Delete
* 'now', and 'addedrdataset'.
[89] Fix | Delete
*
[90] Fix | Delete
* Returns:
[91] Fix | Delete
*\li #ISC_R_SUCCESS
[92] Fix | Delete
*\li #ISC_R_NOSPACE
[93] Fix | Delete
*
[94] Fix | Delete
*\li Any result code of dns_db_addrdataset() is a possible result code
[95] Fix | Delete
* of dns_ncache_add().
[96] Fix | Delete
*/
[97] Fix | Delete
[98] Fix | Delete
isc_result_t
[99] Fix | Delete
dns_ncache_towire(dns_rdataset_t *rdataset, dns_compress_t *cctx,
[100] Fix | Delete
isc_buffer_t *target, unsigned int options,
[101] Fix | Delete
unsigned int *countp);
[102] Fix | Delete
/*%<
[103] Fix | Delete
* Convert the negative caching rdataset 'rdataset' to wire format,
[104] Fix | Delete
* compressing names as specified in 'cctx', and storing the result in
[105] Fix | Delete
* 'target'. If 'omit_dnssec' is set, DNSSEC records will not
[106] Fix | Delete
* be added to 'target'.
[107] Fix | Delete
*
[108] Fix | Delete
* Notes:
[109] Fix | Delete
*\li The number of RRs added to target will be added to *countp.
[110] Fix | Delete
*
[111] Fix | Delete
* Requires:
[112] Fix | Delete
*\li 'rdataset' is a valid negative caching rdataset.
[113] Fix | Delete
*
[114] Fix | Delete
*\li 'rdataset' is not empty.
[115] Fix | Delete
*
[116] Fix | Delete
*\li 'countp' is a valid pointer.
[117] Fix | Delete
*
[118] Fix | Delete
* Ensures:
[119] Fix | Delete
*\li On a return of ISC_R_SUCCESS, 'target' contains a wire format
[120] Fix | Delete
* for the data contained in 'rdataset'. Any error return leaves
[121] Fix | Delete
* the buffer unchanged.
[122] Fix | Delete
*
[123] Fix | Delete
*\li *countp has been incremented by the number of RRs added to
[124] Fix | Delete
* target.
[125] Fix | Delete
*
[126] Fix | Delete
* Returns:
[127] Fix | Delete
*\li #ISC_R_SUCCESS - all ok
[128] Fix | Delete
*\li #ISC_R_NOSPACE - 'target' doesn't have enough room
[129] Fix | Delete
*
[130] Fix | Delete
*\li Any error returned by dns_rdata_towire(), dns_rdataset_next(),
[131] Fix | Delete
* dns_name_towire().
[132] Fix | Delete
*/
[133] Fix | Delete
[134] Fix | Delete
isc_result_t
[135] Fix | Delete
dns_ncache_getrdataset(dns_rdataset_t *ncacherdataset, dns_name_t *name,
[136] Fix | Delete
dns_rdatatype_t type, dns_rdataset_t *rdataset);
[137] Fix | Delete
/*%<
[138] Fix | Delete
* Search the negative caching rdataset for an rdataset with the
[139] Fix | Delete
* specified name and type.
[140] Fix | Delete
*
[141] Fix | Delete
* Requires:
[142] Fix | Delete
*\li 'ncacherdataset' is a valid negative caching rdataset.
[143] Fix | Delete
*
[144] Fix | Delete
*\li 'ncacherdataset' is not empty.
[145] Fix | Delete
*
[146] Fix | Delete
*\li 'name' is a valid name.
[147] Fix | Delete
*
[148] Fix | Delete
*\li 'type' is not SIG, or a meta-RR type.
[149] Fix | Delete
*
[150] Fix | Delete
*\li 'rdataset' is a valid disassociated rdataset.
[151] Fix | Delete
*
[152] Fix | Delete
* Ensures:
[153] Fix | Delete
*\li On a return of ISC_R_SUCCESS, 'rdataset' is bound to the found
[154] Fix | Delete
* rdataset.
[155] Fix | Delete
*
[156] Fix | Delete
* Returns:
[157] Fix | Delete
*\li #ISC_R_SUCCESS - the rdataset was found.
[158] Fix | Delete
*\li #ISC_R_NOTFOUND - the rdataset was not found.
[159] Fix | Delete
*
[160] Fix | Delete
*/
[161] Fix | Delete
[162] Fix | Delete
isc_result_t
[163] Fix | Delete
dns_ncache_getsigrdataset(dns_rdataset_t *ncacherdataset, dns_name_t *name,
[164] Fix | Delete
dns_rdatatype_t covers, dns_rdataset_t *rdataset);
[165] Fix | Delete
/*%<
[166] Fix | Delete
* Similar to dns_ncache_getrdataset() but get the rrsig that matches.
[167] Fix | Delete
*/
[168] Fix | Delete
[169] Fix | Delete
void
[170] Fix | Delete
dns_ncache_current(dns_rdataset_t *ncacherdataset, dns_name_t *found,
[171] Fix | Delete
dns_rdataset_t *rdataset);
[172] Fix | Delete
[173] Fix | Delete
/*%<
[174] Fix | Delete
* Extract the current rdataset and name from a ncache entry.
[175] Fix | Delete
*
[176] Fix | Delete
* Requires:
[177] Fix | Delete
* \li 'ncacherdataset' to be valid and to be a negative cache entry
[178] Fix | Delete
* \li 'found' to be valid.
[179] Fix | Delete
* \li 'rdataset' to be unassociated.
[180] Fix | Delete
*/
[181] Fix | Delete
[182] Fix | Delete
ISC_LANG_ENDDECLS
[183] Fix | Delete
[184] Fix | Delete
#endif /* DNS_NCACHE_H */
[185] Fix | Delete
[186] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function