SILENT KILLERPanel

Current Path: > > usr > include > bind9 > isc >


Operation   : Linux premium131.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64
Software     : Apache
Server IP    : 162.0.232.56 | Your IP: 216.73.216.111
Domains      : 1034 Domain(s)
Permission   : [ 0755 ]

Files and Folders in: //usr/include/bind9/isc/

NameTypeSizeLast ModifiedActions
aes.h File 1080 bytes February 20 2025 09:05:24.
app.h File 10478 bytes February 20 2025 09:05:24.
assertions.h File 2907 bytes February 20 2025 09:05:24.
atomic.h File 4168 bytes February 20 2025 09:05:24.
backtrace.h File 3891 bytes February 20 2025 09:05:24.
base32.h File 4453 bytes February 20 2025 09:05:24.
base64.h File 2866 bytes February 20 2025 09:05:24.
bind9.h File 830 bytes February 20 2025 09:05:24.
boolean.h File 594 bytes February 20 2025 09:05:24.
buffer.h File 26268 bytes February 20 2025 09:05:24.
bufferlist.h File 1452 bytes February 20 2025 09:05:24.
cmocka.h File 1383 bytes February 20 2025 09:05:24.
commandline.h File 1713 bytes February 20 2025 09:05:24.
condition.h File 1478 bytes February 20 2025 09:05:24.
counter.h File 1926 bytes February 20 2025 09:05:24.
crc64.h File 998 bytes February 20 2025 09:05:24.
deprecated.h File 623 bytes February 20 2025 09:05:24.
dir.h File 1598 bytes February 20 2025 09:05:24.
endian.h File 4778 bytes February 20 2025 09:05:24.
entropy.h File 10373 bytes February 20 2025 09:05:24.
errno.h File 659 bytes February 20 2025 09:05:24.
errno2result.h File 902 bytes February 20 2025 09:05:37.
error.h File 1430 bytes February 20 2025 09:05:24.
event.h File 3053 bytes February 20 2025 09:05:24.
eventclass.h File 1381 bytes February 20 2025 09:05:24.
file.h File 11667 bytes February 20 2025 09:05:24.
formatcheck.h File 893 bytes February 20 2025 09:05:24.
fsaccess.h File 7442 bytes February 20 2025 09:05:24.
hash.h File 7662 bytes February 20 2025 09:05:24.
heap.h File 5264 bytes February 20 2025 09:05:24.
hex.h File 2806 bytes February 20 2025 09:05:24.
hmacmd5.h File 1787 bytes February 20 2025 09:05:24.
hmacsha.h File 4511 bytes February 20 2025 09:05:24.
ht.h File 4396 bytes February 20 2025 09:05:24.
httpd.h File 2318 bytes February 20 2025 09:05:24.
int.h File 1088 bytes February 20 2025 09:05:24.
interfaceiter.h File 3120 bytes February 20 2025 09:05:24.
iterated_hash.h File 1046 bytes February 20 2025 09:05:24.
json.h File 1459 bytes February 20 2025 09:05:24.
keyboard.h File 989 bytes February 20 2025 09:05:24.
lang.h File 637 bytes February 20 2025 09:05:24.
lex.h File 9771 bytes February 20 2025 09:05:24.
lfsr.h File 2958 bytes February 20 2025 09:05:24.
lib.h File 1068 bytes February 20 2025 09:05:24.
likely.h File 818 bytes February 20 2025 09:05:24.
list.h File 5751 bytes February 20 2025 09:05:24.
log.h File 28734 bytes February 20 2025 09:05:24.
magic.h File 994 bytes February 20 2025 09:05:24.
md5.h File 2380 bytes February 20 2025 09:05:24.
mem.h File 21110 bytes February 20 2025 09:05:24.
meminfo.h File 710 bytes February 20 2025 09:05:24.
msgcat.h File 2726 bytes February 20 2025 09:05:24.
msgs.h File 8422 bytes February 20 2025 09:05:24.
mutex.h File 3524 bytes February 20 2025 09:05:24.
mutexblock.h File 1375 bytes February 20 2025 09:05:24.
net.h File 10534 bytes February 20 2025 09:05:24.
netaddr.h File 4590 bytes February 20 2025 09:05:24.
netdb.h File 863 bytes February 20 2025 09:05:24.
netscope.h File 967 bytes February 20 2025 09:05:24.
offset.h File 700 bytes February 20 2025 09:05:24.
once.h File 983 bytes February 20 2025 09:05:24.
ondestroy.h File 2799 bytes February 20 2025 09:05:24.
os.h File 671 bytes February 20 2025 09:05:24.
parseint.h File 1542 bytes February 20 2025 09:05:24.
platform.h File 9717 bytes February 20 2025 09:05:24.
pool.h File 3502 bytes February 20 2025 09:05:24.
portset.h File 3295 bytes February 20 2025 09:05:24.
print.h File 2475 bytes February 20 2025 09:05:24.
queue.h File 5204 bytes February 20 2025 09:05:24.
quota.h File 2440 bytes February 20 2025 09:05:24.
radix.h File 6491 bytes February 20 2025 09:05:24.
random.h File 3582 bytes February 20 2025 09:05:24.
ratelimiter.h File 3497 bytes February 20 2025 09:05:24.
refcount.h File 8193 bytes February 20 2025 09:05:24.
regex.h File 767 bytes February 20 2025 09:05:24.
region.h File 2034 bytes February 20 2025 09:05:24.
resource.h File 2862 bytes February 20 2025 09:05:24.
result.h File 4982 bytes February 20 2025 09:05:24.
resultclass.h File 1599 bytes February 20 2025 09:05:24.
rwlock.h File 3807 bytes February 20 2025 09:05:24.
safe.h File 1352 bytes February 20 2025 09:05:24.
serial.h File 1368 bytes February 20 2025 09:05:24.
sha1.h File 1556 bytes February 20 2025 09:05:24.
sha2.h File 5733 bytes February 20 2025 09:05:24.
siphash.h File 734 bytes February 20 2025 09:05:24.
sockaddr.h File 6039 bytes February 20 2025 09:05:24.
socket.h File 36655 bytes February 20 2025 09:05:24.
stat.h File 806 bytes February 20 2025 09:05:24.
stats.h File 3709 bytes February 20 2025 09:05:24.
stdatomic.h File 5250 bytes February 20 2025 09:05:24.
stdio.h File 1787 bytes February 20 2025 09:05:24.
stdlib.h File 704 bytes February 20 2025 09:05:24.
stdtime.h File 1065 bytes February 20 2025 09:05:24.
strerror.h File 777 bytes February 20 2025 09:05:24.
string.h File 6019 bytes February 20 2025 09:05:24.
symtab.h File 4326 bytes February 20 2025 09:05:24.
syslog.h File 844 bytes February 20 2025 09:05:24.
task.h File 21544 bytes February 20 2025 09:05:24.
taskpool.h File 3709 bytes February 20 2025 09:05:24.
thread.h File 1506 bytes February 20 2025 09:05:24.
time.h File 8876 bytes February 20 2025 09:05:24.
timer.h File 10795 bytes February 20 2025 09:05:24.
tm.h File 895 bytes February 20 2025 09:05:24.
types.h File 5780 bytes February 20 2025 09:05:24.
utf8.h File 928 bytes February 20 2025 09:05:24.
util.h File 10537 bytes February 20 2025 09:05:24.
version.h File 689 bytes February 20 2025 09:05:24.
xml.h File 1094 bytes February 20 2025 09:05:24.

