diff options
| author | zhengchao <[email protected]> | 2019-02-18 18:25:19 +0600 |
|---|---|---|
| committer | zhengchao <[email protected]> | 2019-02-18 18:25:19 +0600 |
| commit | 71f74524132bd693bd40f29bcb4a1b30fe1f258e (patch) | |
| tree | 7cf42d221203a320495634f00dcaf0501c512d38 | |
| parent | 2d34aafa48bac6002ad4c883f1b3d29663087150 (diff) | |
增加ssl_stream_dump_info函数,输出ssl版本号、sni,以进一步定位 #116
| -rw-r--r-- | platform/include/internal/ssl_stream.h | 3 | ||||
| -rw-r--r-- | platform/src/ssl_stream.cpp | 6 |
2 files changed, 7 insertions, 2 deletions
diff --git a/platform/include/internal/ssl_stream.h b/platform/include/internal/ssl_stream.h index f6bbfb1..5383495 100644 --- a/platform/include/internal/ssl_stream.h +++ b/platform/include/internal/ssl_stream.h @@ -22,8 +22,7 @@ struct bufferevent * ssl_downstream_create_result_release_bev(future_result_t * void ssl_async_downstream_create(struct future * f, struct ssl_mgr * mgr, struct ssl_stream * upstream, evutil_socket_t fd_downstream, int keyring_id, unsigned int thread_id); void ssl_stream_free_and_close_fd(struct ssl_stream * stream, struct event_base * evbase, evutil_socket_t fd); -void ssl_stream_log_error(struct bufferevent * bev, enum tfe_conn_dir dir, void* logger); - +const char* ssl_stream_dump_info(struct ssl_stream *stream, char* buffer, size_t sz); //Follow functions are allowed to call during runtime. int ssl_manager_add_trust_ca(struct ssl_mgr* mgr, const char* pem_file); int ssl_manager_del_trust_ca(struct ssl_mgr* mgr, const char* pem_file); diff --git a/platform/src/ssl_stream.cpp b/platform/src/ssl_stream.cpp index 14539bc..ccfd716 100644 --- a/platform/src/ssl_stream.cpp +++ b/platform/src/ssl_stream.cpp @@ -886,6 +886,12 @@ struct bufferevent * ssl_upstream_create_result_release_bev(future_result_t * re ctx->bev = NULL; //giveup ownership return ret; } +const char* ssl_stream_dump_info(struct ssl_stream *stream, char* buffer, size_t sz) +{ + snprintf(buffer, sz, "%s:%s", SSL_get_version(stream->ssl), + stream->dir==CONN_DIR_UPSTREAM ? stream->client_hello->sni:NULL); + return buffer; +} void ssl_stream_log_error(struct bufferevent * bev, enum tfe_conn_dir dir, struct ssl_mgr* mgr) { unsigned long sslerr=0; |
