ARES\_SET\_SOCKET\_CALLBACK(3) Library Functions Manual ARES\_SET\_SOCKET\_CALLBACK(3)

# [NAME](#NAME)

ares\_set\_socket\_callback - Set a socket creation callback

# [SYNOPSIS](#SYNOPSIS)

```
#include <ares.h>
typedef int (*ares_sock_create_callback)(ares_socket_t socket_fd,


                                         int type,


                                         void *userdata)
void ares_set_socket_callback(ares_channel_t *channel,


                              ares_sock_create_callback callback,


                              void *userdata)
```

```
cc file.c -lcares
```

# [DESCRIPTION](#DESCRIPTION)

This function sets a *callback* in the given ares channel handle. This callback function will be invoked after the socket has been created, and connected to the remote server. The callback must return ARES\_SUCCESS if things are fine, or return -1 to signal an error. A returned error will abort the ares operation.

# [SEE ALSO](#SEE_ALSO)

[**ares\_init\_options**(3)](/man/os/c-ares/ares_init_options.3), [**ares\_set\_socket\_configure\_callback**(3)](/man/os/c-ares/ares_set_socket_configure_callback.3)

# [AVAILABILITY](#AVAILABILITY)

[ares\_set\_socket\_callback(3)](/man/os/c-ares/ares_set_socket_callback.3) was added in c-ares 1.6.0

20 Nov 2009

---

Document: ares_set_socket_callback(3) from c-ares 1.34.8-r4 (Chainguard OS)
Source: https://github.com/c-ares/c-ares