Reading File: //usr/include/bind9/isc//symtab.h

/*
 * 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 ISC_SYMTAB_H
#define ISC_SYMTAB_H 1

/*****
 ***** Module Info
 *****/

/*! \file isc/symtab.h
 * \brief Provides a simple memory-based symbol table.
 *
 * Keys are C strings, and key comparisons are case-insensitive.  A type may
 * be specified when looking up, defining, or undefining.  A type value of
 * 0 means "match any type"; any other value will only match the given
 * type.
 *
 * It's possible that a client will attempt to define a <key, type, value>
 * tuple when a tuple with the given key and type already exists in the table.
 * What to do in this case is specified by the client.  Possible policies are:
 *
 *\li	#isc_symexists_reject	Disallow the define, returning #ISC_R_EXISTS
 *\li	#isc_symexists_replace	Replace the old value with the new.  The
 *				undefine action (if provided) will be called
 *				with the old <key, type, value> tuple.
 *\li	#isc_symexists_add	Add the new tuple, leaving the old tuple in
 *				the table.  Subsequent lookups will retrieve
 *				the most-recently-defined tuple.
 *
 * A lookup of a key using type 0 will return the most-recently defined
 * symbol with that key.  An undefine of a key using type 0 will undefine the
 * most-recently defined symbol with that key.  Trying to define a key with
 * type 0 is illegal.
 *
 * The symbol table library does not make a copy the key field, so the
 * caller must ensure that any key it passes to isc_symtab_define() will not
 * change until it calls isc_symtab_undefine() or isc_symtab_destroy().
 *
 * A user-specified action will be called (if provided) when a symbol is
 * undefined.  It can be used to free memory associated with keys and/or
 * values.
 *
 * A symbol table is implemented as a hash table of lists; the size of the
 * hash table is set by the 'size' parameter to isc_symtbl_create().  When
 * the number of entries in the symbol table reaches three quarters of this
 * value, the hash table is reallocated with size doubled, in order to
 * optimize lookup performance.  This has a negative effect on insertion
 * performance, which can be mitigated by sizing the table appropriately
 * when creating it.
 *
 * \li MP:
 *	The callers of this module must ensure any required synchronization.
 *
 * \li Reliability:
 *	No anticipated impact.
 *
 * \li Resources:
 *	TBS
 *
 * \li Security:
 *	No anticipated impact.
 *
 * \li Standards:
 *	None.
 */

