remove ares_nowarn helpers #580

Now that the code internally is using proper datatypes, there is no longer a need for ares_nowarn helpers. Remove them.

Fix By: Brad House (@bradh352)
pull/582/head
Brad House 1 year ago committed by GitHub
parent 86e417e247
commit c3e050ac72
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 2
      src/lib/Makefile.inc
  2. 1
      src/lib/ares__addrinfo_localhost.c
  3. 5
      src/lib/ares__get_hostent.c
  4. 3
      src/lib/ares__read_line.c
  5. 1
      src/lib/ares__readaddrinfo.c
  6. 1
      src/lib/ares_expand_name.c
  7. 3
      src/lib/ares_fds.c
  8. 1
      src/lib/ares_gethostbyname.c
  9. 1
      src/lib/ares_getnameinfo.c
  10. 5
      src/lib/ares_init.c
  11. 269
      src/lib/ares_nowarn.c
  12. 70
      src/lib/ares_nowarn.h
  13. 5
      src/lib/ares_parse_ptr_reply.c
  14. 1
      src/lib/ares_platform.c
  15. 7
      src/lib/ares_process.c
  16. 1
      src/lib/ares_rand.c
  17. 9
      src/lib/inet_net_pton.c
  18. 2
      src/tools/Makefile.inc
  19. 1
      src/tools/acountry.c
  20. 1
      src/tools/adig.c
  21. 1
      src/tools/ahost.c
  22. 15
      test/ares-test-internal.cc

@ -36,7 +36,6 @@ CSOURCES = ares__addrinfo2hostent.c \
ares_library_init.c \
ares_mkquery.c \
ares_create_query.c \
ares_nowarn.c \
ares_options.c \
ares_parse_a_reply.c \
ares_parse_aaaa_reply.c \
@ -78,7 +77,6 @@ HHEADERS = ares__htable.h \
ares_inet_net_pton.h \
ares_iphlpapi.h \
ares_ipv6.h \
ares_nowarn.h \
ares_platform.h \
ares_private.h \
ares_strcasecmp.h \

@ -44,7 +44,6 @@
#include "ares.h"
#include "ares_inet_net_pton.h"
#include "ares_nowarn.h"
#include "ares_private.h"
ares_status_t ares_append_ai_node(int aftype, unsigned short port,

@ -39,7 +39,6 @@
#include "ares.h"
#include "ares_inet_net_pton.h"
#include "ares_nowarn.h"
#include "ares_private.h"
ares_status_t ares__get_hostent(FILE *fp, int family, struct hostent **host)
@ -242,8 +241,8 @@ ares_status_t ares__get_hostent(FILE *fp, int family, struct hostent **host)
}
/* Copy actual network address family and length. */
hostent->h_addrtype = aresx_sitoss(addr.family);
hostent->h_length = aresx_uztoss(addrlen);
hostent->h_addrtype = addr.family;
hostent->h_length = (int)addrlen;
/* Free line buffer. */
ares_free(line);

@ -28,7 +28,6 @@
#include "ares_setup.h"
#include "ares.h"
#include "ares_nowarn.h"
#include "ares_private.h"
/* This is an internal function. Its contract is to read a line from
@ -54,7 +53,7 @@ ares_status_t ares__read_line(FILE *fp, char **buf, size_t *bufsize)
}
for (;;) {
int bytestoread = aresx_uztosi(*bufsize - offset);
int bytestoread = (int)(*bufsize - offset);
if (!fgets(*buf + offset, bytestoread, fp)) {
return (offset != 0) ? 0 : (ferror(fp)) ? ARES_EFILE : ARES_EOF;

@ -38,7 +38,6 @@
#include "ares.h"
#include "ares_inet_net_pton.h"
#include "ares_nowarn.h"
#include "ares_private.h"
#define MAX_ALIASES 40

@ -34,7 +34,6 @@
#include "ares_nameser.h"
#include "ares.h"
#include "ares_nowarn.h"
#include "ares_private.h" /* for the memdebug */
/* Maximum number of indirections allowed for a name */

