Merge remote-tracking branch 'phr0z3nt04st/master'
[umurmur.git] / src / ssl.h
index 27920e49b414a0dab06a803b9841675d3f92a8f8..5629c4c6507e468c3738c0abaeb5cbde49408ff6 100644 (file)
--- a/src/ssl.h
+++ b/src/ssl.h
 
 #ifdef USE_POLARSSL
 #include <polarssl/ssl.h>
+#include <polarssl/version.h>
+
+#ifndef POLARSSL_VERSION_MAJOR
+       #define POLARSSL_API_V0
+#else
+#if (POLARSSL_VERSION_MAJOR == 0)
+       #define POLARSSL_API_V0
 #else
+       #define POLARSSL_API_V1
+#endif
+#endif
+
+#else /* OpenSSL */
 #include <openssl/x509v3.h>
 #include <openssl/ssl.h>
 #endif
 #include <inttypes.h>
 
 #ifdef USE_POLARSSL
-#define SSLI_ERROR_WANT_READ -0x0F300 /* PolarSSL uses -0x0f00 -> --0x0f90 */
+#define SSLI_ERROR_WANT_READ -0x0F300 /* PolarSSL v0.x.x uses -0x0f00 -> --0x0f90, v1.x.x uses -0x7080 -> -0x7e80 */
 #define SSLI_ERROR_WANT_WRITE -0x0F310
+
+#ifdef POLARSSL_API_V1
+#define SSLI_ERROR_ZERO_RETURN 0
+#else
 #define SSLI_ERROR_ZERO_RETURN POLARSSL_ERR_NET_CONN_RESET
+#endif
 #define SSLI_ERROR_CONNRESET POLARSSL_ERR_NET_CONN_RESET
 #define SSLI_ERROR_SYSCALL POLARSSL_ERR_NET_RECV_FAILED