added error return and available check
[umurmur.git] / src / ssli_gnutls.c
index dde1909de1abb35ca4bc805f60f457b0e6967d58..b2e149e719d399b77b82a9d3c3aa470c12f73a25 100644 (file)
@@ -85,7 +85,7 @@ int SSLi_nonblockaccept( SSL_handle_t *session, bool_t * isSSLReady )
   {
   int error;
   do {
-  gnutls_handshake(*session);
+    gnutls_handshake(*session);
   } while(error < GNUTLS_E_SUCCESS && !gnutls_error_is_fatal(error));
 
   if ( error < GNUTLS_E_SUCCESS ) {
@@ -95,4 +95,28 @@ int SSLi_nonblockaccept( SSL_handle_t *session, bool_t * isSSLReady )
   return error;
   }
 
+int SSLi_read(SSL_handle_t *session, uint8_t *buffer, int length)
+  {
+  return gnutls_record_recv(*session, buffer, length);
+  }
+
+int SSLi_write(SSL_handle_t *session, uint8_t *buffer, int length)
+  {
+  return gnutls_record_send(*session, buffer, length);
+  }
+
+int SSLi_get_error(SSL_handle_t *session, int code)
+  {
+  return code;
+  }
+
+bool_t SSLi_data_pending(SSL_handle_t *session)
+  {
+  return gnutls_record_check_pending(*session);
+  }
+
+void SSLi_shutdown(SSL_handle_t *ssl)
+  {
+  }
 
+void SSLi_free(SSL_handle_t *ssl) {}