ISC DHCP  4.4.1
A reference DHCPv4 and DHCPv6 implementation
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
ns_name.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2004-2017 by Internet Systems Consortium, Inc. ("ISC")
3  * Copyright (c) 2001-2003 by Internet Software Consortium
4  *
5  * This Source Code Form is subject to the terms of the Mozilla Public
6  * License, v. 2.0. If a copy of the MPL was not distributed with this
7  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8  *
9  * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES
10  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR
12  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
15  * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16  *
17  * Internet Systems Consortium, Inc.
18  * 950 Charter Street
19  * Redwood City, CA 94063
20  * <info@isc.org>
21  * http://www.isc.org/
22  */
23 #ifndef NS_NAME_H
24 #define NS_NAME_H
25 
26 #include "cdefs.h"
27 #include "osdep.h"
28 
29 /*
30  * Based on the Dynamic DNS reference implementation by Viraj Bais
31  * <viraj_bais@ccm.fm.intel.com>
32  */
33 
34 int MRns_name_compress(const char *, u_char *, size_t, const unsigned char **,
35  const unsigned char **);
36 int MRns_name_unpack(const unsigned char *, const unsigned char *,
37  const unsigned char *, unsigned char *, size_t);
38 int MRns_name_pack (const unsigned char *, unsigned char *,
39  unsigned, const unsigned char **, const unsigned char **);
40 int MRns_name_ntop(const unsigned char *, char *, size_t);
41 int MRns_name_pton(const char *, u_char *, size_t);
42 int MRns_name_uncompress_list(const unsigned char*, int buflen, char*, size_t);
43 int MRns_name_compress_list(const char*, int buflen, unsigned char*, size_t);
44 
45 #endif /* NS_NAME_H */
int MRns_name_ntop(const u_char *src, char *dst, size_t dstsiz)
Definition: ns_name.c:60
int MRns_name_compress(const char *src, u_char *dst, size_t dstsiz, const u_char **dnptrs, const u_char **lastdnptr)
Definition: ns_name.c:502
int MRns_name_compress_list(const char *buf, int buflen, unsigned char *compbuf, size_t compbuf_size)
Creates a compressed list from a string of comma-separated domain-names.
Definition: ns_name.c:747
int MRns_name_pack(const u_char *src, u_char *dst, unsigned dstsiz, const u_char **dnptrs, const u_char **lastdnptr)
Definition: ns_name.c:382
int MRns_name_uncompress_list(const unsigned char *buf, int buflen, char *dst_buf, size_t dst_size)
Creates a string of comma-separated domain-names from a compressed list.
Definition: ns_name.c:678
int MRns_name_pton(const char *src, u_char *dst, size_t dstsiz)
Definition: ns_name.c:141
int MRns_name_unpack(const u_char *msg, const u_char *eom, const u_char *src, u_char *dst, size_t dstsiz)
Definition: ns_name.c:294