diff options
-rw-r--r-- | src/sslkeylog.c | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/sslkeylog.c b/src/sslkeylog.c index 065a717..bf5dca4 100644 --- a/src/sslkeylog.c +++ b/src/sslkeylog.c @@ -147,3 +147,27 @@ int SSL_accept(SSL *ssl) tap_ssl_key(ssl, &state); return ret; } + +int SSL_read(SSL *ssl, void *buf, int num) +{ + static int (*func)(); + if (!func) { + func = dlsym(RTLD_NEXT, __func__); + } + SSL_TAP_STATE(state, ssl); + int ret = func(ssl, buf, num); + tap_ssl_key(ssl, &state); + return ret; +} + +int SSL_write(SSL *ssl, const void *buf, int num) +{ + static int (*func)(); + if (!func) { + func = dlsym(RTLD_NEXT, __func__); + } + SSL_TAP_STATE(state, ssl); + int ret = func(ssl, buf, num); + tap_ssl_key(ssl, &state); + return ret; +} |