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

  
 
  

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

NAME
     ares_getsock - get socket descriptors to wait on (deprecated)

SYNOPSIS
     #include <ares.h>

     int ares_getsock(const ares_channel_t *channel, ares_socket_t *socks,
		      int numsocks);

DESCRIPTION
     The ares_getsock function retrieves the set of socket descriptors which the
     calling  application should wait on for reading and/or writing for the pro-
     cessing of name service queries pending on the name service channel identi-
     fied by channel.  Socket descriptors will be set in the  socket  descriptor
     array pointed to by socks.  numsocks is the size of the given array in num-
     ber of ints.

     This  function can only return information up to 16 sockets. If more are in
     use, they are simply not reported back.

RETURN VALUES
     ares_getsock returns a bitmask for what actions to wait for on the  differ-
     ent  sockets.  The  ares.h header file provides these convenience macros to
     extract the information appropriately:

     #define ARES_GETSOCK_MAXNUM 16 /* ares_getsock() can return info about
				       this many sockets */
     #define ARES_GETSOCK_READABLE(bits,num) (bits & (1<< (num)))
     #define ARES_GETSOCK_WRITABLE(bits,num) (bits & (1 << ((num) +					     ARES_GETSOCK_MAXNUM)))

NOTES
     This function was added in c-ares 1.3.1 and deprecated in c-ares 1.20.0 due
     to the implementation of ARES_OPT_MAX_UDP_QUERIES which makes it likely  to
     exceed 16 open file descriptors.

     It  is  recommended  to  use  ARES_OPT_EVENT_THREAD passed to ares_init_op-
     tions(3) or to use socket state callbacks	(ARES_OPT_SOCK_STATE_CB)  regis-
     tered via ares_init_options(3).

SEE ALSO
     ares_init_options(3), ares_timeout(3), ares_fds(3), ares_process(3)

				  11 March 2010 		 ARES_GETSOCK(3)

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

home | help