@ -28,7 +28,6 @@
#include "ares_setup.h"
#include "ares.h"
#include "ares_nowarn.h"
#include "ares_private.h"
int ares_fds(ares_channel channel, fd_set *read_fds, fd_set *write_fds)
@ -65,5 +64,5 @@ int ares_fds(ares_channel channel, fd_set *read_fds, fd_set *write_fds)
}
}
return (int)nfds;
return nfds;
}

@ -47,7 +47,6 @@
#include "ares_inet_net_pton.h"
#include "bitncmp.h"
#include "ares_platform.h"
#include "ares_nowarn.h"
#include "ares_private.h"
static void sort_addresses(struct hostent *host,

@ -50,7 +50,6 @@
#include "ares.h"
#include "ares_ipv6.h"
#include "ares_nowarn.h"
#include "ares_private.h"
struct nameinfo_query {

@ -63,7 +63,6 @@
#include "ares.h"
#include "ares_inet_net_pton.h"
#include "ares_nowarn.h"
#include "ares_platform.h"
#include "ares_private.h"
@ -381,8 +380,8 @@ int ares_save_options(ares_channel channel, struct ares_options *options,
options->timeout = (int)channel->timeout;
options->tries = (int)channel->tries;
options->ndots = (int)channel->ndots;
options->udp_port = ntohs(aresx_sitous(channel->udp_port));
options->tcp_port = ntohs(aresx_sitous(channel->tcp_port));
options->udp_port = ntohs(channel->udp_port);
options->tcp_port = ntohs(channel->tcp_port);
options->sock_state_cb = channel->sock_state_cb;
options->sock_state_cb_data = channel->sock_state_cb_data;

@ -1,269 +0,0 @@
/* MIT License
*
* Copyright (c) 2010 Daniel Stenberg
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice (including the next
* paragraph) shall be included in all copies or substantial portions of the
* Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*
* SPDX-License-Identifier: MIT
*/
#include "ares_setup.h"
#ifdef HAVE_ASSERT_H
# include <assert.h>
#endif
#ifdef HAVE_LIMITS_H
# include <limits.h>
#endif
#if defined(__INTEL_COMPILER) && defined(__unix__)
# ifdef HAVE_NETINET_IN_H
# include <netinet/in.h>
# endif
# ifdef HAVE_ARPA_INET_H
# include <arpa/inet.h>
# endif
#endif /* __INTEL_COMPILER && __unix__ */
#define BUILDING_ARES_NOWARN_C 1
#include "ares_nowarn.h"
#ifndef HAVE_LIMITS_H
/* systems without <limits.h> we guess have 16 bit shorts, 32bit ints and
32bit longs */
# define CARES_MASK_SSHORT 0x7FFF
# define CARES_MASK_USHORT 0xFFFF
# define CARES_MASK_SINT 0x7FFFFFFF
# define CARES_MASK_UINT 0xFFFFFFFF
# define CARES_MASK_SLONG 0x7FFFFFFFL
# define CARES_MASK_ULONG 0xFFFFFFFFUL
#else
# define CARES_MASK_SSHORT SHRT_MAX
# define CARES_MASK_USHORT USHRT_MAX
# define CARES_MASK_SINT INT_MAX
# define CARES_MASK_UINT UINT_MAX
# define CARES_MASK_SLONG LONG_MAX
# define CARES_MASK_ULONG ULONG_MAX
#endif
/*
** unsigned size_t to signed long
*/
long aresx_uztosl(size_t uznum)
{
#ifdef __INTEL_COMPILER
# pragma warning(push)
# pragma warning(disable : 810) /* conversion may lose significant bits */
#endif
return (long)(uznum & (size_t)CARES_MASK_SLONG);
#ifdef __INTEL_COMPILER
# pragma warning(pop)
#endif
}
/*
** unsigned size_t to signed int
*/
int aresx_uztosi(size_t uznum)
{
#ifdef __INTEL_COMPILER
# pragma warning(push)
# pragma warning(disable : 810) /* conversion may lose significant bits */
#endif
return (int)(uznum & (size_t)CARES_MASK_SINT);
#ifdef __INTEL_COMPILER
# pragma warning(pop)
#endif
}
/*
** unsigned size_t to signed short
*/
short aresx_uztoss(size_t uznum)
{
#ifdef __INTEL_COMPILER
# pragma warning(push)
# pragma warning(disable : 810) /* conversion may lose significant bits */
#endif
return (short)(uznum & (size_t)CARES_MASK_SSHORT);
#ifdef __INTEL_COMPILER
# pragma warning(pop)
#endif
}
/*
** signed int to signed short
*/
short aresx_sitoss(int sinum)
{
#ifdef __INTEL_COMPILER
# pragma warning(push)
# pragma warning(disable : 810) /* conversion may lose significant bits */
#endif
DEBUGASSERT(sinum >= 0);
return (short)(sinum & (int)CARES_MASK_SSHORT);
#ifdef __INTEL_COMPILER
# pragma warning(pop)
#endif
}
/*
** signed long to signed int
*/
int aresx_sltosi(long slnum)
{
#ifdef __INTEL_COMPILER
# pragma warning(push)
# pragma warning(disable : 810) /* conversion may lose significant bits */
#endif
DEBUGASSERT(slnum >= 0);
return (int)(slnum & (long)CARES_MASK_SINT);
#ifdef __INTEL_COMPILER
# pragma warning(pop)
#endif
}
/*
** signed ares_ssize_t to signed int
*/
int aresx_sztosi(ares_ssize_t sznum)
{
#ifdef __INTEL_COMPILER
# pragma warning(push)
# pragma warning(disable : 810) /* conversion may lose significant bits */
#endif
DEBUGASSERT(sznum >= 0);
return (int)(sznum & (ares_ssize_t)CARES_MASK_SINT);
#ifdef __INTEL_COMPILER
# pragma warning(pop)
#endif
}
/*
** signed ares_ssize_t to unsigned int
*/
unsigned int aresx_sztoui(ares_ssize_t sznum)
{
#ifdef __INTEL_COMPILER
# pragma warning(push)
# pragma warning(disable : 810) /* conversion may lose significant bits */
#endif
DEBUGASSERT(sznum >= 0);
return (unsigned int)(sznum & (ares_ssize_t)CARES_MASK_UINT);
#ifdef __INTEL_COMPILER
# pragma warning(pop)
#endif
}
/*
** signed int to unsigned short
*/
unsigned short aresx_sitous(int sinum)
{
#ifdef __INTEL_COMPILER
# pragma warning(push)
# pragma warning(disable : 810) /* conversion may lose significant bits */
#endif
DEBUGASSERT(sinum >= 0);
return (unsigned short)(sinum & (int)CARES_MASK_USHORT);
#ifdef __INTEL_COMPILER
# pragma warning(pop)
#endif
}
#if defined(__INTEL_COMPILER) && defined(__unix__)
int aresx_FD_ISSET(int fd, fd_set *fdset)
{
# pragma warning(push)
# pragma warning(disable : 1469) /* clobber ignored */
return FD_ISSET(fd, fdset);
# pragma warning(pop)
}
void aresx_FD_SET(int fd, fd_set *fdset)
{
# pragma warning(push)
# pragma warning(disable : 1469) /* clobber ignored */
FD_SET(fd, fdset);
# pragma warning(pop)
}
void aresx_FD_ZERO(fd_set *fdset)
{
# pragma warning(push)
# pragma warning(disable : 593) /* variable was set but never used */
FD_ZERO(fdset);
# pragma warning(pop)
}
unsigned short aresx_htons(unsigned short usnum)
{
# if (__INTEL_COMPILER == 910) && defined(__i386__)
return (unsigned short)(((usnum << 8) & 0xFF00) | ((usnum >> 8) & 0x00FF));
# else
# pragma warning(push)
# pragma warning(disable : 810) /* conversion may lose significant bits */
return htons(usnum);
# pragma warning(pop)
# endif
}
unsigned short aresx_ntohs(unsigned short usnum)
{
# if (__INTEL_COMPILER == 910) && defined(__i386__)
return (unsigned short)(((usnum << 8) & 0xFF00) | ((usnum >> 8) & 0x00FF));
# else
# pragma warning(push)
# pragma warning(disable : 810) /* conversion may lose significant bits */
return ntohs(usnum);
# pragma warning(pop)
# endif
}
#endif /* __INTEL_COMPILER && __unix__ */

@ -1,70 +0,0 @@
/* MIT License
*
* Copyright (c) 2010 Daniel Stenberg
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice (including the next
* paragraph) shall be included in all copies or substantial portions of the
* Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*
* SPDX-License-Identifier: MIT
*/
#ifndef HEADER_CARES_NOWARN_H
#define HEADER_CARES_NOWARN_H
long aresx_uztosl(size_t uznum);
int aresx_uztosi(size_t uznum);
short aresx_uztoss(size_t uznum);
short aresx_sitoss(int sinum);
int aresx_sltosi(long slnum);
int aresx_sztosi(ares_ssize_t sznum);
unsigned int aresx_sztoui(ares_ssize_t sznum);
unsigned short aresx_sitous(int sinum);
#if defined(__INTEL_COMPILER) && defined(__unix__)
int aresx_FD_ISSET(int fd, fd_set *fdset);
void aresx_FD_SET(int fd, fd_set *fdset);
void aresx_FD_ZERO(fd_set *fdset);
unsigned short aresx_htons(unsigned short usnum);
unsigned short aresx_ntohs(unsigned short usnum);
# ifndef BUILDING_ARES_NOWARN_C
# undef FD_ISSET
# define FD_ISSET(a, b) aresx_FD_ISSET((a), (b))
# undef FD_SET
# define FD_SET(a, b) aresx_FD_SET((a), (b))
# undef FD_ZERO
# define FD_ZERO(a) aresx_FD_ZERO((a))
# undef htons
# define htons(a) aresx_htons((a))
# undef ntohs
# define ntohs(a) aresx_ntohs((a))
# endif
#endif /* __INTEL_COMPILER && __unix__ */
#endif /* HEADER_CARES_NOWARN_H */

@ -42,7 +42,6 @@
#include "ares.h"
#include "ares_dns.h"
#include "ares_nowarn.h"
#include "ares_private.h"
int ares_parse_ptr_reply(const unsigned char *abuf, int alen_int,
@ -224,8 +223,8 @@ int ares_parse_ptr_reply(const unsigned char *abuf, int alen_int,
hostent->h_aliases[i] = aliases[i];
}
hostent->h_aliases[aliascnt] = NULL;
hostent->h_addrtype = aresx_sitoss(family);
hostent->h_length = aresx_sitoss(addrlen);
hostent->h_addrtype = family;
hostent->h_length = addrlen;
if (addr && addrlen) {
memcpy(hostent->h_addr_list[0], addr, (size_t)addrlen);
}

@ -29,7 +29,6 @@
#include "ares.h"
#include "ares_platform.h"
#include "ares_nowarn.h"
#include "ares_private.h"
#if defined(WIN32) && !defined(MSDOS)

@ -61,7 +61,6 @@
#include "ares.h"
#include "ares_dns.h"
#include "ares_nowarn.h"
#include "ares_private.h"
@ -1073,11 +1072,9 @@ static ares_status_t open_socket(ares_channel channel,
int type = is_tcp ? SOCK_STREAM : SOCK_DGRAM;
if (is_tcp) {
port = aresx_sitous(server->addr.tcp_port ? server->addr.tcp_port
: channel->tcp_port);
port = server->addr.tcp_port ? server->addr.tcp_port : channel->tcp_port;
} else {
port = aresx_sitous(server->addr.udp_port ? server->addr.udp_port
: channel->udp_port);
port = server->addr.udp_port ? server->addr.udp_port : channel->udp_port;
}
switch (server->addr.family) {

@ -27,7 +27,6 @@
#include "ares_setup.h"
#include "ares.h"
#include "ares_private.h"
#include "ares_nowarn.h"
#include <stdlib.h>
#if !defined(HAVE_ARC4RANDOM_BUF) && !defined(HAVE_GETRANDOM) && \

@ -31,7 +31,6 @@
#include "ares.h"
#include "ares_ipv6.h"
#include "ares_nowarn.h"
#include "ares_inet_net_pton.h"
#include "ares_private.h"
@ -81,7 +80,7 @@ static int ares_inet_net_pton_ipv4(const char *src, unsigned char *dst,
if (ISUPPER(ch)) {
ch = tolower(ch);
}
n = aresx_sztosi(strchr(xdigits, ch) - xdigits);
n = (int)(strchr(xdigits, ch) - xdigits);
if (dirty == 0) {
tmp = n;
} else {
@ -106,7 +105,7 @@ static int ares_inet_net_pton_ipv4(const char *src, unsigned char *dst,
for (;;) {
tmp = 0;
do {
n = aresx_sztosi(strchr(digits, ch) - digits);
n = (int)(strchr(digits, ch) - digits);
tmp *= 10;
tmp += n;
if (tmp > 255) {
@ -138,7 +137,7 @@ static int ares_inet_net_pton_ipv4(const char *src, unsigned char *dst,
ch = *src++; /* Skip over the /. */
bits = 0;
do {
n = aresx_sztosi(strchr(digits, ch) - digits);
n = (int)(strchr(digits, ch) - digits);
bits *= 10;
bits += n;
if (bits > 32) {
@ -174,7 +173,7 @@ static int ares_inet_net_pton_ipv4(const char *src, unsigned char *dst,
}
/* If imputed mask is narrower than specified octets, widen. */
if (bits < ((dst - odst) * 8)) {
bits = aresx_sztosi(dst - odst) * 8;
bits = (int)(dst - odst) * 8;
}
/*
* If there are no additional bits specified for a class D

@ -1,9 +1,7 @@
# Copyright (C) The c-ares project and its contributors
# SPDX-License-Identifier: MIT
SAMPLESOURCES = ares_getopt.c \
../lib/ares_nowarn.c \
../lib/ares_strcasecmp.c
SAMPLEHEADERS = ares_getopt.h \
../lib/ares_nowarn.h \
../lib/ares_strcasecmp.h

@ -66,7 +66,6 @@
#include "ares.h"
#include "ares_getopt.h"
#include "ares_nowarn.h"
#ifndef HAVE_STRDUP
# include "ares_strdup.h"

@ -46,7 +46,6 @@
#include "ares.h"
#include "ares_dns.h"
#include "ares_getopt.h"
#include "ares_nowarn.h"
#ifndef HAVE_STRDUP
# include "ares_strdup.h"

@ -41,7 +41,6 @@
#include "ares_dns.h"
#include "ares_getopt.h"
#include "ares_ipv6.h"
#include "ares_nowarn.h"
#ifndef HAVE_STRDUP
# include "ares_strdup.h"

@ -33,7 +33,6 @@ extern "C" {
#undef PACKAGE_TARNAME
// ... so we can include the library's config without symbol redefinitions.
#include "ares_setup.h"
#include "ares_nowarn.h"
#include "ares_inet_net_pton.h"
#include "ares_data.h"
#include "ares_strsplit.h"
@ -298,20 +297,6 @@ TEST(Misc, Bitncmp) {
EXPECT_GT(0, ares__bitncmp(a, b, 3*8 + 7));
}
TEST_F(LibraryTest, Casts) {
ares_ssize_t ssz = 100;
unsigned int u = 100;
int i = 100;
long l = 100;
unsigned int ru = aresx_sztoui(ssz);
EXPECT_EQ(u, ru);
int ri = aresx_sztosi(ssz);
EXPECT_EQ(i, ri);
ri = aresx_sltosi(l);
EXPECT_EQ(l, (long)ri);
}
TEST_F(LibraryTest, ReadLine) {
TempFile temp("abcde\n0123456789\nXYZ\n012345678901234567890\n\n");

Loading…
Cancel
Save