Mercurial > cpython-lru_cache-weakref
diff Modules/socketmodule.c @ 10401:f81db738abd9 legacy-trunk
Patch by Rob Riggs for Linux -- glibc2 has a different argument
converntion for gethostbyname_r() etc. than Solaris!
| author | Guido van Rossum <guido@python.org> |
|---|---|
| date | Mon, 15 Mar 1999 21:40:14 +0000 |
| parents | 877d23bd5bdc |
| children | 9ba5dffccb1b |
line wrap: on
line diff
--- a/Modules/socketmodule.c Mon Mar 15 20:27:53 1999 +0000 +++ b/Modules/socketmodule.c Mon Mar 15 21:40:14 1999 +0000 @@ -334,6 +334,9 @@ char buf[1001]; int buf_len = (sizeof buf) - 1; int errnop; +#if defined(linux) && (__GLIBC__ >= 2) + int result; +#endif #endif /* HAVE_GETHOSTBYNAME_R */ memset((void *) addr_ret, '\0', sizeof(*addr_ret)); @@ -355,7 +358,11 @@ } Py_BEGIN_ALLOW_THREADS #ifdef HAVE_GETHOSTBYNAME_R +#if defined(linux) && (__GLIBC__ >= 2) + result = gethostbyname_r(name, &hp_allocated, buf, buf_len, &hp, &errnop); +#else hp = gethostbyname_r(name, &hp_allocated, buf, buf_len, &errnop); +#endif #else /* not HAVE_GETHOSTBYNAME_R */ #if defined(WITH_THREAD) && !defined(MS_WINDOWS) PyThread_acquire_lock(gethostbyname_lock,1); @@ -1407,6 +1414,9 @@ char buf[16384]; int buf_len = (sizeof buf) - 1; int errnop; +#if defined(linux) && (__GLIBC__ >= 2) + int result; +#endif #endif /* HAVE_GETHOSTBYNAME_R */ if (!PyArg_Parse(args, "s", &name)) return NULL; @@ -1414,7 +1424,11 @@ return NULL; Py_BEGIN_ALLOW_THREADS #ifdef HAVE_GETHOSTBYNAME_R +#if defined(linux) && (__GLIBC__ >= 2) + result = gethostbyname_r(name, &hp_allocated, buf, buf_len, &h, &errnop); +#else h = gethostbyname_r(name, &hp_allocated, buf, buf_len, &errnop); +#endif #else /* not HAVE_GETHOSTBYNAME_R */ #if defined(WITH_THREAD) && !defined(MS_WINDOWS) PyThread_acquire_lock(gethostbyname_lock,1); @@ -1449,6 +1463,9 @@ char buf[16384]; int buf_len = (sizeof buf) - 1; int errnop; +#if defined(linux) && (__GLIBC__ >= 2) + int result; +#endif #endif /* HAVE_GETHOSTBYNAME_R */ if (!PyArg_Parse(args, "s", &ip_num)) @@ -1457,10 +1474,17 @@ return NULL; Py_BEGIN_ALLOW_THREADS #ifdef HAVE_GETHOSTBYNAME_R +#if defined(linux) && (__GLIBC__ >= 2) + result = gethostbyaddr_r((char *)&addr.sin_addr, + sizeof(addr.sin_addr), + AF_INET, &hp_allocated, buf, buf_len, + &h, &errnop); +#else h = gethostbyaddr_r((char *)&addr.sin_addr, sizeof(addr.sin_addr), AF_INET, &hp_allocated, buf, buf_len, &errnop); +#endif #else /* not HAVE_GETHOSTBYNAME_R */ #if defined(WITH_THREAD) && !defined(MS_WINDOWS) PyThread_acquire_lock(gethostbyname_lock,1);
