Copyright 1998, 2000 by the Massachusetts Institute of Technology.
SPDX-License-Identifier: MIT
ARES_MKQUERY 3 "20 Nov 2009"
NAME
ares_mkquery - Compose a single-question DNS query buffer
SYNOPSIS
#include <ares.h> int ares_mkquery(const char *name, int dnsclass, int type, unsigned short id, int rd, unsigned char **buf, int *buflen)
DESCRIPTION
Deprecated function. See ares_create_query(3) instead!
The
ares_mkquery function composes a DNS query with a single question.
The parameter
name gives the query name as a NUL-terminated C string of period-separated
labels optionally ending with a period; periods and backslashes within
a label must be escaped with a backlash. The parameters
dnsclass and
type give the class and type of the query using the values defined in
<arpa/nameser.h> . The parameter
id gives a 16-bit identifier for the query. The parameter
rd should be nonzero if recursion is desired, zero if not. The query
will be placed in an allocated buffer, a pointer to which will be
stored in the variable pointed to by
buf , and the length of which will be stored in the variable pointed to by
buflen . It is the caller's responsibility to free this buffer using
ares_free_string(3) when it is no longer needed.
Usage of ares_mkquery(3) is deprecated, whereas the function is
equivalent to ares_create_query(3) with max_udp_size set to
0.
RETURN VALUES
ares_mkquery can return any of the following values:
15 ARES_SUCCESS Construction of the DNS query succeeded.
15 ARES_ENOTFOUND The query name name refers to a .onion domain name. See RFC 7686.
15 ARES_EBADNAME The query name name could not be encoded as a domain name, either because it contained a zero-length label or because it contained a label of more than 63 characters.
15 ARES_ENOMEM Memory was exhausted.
SEE ALSO
ares_expand_name (3), ares_dns_record (3), ares_free_string (3) AUTHOR
Greg Hudson, MIT Information Systems
Copyright 1998, 2000 by the Massachusetts Institute of Technology.