Commit 1fa3a5cc authored by Daniel Stenberg's avatar Daniel Stenberg
Browse files

Cory Nelson made libcurl use the WSAPoll() function if built for Windows

Vista (_WIN32_WINNT >= 0x0600)
parent fe8aee6b
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -6,6 +6,10 @@

                                  Changelog

Daniel (24 September 2006)
- Cory Nelson made libcurl use the WSAPoll() function if built for Windows
  Vista (_WIN32_WINNT >= 0x0600)

Daniel (23 September 2006)
- Mike Protts added --ftp-ssl-control to make curl use FTP-SSL, but only
  encrypt the control connection and use the data connection "plain".
+2 −1
Original line number Diff line number Diff line
@@ -11,6 +11,7 @@ Curl and libcurl 7.16.0

This release includes the following changes:

 o uses WSAPoll() on Windows Vista
 o (FTP) --ftp-ssl-control was added
 o CURLOPT_SSL_SESSIONID_CACHE and --no-sessionid added
 o CURLMOPT_PIPELINING added for enabling pipelined transfers
@@ -54,6 +55,6 @@ advice from friends like these:
 Domenico Andreoli, Armel Asselin, Gisle Vanem, Yang Tse, Andrew Biggs,
 Peter Sylvester, David McCreedy, Dmitriy Sergeyev, Dmitry Rechkin,
 Jari Sundell, Ravi Pratap, Michele Bini, Jeff Pohlmeyer, Michael Wallner,
 Mike Protts
 Mike Protts, Cory Nelson

        Thanks! (and sorry if I forgot to mention someone)
+8 −2
Original line number Diff line number Diff line
@@ -5,7 +5,7 @@
 *                            | (__| |_| |  _ <| |___
 *                             \___|\___/|_| \_\_____|
 *
 * Copyright (C) 1998 - 2005, Daniel Stenberg, <daniel@haxx.se>, et al.
 * Copyright (C) 1998 - 2006, Daniel Stenberg, <daniel@haxx.se>, et al.
 *
 * This software is licensed as described in the file COPYING, which
 * you should have received as part of this distribution. The terms
@@ -74,7 +74,7 @@
 */
int Curl_select(curl_socket_t readfd, curl_socket_t writefd, int timeout_ms)
{
#ifdef HAVE_POLL_FINE
#if defined(HAVE_POLL_FINE) || defined(CURL_HAVE_WSAPOLL)
  struct pollfd pfd[2];
  int num;
  int r;
@@ -92,9 +92,13 @@ int Curl_select(curl_socket_t readfd, curl_socket_t writefd, int timeout_ms)
    num++;
  }

#ifdef HAVE_POLL_FINE
  do {
    r = poll(pfd, num, timeout_ms);
  } while((r == -1) && (errno == EINTR));
#else
  r = WSAPoll(pfd, num, timeout_ms);
#endif

  if (r < 0)
    return -1;
@@ -194,6 +198,8 @@ int Curl_poll(struct pollfd ufds[], unsigned int nfds, int timeout_ms)
  do {
    r = poll(ufds, nfds, timeout_ms);
  } while((r == -1) && (errno == EINTR));
#elif defined(CURL_HAVE_WSAPOLL)
  r = WSAPoll(ufds, nfds, timeout_ms);
#else
  struct timeval timeout;
  struct timeval *ptimeout;
+5 −1
Original line number Diff line number Diff line
@@ -7,7 +7,7 @@
 *                            | (__| |_| |  _ <| |___
 *                             \___|\___/|_| \_\_____|
 *
 * Copyright (C) 1998 - 2004, Daniel Stenberg, <daniel@haxx.se>, et al.
 * Copyright (C) 1998 - 2006, Daniel Stenberg, <daniel@haxx.se>, et al.
 *
 * This software is licensed as described in the file COPYING, which
 * you should have received as part of this distribution. The terms
@@ -25,6 +25,10 @@

#ifdef HAVE_SYS_POLL_H
#include <sys/poll.h>
#elif defined(_WIN32_WINNT) && (_WIN32_WINNT >= 0x0600)
/* for Vista, use WSAPoll(). */
#include <winsock2.h>
#define CURL_HAVE_WSAPOLL
#else

#define POLLIN      0x01