PHP 7.4.33
Preview: byaddr.h Size: 3.91 KB
/home/godevadmin/public_html/upload_images/home/000~ROOT~000/usr/include/bind9/dns/byaddr.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 DNS_BYADDR_H
#define DNS_BYADDR_H 1

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

/*! \file dns/byaddr.h
 * \brief
 * The byaddr module provides reverse lookup services for IPv4 and IPv6
 * addresses.
 *
 * MP:
 *\li	The module ensures appropriate synchronization of data structures it
 *	creates and manipulates.
 *
 * Reliability:
 *\li	No anticipated impact.
 *
 * Resources:
 *\li	TBS
 *
 * Security:
 *\li	No anticipated impact.
 *
 * Standards:
 *\li	RFCs:	1034, 1035, 2181, TBS
 *\li	Drafts:	TBS
 */

#include <stdbool.h>

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

#include <dns/types.h>

ISC_LANG_BEGINDECLS

/*%
 * A 'dns_byaddrevent_t' is returned when a byaddr completes.
 * The sender field will be set to the byaddr that completed.  If 'result'
 * is ISC_R_SUCCESS, then 'names' will contain a list of names associated
 * with the address.  The recipient of the event must not change the list
 * and must not refer to any of the name data after the event is freed.
 */
typedef struct dns_byaddrevent {
	ISC_EVENT_COMMON(struct dns_byaddrevent);
	isc_result_t			result;
	dns_namelist_t			names;
} dns_byaddrevent_t;

/*
 * This option is deprecated since we now only consider nibbles.
#define DNS_BYADDROPT_IPV6NIBBLE	0x0001
 */
/*% Note DNS_BYADDROPT_IPV6NIBBLE is now deprecated. */
#define DNS_BYADDROPT_IPV6INT		0x0002

isc_result_t
dns_byaddr_create(isc_mem_t *mctx, isc_netaddr_t *address, dns_view_t *view,
		  unsigned int options, isc_task_t *task,
		  isc_taskaction_t action, void *arg, dns_byaddr_t **byaddrp);
/*%<
 * Find the domain name of 'address'.
 *
 * Notes:
 *
 *\li	There is a reverse lookup format for IPv6 addresses, 'nibble'
 *
 *\li	The 'nibble' format for that address is
 *
 * \code
 *   1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.8.e.f.ip6.arpa.
 * \endcode
 *
 *\li	#DNS_BYADDROPT_IPV6INT can be used to get nibble lookups under ip6.int.
 *
 * Requires:
 *
 *\li	'mctx' is a valid mctx.
 *
 *\li	'address' is a valid IPv4 or IPv6 address.
 *
 *\li	'view' is a valid view which has a resolver.
 *
 *\li	'task' is a valid task.
 *
 *\li	byaddrp != NULL && *byaddrp == NULL
 *
 * Returns:
 *
 *\li	#ISC_R_SUCCESS
 *\li	#ISC_R_NOMEMORY
 *
 *\li	Any resolver-related error (e.g. #ISC_R_SHUTTINGDOWN) may also be
 *	returned.
 */

void
dns_byaddr_cancel(dns_byaddr_t *byaddr);
/*%<
 * Cancel 'byaddr'.
 *
 * Notes:
 *
 *\li	If 'byaddr' has not completed, post its #DNS_EVENT_BYADDRDONE
 *	event with a result code of #ISC_R_CANCELED.
 *
 * Requires:
 *
 *\li	'byaddr' is a valid byaddr.
 */

void
dns_byaddr_destroy(dns_byaddr_t **byaddrp);
/*%<
 * Destroy 'byaddr'.
 *
 * Requires:
 *
 *\li	'*byaddrp' is a valid byaddr.
 *
 *\li	The caller has received the #DNS_EVENT_BYADDRDONE event (either because
 *	the byaddr completed or because dns_byaddr_cancel() was called).
 *
 * Ensures:
 *
 *\li	*byaddrp == NULL.
 */

isc_result_t
dns_byaddr_createptrname(isc_netaddr_t *address, bool nibble,
			 dns_name_t *name);

isc_result_t
dns_byaddr_createptrname2(isc_netaddr_t *address, unsigned int options,
			  dns_name_t *name);
/*%<
 * Creates a name that would be used in a PTR query for this address.  The
 * nibble flag indicates that the 'nibble' format is to be used if an IPv6
 * address is provided, instead of the 'bitstring' format.  Since we dropped
 * the support of the bitstring labels, it is expected that the flag is always
 * set.  'options' are the same as for dns_byaddr_create().
 *
 * Requires:
 *
 * \li	'address' is a valid address.
 * \li	'name' is a valid name with a dedicated buffer.
 */

ISC_LANG_ENDDECLS

#endif /* DNS_BYADDR_H */

Directory Contents

Dirs: 0 × Files: 97

Name Size Perms Modified Actions
13.90 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
7.07 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
22.07 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
3.29 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
807 B lrw-r--r-- 2025-02-20 09:05:25
Edit Download
3.91 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
8.44 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
2.22 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
11.56 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
1.43 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
21.53 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
1.96 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
6.49 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
45.48 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
7.25 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
3.09 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
6.82 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
16.04 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
10.37 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
4.57 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
5.50 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
11.83 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
9.14 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
1.20 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
1.68 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
4.72 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
809 B lrw-r--r-- 2025-02-20 09:05:25
Edit Download
722 B lrw-r--r-- 2025-02-20 09:05:25
Edit Download
1.19 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
8.11 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
3.96 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
1.62 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
3.37 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
2.73 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
2.13 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
1.58 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
8.03 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
1.03 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
1.25 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
9.24 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
4.06 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
1.16 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
3.87 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
2.86 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
11.02 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
12.35 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
37.92 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
36.25 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
4.81 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
2.86 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
7.84 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
4.44 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
1007 B lrw-r--r-- 2025-02-20 09:05:25
Edit Download
1.95 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
5.83 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
2.05 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
1.89 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
39.67 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
2.42 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
21.11 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
2.20 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
2.51 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
21.03 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
3.83 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
4.28 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
60.14 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
2.24 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
10.89 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
19.75 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
9.07 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
892 B lrw-r--r-- 2025-02-20 09:05:25
Edit Download
10.09 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
4.13 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
6.48 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
7.05 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
13.88 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
1.67 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
1.52 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
2.13 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
8.11 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
13.14 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
3.07 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
1.66 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
1.03 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
7.45 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
2.88 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
8.19 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
1.90 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
13.83 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
1.61 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
6.99 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
868 B lrw-r--r-- 2025-02-20 09:05:25
Edit Download
34.45 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
2.86 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
59.44 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download
777 B lrw-r--r-- 2025-02-20 09:05:25
Edit Download
5.43 KB lrw-r--r-- 2025-02-20 09:05:25
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).