diff options
author | shadchin <shadchin@yandex-team.ru> | 2022-02-17 23:09:13 +0300 |
---|---|---|
committer | shadchin <shadchin@yandex-team.ru> | 2022-02-17 23:09:13 +0300 |
commit | 1e12ad07b2ad2362e06100f7f32e772e628bef66 (patch) | |
tree | 9981af0beb469cfef0d3d1658040f6bbf4206313 /contrib/libs/c-ares/ares_getsock.c | |
parent | 55c6ad7179b9300375e9a16a3956dc706fcb560b (diff) | |
download | ydb-1e12ad07b2ad2362e06100f7f32e772e628bef66.tar.gz |
Update c-ares from 0.16.1 to 0.17.2
MAKEAYAMLHAPPY-12345
ref:6a83ac3af883b2fc963128b7993f0a467b0000cb
Diffstat (limited to 'contrib/libs/c-ares/ares_getsock.c')
-rw-r--r-- | contrib/libs/c-ares/ares_getsock.c | 66 |
1 files changed, 0 insertions, 66 deletions
diff --git a/contrib/libs/c-ares/ares_getsock.c b/contrib/libs/c-ares/ares_getsock.c deleted file mode 100644 index 22d344679fa..00000000000 --- a/contrib/libs/c-ares/ares_getsock.c +++ /dev/null @@ -1,66 +0,0 @@ - -/* Copyright (C) 2005 - 2010, Daniel Stenberg - * - * Permission to use, copy, modify, and distribute this software and its - * documentation for any purpose and without fee is hereby granted, provided - * that the above copyright notice appear in all copies and that both that - * copyright notice and this permission notice appear in supporting - * documentation, and that the name of M.I.T. not be used in advertising or - * publicity pertaining to distribution of the software without specific, - * written prior permission. M.I.T. makes no representations about the - * suitability of this software for any purpose. It is provided "as is" - * without express or implied warranty. - */ - -#include "ares_setup.h" - -#include "ares.h" -#include "ares_private.h" - -int ares_getsock(ares_channel channel, - ares_socket_t *socks, - int numsocks) /* size of the 'socks' array */ -{ - struct server_state *server; - int i; - int sockindex=0; - int bitmap = 0; - unsigned int setbits = 0xffffffff; - - /* Are there any active queries? */ - int active_queries = !ares__is_list_empty(&(channel->all_queries)); - - for (i = 0; i < channel->nservers; i++) - { - server = &channel->servers[i]; - /* We only need to register interest in UDP sockets if we have - * outstanding queries. - */ - if (active_queries && server->udp_socket != ARES_SOCKET_BAD) - { - if(sockindex >= numsocks || sockindex >= ARES_GETSOCK_MAXNUM) - break; - socks[sockindex] = server->udp_socket; - bitmap |= ARES_GETSOCK_READABLE(setbits, sockindex); - sockindex++; - } - /* We always register for TCP events, because we want to know - * when the other side closes the connection, so we don't waste - * time trying to use a broken connection. - */ - if (server->tcp_socket != ARES_SOCKET_BAD) - { - if(sockindex >= numsocks || sockindex >= ARES_GETSOCK_MAXNUM) - break; - socks[sockindex] = server->tcp_socket; - bitmap |= ARES_GETSOCK_READABLE(setbits, sockindex); - - if (server->qhead && active_queries) - /* then the tcp socket is also writable! */ - bitmap |= ARES_GETSOCK_WRITABLE(setbits, sockindex); - - sockindex++; - } - } - return bitmap; -} |