Loading ares/CHANGES +5 −0 Original line number Diff line number Diff line Changelog for the c-ares project * Dec 4 2008 (Daniel Stenberg) Gregor Jasny provided the patch that introduces ares_set_socket_callback(), and I edited it to also get duped by ares_dup(). * Dec 3 2008 (Daniel Stenberg) API changes: Loading ares/RELEASE-NOTES +14 −7 Original line number Diff line number Diff line This is what's new and changed in the c-ares 1.5.4 release: This is what's new and changed in the c-ares 1.6.0 release: Changed: o Added support for the glibc "rotate" resolv.conf option (or ARES_OPT_ROTATE) o Added ares_gethostbyname_file() o Added ares_dup() o Added ares_set_socket_callback() Fixed: o improved configure detection of several functions o improved source code portability o adig supports a regular numerical dotted IP address for the -s option o handling of EINPROGRESS for UDP connects o supports the glibc "rotate" resolv.conf option (or ARES_OPT_ROTATE) o added the new function ares_gethostbyname_file() o bugfix in ares_parse_ptr_reply() which would cause a buffer to shrink instead of expand if a reply contained 8 or more records o ares_parse_ptr_reply()would cause a buffer to shrink instead of expand if a reply contained 8 or more records o buildconf works on OS X Thanks go to these friendly people for their efforts and contributions: Yang Tse, Charles Hardin, Carlo Contavalli, Brad Spencer, Gerald Combs and obviously Daniel Stenberg Yang Tse, Charles Hardin, Carlo Contavalli, Brad Spencer, Gerald Combs, Gregor Jasny Have fun! ares/ares.h +5 −0 Original line number Diff line number Diff line Loading @@ -229,6 +229,8 @@ typedef void (*ares_host_callback)(void *arg, int status, int timeouts, struct hostent *hostent); typedef void (*ares_nameinfo_callback)(void *arg, int status, int timeouts, char *node, char *service); typedef int (*ares_sock_create_callback)(ares_socket_t socket_fd, int type, void *data); int ares_init(ares_channel *channelptr); int ares_init_options(ares_channel *channelptr, struct ares_options *options, Loading @@ -239,6 +241,9 @@ void ares_destroy_options(struct ares_options *options); int ares_dup(ares_channel *dest, ares_channel src); void ares_destroy(ares_channel channel); void ares_cancel(ares_channel channel); void ares_set_socket_callback(ares_channel channel, ares_sock_create_callback callback, void *user_data); void ares_send(ares_channel channel, const unsigned char *qbuf, int qlen, ares_callback callback, void *arg); void ares_query(ares_channel channel, const char *name, int dnsclass, Loading ares/ares_init.c +12 −1 Original line number Diff line number Diff line Loading @@ -159,6 +159,8 @@ int ares_init_options(ares_channel *channelptr, struct ares_options *options, channel->servers = NULL; channel->sock_state_cb = NULL; channel->sock_state_cb_data = NULL; channel->sock_create_cb = NULL; channel->sock_create_cb_data = NULL; channel->last_server = 0; channel->last_timeout_processed = (time_t)now.tv_sec; Loading Loading @@ -283,8 +285,9 @@ int ares_dup(ares_channel *dest, ares_channel src) return rc; /* Now clone the options that ares_save_options() doesn't support. */ (*dest)->sock_create_cb = src->sock_create_cb; (*dest)->sock_create_cb_data = src->sock_create_cb_data; /* No such options available yet */ return ARES_SUCCESS; /* everything went fine */ Loading Loading @@ -1551,3 +1554,11 @@ unsigned short ares__generate_new_id(rc4_key* key) ares__rc4(key, (unsigned char *)&r, sizeof(r)); return r; } void ares_set_socket_callback(ares_channel channel, ares_sock_create_callback cb, void *data) { channel->sock_create_cb = cb; channel->sock_create_cb_data = data; } ares/ares_private.h +3 −0 Original line number Diff line number Diff line Loading @@ -296,6 +296,9 @@ struct ares_channeldata { ares_sock_state_cb sock_state_cb; void *sock_state_cb_data; ares_sock_create_callback sock_create_cb; void *sock_create_cb_data; }; /* return true if now is exactly check time or later */ Loading Loading
ares/CHANGES +5 −0 Original line number Diff line number Diff line Changelog for the c-ares project * Dec 4 2008 (Daniel Stenberg) Gregor Jasny provided the patch that introduces ares_set_socket_callback(), and I edited it to also get duped by ares_dup(). * Dec 3 2008 (Daniel Stenberg) API changes: Loading
ares/RELEASE-NOTES +14 −7 Original line number Diff line number Diff line This is what's new and changed in the c-ares 1.5.4 release: This is what's new and changed in the c-ares 1.6.0 release: Changed: o Added support for the glibc "rotate" resolv.conf option (or ARES_OPT_ROTATE) o Added ares_gethostbyname_file() o Added ares_dup() o Added ares_set_socket_callback() Fixed: o improved configure detection of several functions o improved source code portability o adig supports a regular numerical dotted IP address for the -s option o handling of EINPROGRESS for UDP connects o supports the glibc "rotate" resolv.conf option (or ARES_OPT_ROTATE) o added the new function ares_gethostbyname_file() o bugfix in ares_parse_ptr_reply() which would cause a buffer to shrink instead of expand if a reply contained 8 or more records o ares_parse_ptr_reply()would cause a buffer to shrink instead of expand if a reply contained 8 or more records o buildconf works on OS X Thanks go to these friendly people for their efforts and contributions: Yang Tse, Charles Hardin, Carlo Contavalli, Brad Spencer, Gerald Combs and obviously Daniel Stenberg Yang Tse, Charles Hardin, Carlo Contavalli, Brad Spencer, Gerald Combs, Gregor Jasny Have fun!
ares/ares.h +5 −0 Original line number Diff line number Diff line Loading @@ -229,6 +229,8 @@ typedef void (*ares_host_callback)(void *arg, int status, int timeouts, struct hostent *hostent); typedef void (*ares_nameinfo_callback)(void *arg, int status, int timeouts, char *node, char *service); typedef int (*ares_sock_create_callback)(ares_socket_t socket_fd, int type, void *data); int ares_init(ares_channel *channelptr); int ares_init_options(ares_channel *channelptr, struct ares_options *options, Loading @@ -239,6 +241,9 @@ void ares_destroy_options(struct ares_options *options); int ares_dup(ares_channel *dest, ares_channel src); void ares_destroy(ares_channel channel); void ares_cancel(ares_channel channel); void ares_set_socket_callback(ares_channel channel, ares_sock_create_callback callback, void *user_data); void ares_send(ares_channel channel, const unsigned char *qbuf, int qlen, ares_callback callback, void *arg); void ares_query(ares_channel channel, const char *name, int dnsclass, Loading
ares/ares_init.c +12 −1 Original line number Diff line number Diff line Loading @@ -159,6 +159,8 @@ int ares_init_options(ares_channel *channelptr, struct ares_options *options, channel->servers = NULL; channel->sock_state_cb = NULL; channel->sock_state_cb_data = NULL; channel->sock_create_cb = NULL; channel->sock_create_cb_data = NULL; channel->last_server = 0; channel->last_timeout_processed = (time_t)now.tv_sec; Loading Loading @@ -283,8 +285,9 @@ int ares_dup(ares_channel *dest, ares_channel src) return rc; /* Now clone the options that ares_save_options() doesn't support. */ (*dest)->sock_create_cb = src->sock_create_cb; (*dest)->sock_create_cb_data = src->sock_create_cb_data; /* No such options available yet */ return ARES_SUCCESS; /* everything went fine */ Loading Loading @@ -1551,3 +1554,11 @@ unsigned short ares__generate_new_id(rc4_key* key) ares__rc4(key, (unsigned char *)&r, sizeof(r)); return r; } void ares_set_socket_callback(ares_channel channel, ares_sock_create_callback cb, void *data) { channel->sock_create_cb = cb; channel->sock_create_cb_data = data; }
ares/ares_private.h +3 −0 Original line number Diff line number Diff line Loading @@ -296,6 +296,9 @@ struct ares_channeldata { ares_sock_state_cb sock_state_cb; void *sock_state_cb_data; ares_sock_create_callback sock_create_cb; void *sock_create_cb_data; }; /* return true if now is exactly check time or later */ Loading