mirror of
https://github.com/wolfSSL/wolfssl.git
synced 2025-07-31 19:24:42 +02:00
Merge pull request #9038 from JacobBarthelmeh/tcp
remove QEMU test host name lookup feature
This commit is contained in:
@@ -881,7 +881,6 @@ WOLFSSL_USER_THREADING
|
||||
WOLFSSL_USE_ESP32C3_CRYPT_HASH_HW
|
||||
WOLFSSL_USE_FLASHMEM
|
||||
WOLFSSL_USE_OPTIONS_H
|
||||
WOLFSSL_USE_POPEN_HOST
|
||||
WOLFSSL_VALIDATE_DH_KEYGEN
|
||||
WOLFSSL_WC_LMS_SERIALIZE_STATE
|
||||
WOLFSSL_WC_XMSS_NO_SHA256
|
||||
|
63
src/wolfio.c
63
src/wolfio.c
@@ -1347,7 +1347,6 @@ int wolfIO_TcpConnect(SOCKET_T* sockfd, const char* ip, word16 port, int to_sec)
|
||||
char strPort[6];
|
||||
#else
|
||||
/* use gethostbyname */
|
||||
#if !defined(WOLFSSL_USE_POPEN_HOST)
|
||||
#if defined(__GLIBC__) && (__GLIBC__ >= 2) && defined(__USE_MISC) && \
|
||||
!defined(SINGLE_THREADED)
|
||||
HOSTENT entry_buf, *entry = NULL;
|
||||
@@ -1356,7 +1355,6 @@ int wolfIO_TcpConnect(SOCKET_T* sockfd, const char* ip, word16 port, int to_sec)
|
||||
#else
|
||||
HOSTENT *entry;
|
||||
#endif
|
||||
#endif /* !WOLFSSL_USE_POPEN_HOST */
|
||||
#ifdef WOLFSSL_IPV6
|
||||
SOCKADDR_IN6 *sin;
|
||||
#else
|
||||
@@ -1405,67 +1403,6 @@ int wolfIO_TcpConnect(SOCKET_T* sockfd, const char* ip, word16 port, int to_sec)
|
||||
sockaddr_len = answer->ai_addrlen;
|
||||
XMEMCPY(&addr, answer->ai_addr, (size_t)sockaddr_len);
|
||||
freeaddrinfo(answer);
|
||||
#elif defined(WOLFSSL_USE_POPEN_HOST) && !defined(WOLFSSL_IPV6)
|
||||
{
|
||||
char host_ipaddr[4] = { 127, 0, 0, 1 };
|
||||
int found = 1;
|
||||
|
||||
if ((XSTRNCMP(ip, "localhost", 10) != 0) &&
|
||||
(XSTRNCMP(ip, "127.0.0.1", 10) != 0)) {
|
||||
FILE* fp;
|
||||
char host_out[100];
|
||||
char cmd[100];
|
||||
|
||||
XSTRNCPY(cmd, "host ", 6);
|
||||
XSTRNCAT(cmd, ip, 99 - XSTRLEN(cmd));
|
||||
found = 0;
|
||||
fp = popen(cmd, "r");
|
||||
if (fp != NULL) {
|
||||
while (fgets(host_out, sizeof(host_out), fp) != NULL) {
|
||||
int i;
|
||||
int j = 0;
|
||||
for (j = 0; host_out[j] != '\0'; j++) {
|
||||
if ((host_out[j] >= '0') && (host_out[j] <= '9')) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
found = (host_out[j] >= '0') && (host_out[j] <= '9');
|
||||
if (!found) {
|
||||
continue;
|
||||
}
|
||||
|
||||
for (i = 0; i < 4; i++) {
|
||||
host_ipaddr[i] = atoi(host_out + j);
|
||||
while ((host_out[j] >= '0') && (host_out[j] <= '9')) {
|
||||
j++;
|
||||
}
|
||||
if (host_out[j] == '.') {
|
||||
j++;
|
||||
found &= (i != 3);
|
||||
}
|
||||
else {
|
||||
found &= (i == 3);
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (found) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
pclose(fp);
|
||||
}
|
||||
}
|
||||
if (found) {
|
||||
sin = (SOCKADDR_IN *)&addr;
|
||||
sin->sin_family = AF_INET;
|
||||
sin->sin_port = XHTONS(port);
|
||||
XMEMCPY(&sin->sin_addr.s_addr, host_ipaddr, sizeof(host_ipaddr));
|
||||
}
|
||||
else {
|
||||
WOLFSSL_MSG("no addr info for responder");
|
||||
return WOLFSSL_FATAL_ERROR;
|
||||
}
|
||||
}
|
||||
#else
|
||||
#if defined(__GLIBC__) && (__GLIBC__ >= 2) && defined(__USE_MISC) && \
|
||||
!defined(SINGLE_THREADED)
|
||||
|
@@ -1302,60 +1302,7 @@ static WC_INLINE void build_addr(SOCKADDR_IN_T* addr, const char* peer,
|
||||
#ifndef TEST_IPV6
|
||||
/* peer could be in human readable form */
|
||||
if ( ((size_t)peer != INADDR_ANY) && isalpha((unsigned char)peer[0])) {
|
||||
#ifdef WOLFSSL_USE_POPEN_HOST
|
||||
char host_ipaddr[4] = { 127, 0, 0, 1 };
|
||||
int found = 1;
|
||||
|
||||
if ((XSTRCMP(peer, "localhost") != 0) &&
|
||||
(XSTRCMP(peer, "127.0.0.1") != 0)) {
|
||||
FILE* fp;
|
||||
char cmd[100];
|
||||
|
||||
XSTRNCPY(cmd, "host ", 6);
|
||||
XSTRNCAT(cmd, peer, 99 - XSTRLEN(cmd));
|
||||
found = 0;
|
||||
fp = popen(cmd, "r");
|
||||
if (fp != NULL) {
|
||||
char host_out[100];
|
||||
while (fgets(host_out, sizeof(host_out), fp) != NULL) {
|
||||
int i;
|
||||
int j = 0;
|
||||
for (j = 0; host_out[j] != '\0'; j++) {
|
||||
if ((host_out[j] >= '0') && (host_out[j] <= '9')) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
found = (host_out[j] >= '0') && (host_out[j] <= '9');
|
||||
if (!found) {
|
||||
continue;
|
||||
}
|
||||
|
||||
for (i = 0; i < 4; i++) {
|
||||
host_ipaddr[i] = atoi(host_out + j);
|
||||
while ((host_out[j] >= '0') && (host_out[j] <= '9')) {
|
||||
j++;
|
||||
}
|
||||
if (host_out[j] == '.') {
|
||||
j++;
|
||||
found &= (i != 3);
|
||||
}
|
||||
else {
|
||||
found &= (i == 3);
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (found) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
pclose(fp);
|
||||
}
|
||||
}
|
||||
if (found) {
|
||||
XMEMCPY(&addr->sin_addr.s_addr, host_ipaddr, sizeof(host_ipaddr));
|
||||
useLookup = 1;
|
||||
}
|
||||
#elif !defined(WOLFSSL_USE_GETADDRINFO)
|
||||
#if !defined(WOLFSSL_USE_GETADDRINFO)
|
||||
#if defined(WOLFSSL_MDK_ARM) || defined(WOLFSSL_KEIL_TCP_NET)
|
||||
int err;
|
||||
struct hostent* entry = gethostbyname(peer, &err);
|
||||
|
Reference in New Issue
Block a user