rc = ldap_int_poll( ld, s, opt_tv );
-#if 0
-#ifdef HAVE_POLL
- {
- struct pollfd fd;
- int timeout = INFTIM;
-
- if( opt_tv != NULL ) timeout = TV2MILLISEC( &tv );
-
- fd.fd = s;
- fd.events = POLL_WRITE;
-
- do {
- fd.revents = 0;
- rc = poll( &fd, 1, timeout );
- } while( rc == AC_SOCKET_ERROR && errno == EINTR &&
- LDAP_BOOL_GET(&ld->ld_options, LDAP_BOOL_RESTART ));
-
- if( rc == AC_SOCKET_ERROR ) return rc;
-
- if( fd.revents & POLL_WRITE ) {
- if ( ldap_pvt_is_socket_ready(ld, s) == -1 ) return -1;
- if ( ldap_pvt_ndelay_off(ld, s) == -1 ) return -1;
- return ( 0 );
- }
- }
-#else
- {
- fd_set wfds, *z=NULL;
-#ifdef HAVE_WINSOCK
- fd_set efds;
-#endif
-
-#if defined( FD_SETSIZE ) && !defined( HAVE_WINSOCK )
- if ( s >= FD_SETSIZE ) {
- rc = AC_SOCKET_ERROR;
- tcp_close( s );
- ldap_pvt_set_errno( EMFILE );
- return rc;
- }
-#endif
-
- do {
- FD_ZERO(&wfds);
- FD_SET(s, &wfds );
-
-#ifdef HAVE_WINSOCK
- FD_ZERO(&efds);
- FD_SET(s, &efds );
-#endif
-
- rc = select(ldap_int_tblsize, z, &wfds,
-#ifdef HAVE_WINSOCK
- &efds,
-#else
- z,
-#endif
- opt_tv ? &tv : NULL);
- } while( rc == AC_SOCKET_ERROR && errno == EINTR &&
- LDAP_BOOL_GET(&ld->ld_options, LDAP_BOOL_RESTART ));
-
- if( rc == AC_SOCKET_ERROR ) return rc;
-
-#ifdef HAVE_WINSOCK
- /* This means the connection failed */
- if ( FD_ISSET(s, &efds) ) {
- int so_errno;
- int dummy = sizeof(so_errno);
- if ( getsockopt( s, SOL_SOCKET, SO_ERROR,
- (char *) &so_errno, &dummy ) == AC_SOCKET_ERROR || !so_errno )
- {
- /* impossible */
- so_errno = WSAGetLastError();
- }
- ldap_pvt_set_errno(so_errno);
- osip_debug(ld, "ldap_pvt_connect: error on socket %d: "
- "errno: %d (%s)\n", s, errno, sock_errstr(errno));
- return -1;
- }
-#endif
- if ( FD_ISSET(s, &wfds) ) {
-#ifndef HAVE_WINSOCK
- if ( ldap_pvt_is_socket_ready(ld, s) == -1 ) return -1;
-#endif
- if ( ldap_pvt_ndelay_off(ld, s) == -1 ) return -1;
- return 0;
- }
- }
-#endif
-
-#endif
-
osip_debug(ld, "ldap_pvt_connect: %d\n", rc, 0, 0);
+
return rc;
}