mirror of
https://frontier.innolan.net/rainlance/c-ares.git
synced 2025-10-05 14:59:30 +00:00
Revert commit 494274e653
This commit is contained in:
@ -366,8 +366,8 @@ static void append_scopeid(struct sockaddr_in6 *addr6, unsigned int flags,
|
||||
tmpbuf[0] = '%';
|
||||
|
||||
#ifdef HAVE_IF_INDEXTONAME
|
||||
is_ll = IN6_IS_ADDR_LINKLOCAL((void *)&addr6->sin6_addr);
|
||||
is_mcll = IN6_IS_ADDR_MC_LINKLOCAL((void *)&addr6->sin6_addr);
|
||||
is_ll = IN6_IS_ADDR_LINKLOCAL(&addr6->sin6_addr);
|
||||
is_mcll = IN6_IS_ADDR_MC_LINKLOCAL(&addr6->sin6_addr);
|
||||
if ((flags & ARES_NI_NUMERICSCOPE) ||
|
||||
(!is_ll && !is_mcll))
|
||||
{
|
||||
|
@ -478,7 +478,7 @@ static void read_udp_packets(ares_channel channel, fd_set *read_fds,
|
||||
else
|
||||
fromlen = sizeof(from.sa6);
|
||||
count = (ssize_t)recvfrom(server->udp_socket, (void *)buf, sizeof(buf),
|
||||
0, (void *)&from, &fromlen);
|
||||
0, (struct sockaddr *)&from, &fromlen);
|
||||
#else
|
||||
count = sread(server->udp_socket, buf, sizeof(buf));
|
||||
#endif
|
||||
@ -487,7 +487,7 @@ static void read_udp_packets(ares_channel channel, fd_set *read_fds,
|
||||
else if (count <= 0)
|
||||
handle_error(channel, i, now);
|
||||
#ifdef HAVE_RECVFROM
|
||||
else if (!same_address((void *)&from, &server->addr))
|
||||
else if (!same_address((struct sockaddr *)&from, &server->addr))
|
||||
/* The address the response comes from does not match
|
||||
* the address we sent the request to. Someone may be
|
||||
* attempting to perform a cache poisoning attack. */
|
||||
|
Reference in New Issue
Block a user