Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
ARES_CREATE_QUERY(3)	    Library Functions Manual	    ARES_CREATE_QUERY(3)

NAME
     ares_create_query - Compose a single-question DNS query buffer

SYNOPSIS
     #include <ares.h>

     int ares_create_query(const char *name,
			   int dnsclass,
			   int type,
			   unsigned short id,
			   int rd,
			   unsigned char **buf,
			   int *buflen,
			   int max_udp_size)

DESCRIPTION
     This   function   is   deprecated	 as   of   c-ares   1.22,   please   use
     ares_dns_record_create(3) instead.

     The ares_create_query(3) function composes a DNS query with a single  ques-
     tion.  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.	 The   parameter
     max_udp_size  should  be  nonzero	to  activate  EDNS.  Usage  of ares_cre-
     ate_query(3) with max_udp_size set to zero is equivalent to using	ares_mk-
     query(3).

RETURN VALUES
     ares_create_query can return any of the following values:

     ARES_SUCCESS   Construction of the DNS query succeeded.

     ARES_ENOTFOUND
		    The  query name name refers to a .onion domain name. See RFC
		    7686.

     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.

     ARES_ENOMEM    Memory was exhausted.

AVAILABILITY
     Added in c-ares 1.10.0

SEE ALSO
     ares_dns_record(3),  ares_expand_name(3),	 ares_free_string(3),	ares_mk-
     query(3)

				   17 Aug 2012		    ARES_CREATE_QUERY(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=ares_create_query&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help