20 #ifndef _tdsguard_hpUeh3TzYOzN1FtT39tMHz_ 21 #define _tdsguard_hpUeh3TzYOzN1FtT39tMHz_ 23 #ifndef _tdsguard_hfOrWb5znoUCWdBPoNQvqN_ 24 #error tds.h must be included before tls.h 28 # if defined(_THREAD_SAFE) && defined(TDS_HAVE_PTHREAD_MUTEX) 29 # include <freetds/thread.h> 30 # ifndef GNUTLS_USE_NETTLE 34 # include <gnutls/gnutls.h> 35 # include <gnutls/x509.h> 36 #elif defined(HAVE_OPENSSL) 37 # include <openssl/ssl.h> 38 # include <openssl/x509v3.h> 39 # include <openssl/err.h> 42 #include <freetds/pushvis.h> 44 #if defined(HAVE_GNUTLS) || defined(HAVE_OPENSSL) 49 TDSRET tds_ssl_init(
TDSSOCKET *tds,
bool full);
51 size_t tds_ssl_get_cb(
TDSCONNECTION * conn,
void *cb,
size_t cblen);
60 return gnutls_record_check_pending((gnutls_session_t) conn->tls_session);
64 tds_ssl_read(
TDSCONNECTION *conn,
unsigned char *buf,
int buflen)
66 return gnutls_record_recv((gnutls_session_t) conn->tls_session, buf, buflen);
70 tds_ssl_write(
TDSCONNECTION *conn,
const unsigned char *buf,
int buflen)
72 return gnutls_record_send((gnutls_session_t) conn->tls_session, buf, buflen);
81 #ifdef LIBRESSL_VERSION_NUMBER 82 #define TLS_ST_OK SSL_ST_OK 88 return SSL_pending((SSL *) conn->tls_session);
92 tds_ssl_read(
TDSCONNECTION *conn,
unsigned char *buf,
int buflen)
94 return SSL_read((SSL *) conn->tls_session, buf, buflen);
98 tds_ssl_write(
TDSCONNECTION *conn,
const unsigned char *buf,
int buflen)
100 return SSL_write((SSL *) conn->tls_session, buf, buflen);
109 tds_ssl_init(
TDSSOCKET *tds TDS_UNUSED,
bool full TDS_UNUSED)
126 tds_ssl_read(
TDSCONNECTION *conn TDS_UNUSED,
unsigned char *buf TDS_UNUSED,
int buflen TDS_UNUSED)
132 tds_ssl_write(
TDSCONNECTION *conn TDS_UNUSED,
const unsigned char *buf TDS_UNUSED,
int buflen TDS_UNUSED)
138 tds_ssl_get_cb(
TDSCONNECTION *conn TDS_UNUSED,
void *cb TDS_UNUSED,
size_t cblen TDS_UNUSED)
144 #include <freetds/popvis.h> Information for a server connection.
Definition: tds.h:1170