X-Git-Url: http://git.cascardo.eti.br/?a=blobdiff_plain;f=ssl_server.c;h=17743e21c8571352ad3578258f6c9c7622b0da40;hb=7d977044b91b7397600510842ff71d9693938a51;hp=3397ae11cf98d162bbc1d4764aeae1f484ec6dcf;hpb=34b1d8c1867c8287d8cfd6cc5d807ea2e9e3f70e;p=cascardo%2Frnetproxy.git diff --git a/ssl_server.c b/ssl_server.c index 3397ae1..17743e2 100644 --- a/ssl_server.c +++ b/ssl_server.c @@ -25,14 +25,13 @@ #include "ssl.h" static struct ssl_data * -ssl_data_new (char *server) +ssl_data_new (void) { struct ssl_data *ssl; int kx_prio[] = {GNUTLS_KX_RSA, 0}; gnutls_certificate_credentials cred; gnutls_certificate_allocate_credentials (&cred); ssl = g_slice_new (struct ssl_data); - ssl->server = g_strdup (server); gnutls_init (&ssl->session, GNUTLS_CLIENT); gnutls_set_default_priority (ssl->session); gnutls_set_default_priority (ssl->session); @@ -47,7 +46,6 @@ static void ssl_data_destroy (struct ssl_data *ssl) { gnutls_deinit (ssl->session); - g_free (ssl->server); g_string_free (ssl->buffer, TRUE); g_slice_free (struct ssl_data, ssl); } @@ -60,8 +58,8 @@ ssl_push (gnutls_transport_ptr_t ptr, const void *buffer, size_t len) int r; if (ssl->handshaking == TRUE) { - r = hc_conn_read (hook->conn, buffer, len); - return r; + hc_conn_write (hook->conn, (void *) buffer, len); + return len; } hc_conn_write (hook->conn, (void *) buffer, len); return len; @@ -167,7 +165,7 @@ ssl_server_hook_new (net_hook_t *client_hook, char *server, char *port) hook->connect = ssl_server_connect; hook->close = ssl_server_close; hook->read = ssl_server_read; - hook->data = ssl_data_new (server); + hook->data = ssl_data_new (); hook->conn = hc_conn_new (hc_tcp_connect (server, port), nethook_event, hook); return hook; }