oracular (3) ares_reinit.3.gz

Provided by: libc-ares-dev_1.33.0-1_amd64 bug

NAME

       ares_reinit - ReInitialize a resolver channel from system configuration.

SYNOPSIS

       #include <ares.h>

       int ares_reinit(ares_channel_t *channel)

DESCRIPTION

       The  ares_reinit(3)  function  re-reads  the  system  configuration and safely applies the
       configuration to the existing channel.  System configuration  will  never  override  user-
       provided settings such as provided via ares_init_options(3) or ares_set_servers(3).

       Any  existing  queries  will  be  automatically  requeued if the server they are currently
       assigned to is removed from the system configuration.

       This function may cause additional file descriptors to be created, and existing ones to be
       destroyed if server configuration has changed.

       0d  safety,  will spawn a background thread to read the configuration and apply it.  It is
       crucial that developers use the ARES_OPT_SOCK_STATE_CB or  ARES_OPT_EVENT_THREAD  so  that
       notifications  of  changes  are  alerted.   If  using  ares_getsock(3)  or ares_fds(3), no
       notification is possible which could cause a stall.

RETURN VALUES

       ares_reinit(3) can return any of the following values:

       ARES_SUCCESS  Initialization succeeded.

       ARES_EFILE    A configuration file could not be read.

       ARES_ENOMEM   The process's available memory was exhausted.

AVAILABILITY

       This function was first introduced in c-ares version 1.22.0.

SEE ALSO

       ares_init(3), ares_init_options(3),  ares_destroy(3),  ares_dup(3),  ares_library_init(3),
       ares_set_servers(3), ares_threadsafety(3)

                                         12 November 2023                          ARES_REINIT(3)