curl-library
Re: Callback for socket options in curl + c-ares
Date: Tue, 13 Feb 2018 23:50:28 +0000
Hello Daniel,
I feel it would be useful in some other cases - for example dealing with multi-vrf sockets, currently you can bind the libcurl socket to any vrf you want, but no way to do that with the underlying c-ares.
Wouldn't be enough to provide access to the c-ares channel (which is in curl_easy->state.resolver if I'm not wrong)? Once I create my easy socket and the c-ares channel is created, I could just use ares_set_socket_configure_callback on the channel and I'd be done. Anything else I'm missing?
Thanks,
. .:|:.:|:. Francisco Sedano | CCIE 14859, Tech Lead Software Engineering | CSG Enterprise Access and Services Group (EASG)
On 13.02.18, 23:49, "curl-library on behalf of Daniel Stenberg" <curl-library-bounces_at_cool.haxx.se on behalf of daniel_at_haxx.se> wrote:
On Tue, 13 Feb 2018, Francisco Sedano Crippa (fsedanoc) wrote:
> Ideally I’d like to setup a callback with
> ares_set_socket_configure_callback(), but in order to do so, I need access
> to internal libcurl c-ares channel, which is embedded in the Curl_easy
> structure.
>
> Is there any way to access such c-ares channel so I can properly intercept
> c-ares socket usage, like we can do with CURLOPT_OPENSOCKETFUNCTION in
> libcurl?
No, that's something we've not felt the need for before... I can't think of
any other way to offer such a feature than to add a special and dedicated "set
socket options" callback for c-ares or perhaps rather for "the resolver
back-end". (There's work ongoing in making the resolver back-end totally
pluggable which then possibly also appreciate such an ability.)
--
/ daniel.haxx.se
-------------------------------------------------------------------
Unsubscribe: https://cool.haxx.se/list/listinfo/curl-library
Etiquette: https://curl.haxx.se/mail/etiquette.html
Received on 2018-02-14