From 4ed826f8bbb9d4a3ba0ec79a8be2df3655c0d6f7 Mon Sep 17 00:00:00 2001 From: cshenton Date: Mon, 11 Mar 2024 12:28:46 +1100 Subject: [PATCH] remove redundant mingw patches, fix uint32==uint64 comparison tautology --- netcode.c | 187 +----------------------------------------------------- 1 file changed, 1 insertion(+), 186 deletions(-) diff --git a/netcode.c b/netcode.c index bdcf60b..58a5fcf 100755 --- a/netcode.c +++ b/netcode.c @@ -180,191 +180,6 @@ void netcode_default_free_function( void * context, void * pointer ) #endif -// ---------------------------------------------------------------- - -#ifdef __MINGW32__ - const char *inet_ntop(int af, const void *src, char *dst, socklen_t cnt) - { - if ( af == AF_INET ) - { - struct sockaddr_in in; - memset(&in, 0, sizeof(in)); - in.sin_family = AF_INET; - memcpy(&in.sin_addr, src, sizeof(struct in_addr)); - getnameinfo((struct sockaddr *)&in, sizeof(struct sockaddr_in), dst, cnt, NULL, 0, NI_NUMERICHOST); - return dst; - } - else if ( af == AF_INET6 ) - { - struct sockaddr_in6 in; - memset(&in, 0, sizeof(in)); - in.sin6_family = AF_INET6; - memcpy(&in.sin6_addr, src, sizeof(struct in_addr6)); - getnameinfo((struct sockaddr *)&in, sizeof(struct sockaddr_in6), dst, cnt, NULL, 0, NI_NUMERICHOST); - return dst; - } - - return NULL; - } - - #define NS_INADDRSZ 4 - #define NS_IN6ADDRSZ 16 - #define NS_INT16SZ 2 - - int inet_pton4(const char *src, char *dst) - { - uint8_t tmp[NS_INADDRSZ], *tp; - int saw_digit = 0; - int octets = 0; - *(tp = tmp) = 0; - int ch; - - while ((ch = *src++) != '\0') - { - if ( ch >= '0' && ch <= '9' ) - { - uint32_t n = *tp * 10 + (ch - '0'); - - if ( saw_digit && *tp == 0 ) - return 0; - if ( n > 255 ) - return 0; - *tp = n; - if ( !saw_digit ) - { - if ( ++octets > 4 ) - return 0; - saw_digit = 1; - } - } - else if ( ch == '.' && saw_digit ) - { - if ( octets == 4 ) - return 0; - *++tp = 0; - saw_digit = 0; - } - else - return 0; - } - if ( octets < 4 ) - return 0; - - memcpy(dst, tmp, NS_INADDRSZ); - - return 1; - } - - int inet_pton6(const char *src, char *dst) - { - static const char xdigits[] = "0123456789abcdef"; - uint8_t tmp[NS_IN6ADDRSZ]; - uint8_t *tp = (uint8_t*) memset(tmp, '\0', NS_IN6ADDRSZ); - uint8_t *endp = tp + NS_IN6ADDRSZ; - uint8_t *colonp = NULL; - - // Leading :: requires some special handling - if ( *src == ':' ) - { - if ( *++src != ':' ) - return 0; - } - - const char *curtok = src; - int saw_xdigit = 0; - uint32_t val = 0; - int ch; - - while ( (ch = tolower(*src++)) != '\0' ) - { - const char *pch = strchr(xdigits, ch); - if ( pch != NULL ) - { - val <<= 4; - val |= (pch - xdigits); - if ( val > 0xffff ) - return 0; - saw_xdigit = 1; - continue; - } - if ( ch == ':' ) - { - curtok = src; - if ( !saw_xdigit ) - { - if ( colonp ) - return 0; - colonp = tp; - continue; - } - else if ( *src == '\0' ) - { - return 0; - } - if ( tp + NS_INT16SZ > endp ) - return 0; - *tp++ = (uint8_t) (val >> 8) & 0xff; - *tp++ = (uint8_t) val & 0xff; - saw_xdigit = 0; - val = 0; - continue; - } - if ( ch == '.' && ((tp + NS_INADDRSZ) <= endp) && inet_pton4(curtok, (char*) tp) > 0 ) - { - tp += NS_INADDRSZ; - saw_xdigit = 0; - break; - } - return 0; - } - - if ( saw_xdigit ) - { - if ( tp + NS_INT16SZ > endp ) - return 0; - *tp++ = (uint8_t) (val >> 8) & 0xff; - *tp++ = (uint8_t) val & 0xff; - } - - if ( colonp != NULL ) - { - const int n = tp - colonp; - if ( tp == endp ) - return 0; - for (int i = 1; i <= n; i++) - { - endp[-i] = colonp[n - i]; - colonp[n - i] = 0; - } - tp = endp; - } - if ( tp != endp ) - return 0; - - memcpy(dst, tmp, NS_IN6ADDRSZ); - - return 1; - } - - int inet_pton(int af, const char *src, void *dst) - { - switch ( af ) - { - case AF_INET: - return inet_pton4(src, (char *) dst); - - case AF_INET6: - return inet_pton6(src, (char *) dst); - - default: - return -1; - } - } - -#endif - -// ---------------------------------------------------------------- - int netcode_parse_address( NETCODE_CONST char * address_string_in, struct netcode_address_t * address ) { netcode_assert( address_string_in ); @@ -645,7 +460,7 @@ int netcode_socket_create( struct netcode_socket_t * s, struct netcode_address_t s->handle = socket( ( address->type == NETCODE_ADDRESS_IPV6 ) ? AF_INET6 : AF_INET, SOCK_DGRAM, IPPROTO_UDP ); #if NETCODE_PLATFORM == NETCODE_PLATFORM_WINDOWS - if ( s->handle == INVALID_SOCKET ) + if ( s->handle == (uint32_t)INVALID_SOCKET ) #else // #if NETCODE_PLATFORM == NETCODE_PLATFORM_WINDOWS if ( s->handle <= 0 ) #endif // #if NETCODE_PLATFORM == NETCODE_PLATFORM_WINDOWS