the IP address we want/request/use from the interface is the 'local'
address, the one on the box libcurl is running, not the 'remote' one.
This commit is contained in:
Родитель
20d3e2b967
Коммит
a15b6a6f86
|
@ -378,9 +378,6 @@
|
|||
/* Define to `int' if <sys/types.h> does not define. */
|
||||
#undef ssize_t
|
||||
|
||||
/* this is a quick hack. I hope it's correct. */
|
||||
#define ifr_dstaddr ifr_addr
|
||||
|
||||
/* Define if you have the ioctl function. */
|
||||
#define HAVE_IOCTL
|
||||
|
||||
|
|
|
@ -137,7 +137,7 @@ char *Curl_if2ip(int af, const char *interface, char *buf, int buf_size)
|
|||
else {
|
||||
struct in_addr in;
|
||||
|
||||
struct sockaddr_in *s = (struct sockaddr_in *)&req.ifr_dstaddr;
|
||||
struct sockaddr_in *s = (struct sockaddr_in *)&req.ifr_addr;
|
||||
memcpy(&in, &s->sin_addr, sizeof(in));
|
||||
ip = (char *) Curl_inet_ntop(s->sin_family, &in, buf, buf_size);
|
||||
}
|
||||
|
|
|
@ -50,7 +50,6 @@ struct ifreq {
|
|||
|
||||
/* This define was added by Daniel to avoid an extra #ifdef INTERIX in the
|
||||
C code. */
|
||||
#define ifr_dstaddr ifr_addr
|
||||
|
||||
#define ifr_name ifr_ifrn.ifrn_name /* interface name */
|
||||
#define ifr_addr ifr_ifru.ifru_addr /* address */
|
||||
|
|
|
@ -30,9 +30,6 @@
|
|||
/* OS/400 netdb.h does not define NI_MAXSERV. */
|
||||
#define NI_MAXSERV 32
|
||||
|
||||
/* OS/400 does not define the ifr_dstaddr union member. */
|
||||
#define ifr_dstaddr ifr_addr
|
||||
|
||||
/* No OS/400 header file defines u_int32_t. */
|
||||
typedef unsigned long u_int32_t;
|
||||
|
||||
|
|
|
@ -369,9 +369,6 @@
|
|||
/* Define to `int' if <sys/types.h> does not define. */
|
||||
#undef ssize_t
|
||||
|
||||
/* this is a quick hack. I hope it's correct. */
|
||||
#define ifr_dstaddr ifr_addr
|
||||
|
||||
/* Define if you have the ioctl function. */
|
||||
#define HAVE_IOCTL
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче