]> git.sur5r.net Git - openldap/blobdiff - include/ac/socket.h
streamline group attr specification/diagnostics
[openldap] / include / ac / socket.h
index 6d08a34bd322e099df5063a6a5e875f6ffea3ca8..0496c4d62c92e079bf101ac64e00c7d6219e01ec 100644 (file)
@@ -2,7 +2,7 @@
 /* $OpenLDAP$ */
 /* This work is part of OpenLDAP Software <http://www.openldap.org/>.
  *
- * Copyright 1998-2004 The OpenLDAP Foundation.
+ * Copyright 1998-2007 The OpenLDAP Foundation.
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -23,6 +23,8 @@
 
 #ifdef HAVE_POLL_H
 #include <poll.h>
+#elif defined(HAVE_SYS_POLL_H)
+#include <sys/poll.h>
 #endif
 
 #ifdef HAVE_SYS_SOCKET_H
@@ -80,6 +82,7 @@
 #undef sock_errstr
 #define sock_errno()   errno
 #define sock_errstr(e) STRERROR(e)
+#define sock_errset(e) errno = (e)
 
 #ifdef HAVE_WINSOCK
 #      define tcp_read( s, buf, len )  recv( s, buf, len, 0 )
 
 #undef sock_errno
 #undef sock_errstr
+#undef sock_errset
 #define        sock_errno()    WSAGetLastError()
 #define        sock_errstr(e)  ber_pvt_wsa_err2string(e)
+#define        sock_errset(e)  WSASetLastError(e)
 
 LBER_F( char * ) ber_pvt_wsa_err2string LDAP_P((int));
 
@@ -217,4 +222,16 @@ LDAP_LUTIL_F( int ) getpeereid( int s, uid_t *, gid_t * );
 #define        NI_MAXHOST      256
 #endif
 
+#ifdef HAVE_POLL
+# ifndef INFTIM
+#  define INFTIM (-1)
+# endif
+#undef POLL_OTHER
+#define POLL_OTHER   (POLLERR|POLLHUP)
+#undef POLL_READ
+#define POLL_READ    (POLLIN|POLLPRI|POLL_OTHER)
+#undef POLL_WRITE              
+#define POLL_WRITE   (POLLOUT|POLL_OTHER)
+#endif
+
 #endif /* _AC_SOCKET_H_ */