/***
 *** Imports.
 ***/

#include <stdbool.h>

#include <isc/lang.h>
#include <isc/types.h>

/*
 *** Symbol Tables.
 ***/
/*% Symbol table value. */
typedef union isc_symvalue {
	void *				as_pointer;
	const void *			as_cpointer;
	int				as_integer;
	unsigned int			as_uinteger;
} isc_symvalue_t;

typedef void (*isc_symtabaction_t)(char *key, unsigned int type,
				   isc_symvalue_t value, void *userarg);
/*% Symbol table exists. */
typedef enum {
	isc_symexists_reject = 0,	/*%< Disallow the define */
	isc_symexists_replace = 1,	/*%< Replace the old value with the new */
	isc_symexists_add = 2		/*%< Add the new tuple */
} isc_symexists_t;

ISC_LANG_BEGINDECLS

/*% Create a symbol table. */
isc_result_t
isc_symtab_create(isc_mem_t *mctx, unsigned int size,
		  isc_symtabaction_t undefine_action, void *undefine_arg,
		  bool case_sensitive, isc_symtab_t **symtabp);

/*% Destroy a symbol table. */
void
isc_symtab_destroy(isc_symtab_t **symtabp);

/*% Lookup a symbol table. */
isc_result_t
isc_symtab_lookup(isc_symtab_t *symtab, const char *key, unsigned int type,
		  isc_symvalue_t *value);

/*% Define a symbol table. */
isc_result_t
isc_symtab_define(isc_symtab_t *symtab, const char *key, unsigned int type,
		  isc_symvalue_t value, isc_symexists_t exists_policy);

/*% Undefine a symbol table. */
isc_result_t
isc_symtab_undefine(isc_symtab_t *symtab, const char *key, unsigned int type);

/*% Return the number of items in a symbol table. */
unsigned int
isc_symtab_count(isc_symtab_t *symtab);
ISC_LANG_ENDDECLS

#endif /* ISC_SYMTAB_H */

SILENT KILLER Tool