diff --git a/lib/libwebsockets.c b/lib/libwebsockets.c index d0810750..b0b05560 100755 --- a/lib/libwebsockets.c +++ b/lib/libwebsockets.c @@ -1248,6 +1248,14 @@ lws_is_ssl(struct lws *wsi) #endif } +#ifdef LWS_OPENSSL_SUPPORT +LWS_VISIBLE SSL* +lws_get_ssl(struct lws *wsi) +{ + return wsi->ssl; +} +#endif + LWS_VISIBLE int lws_partial_buffered(struct lws *wsi) { diff --git a/lib/libwebsockets.h b/lib/libwebsockets.h index 5c102f8f..410ef7b4 100644 --- a/lib/libwebsockets.h +++ b/lib/libwebsockets.h @@ -3979,6 +3979,17 @@ lws_is_ssl(struct lws *wsi); */ LWS_VISIBLE LWS_EXTERN int lws_is_cgi(struct lws *wsi); + +#ifdef LWS_OPENSSL_SUPPORT +/** + * lws_get_ssl() - Return wsi's SSL context structure + * \param wsi: websocket connection + * + * Returns pointer to the SSL library's context structure + */ +LWS_VISIBLE LWS_EXTERN SSL* +lws_get_ssl(struct lws *wsi); +#endif ///@}