Welcome! Log In Create A New Profile

Advanced

[PATCH] SNI: add $ssl_servername variable.

Piotr Sikora
May 21, 2013 07:14PM
# HG changeset patch
# User Piotr Sikora <piotr@cloudflare.com>
# Date 1369177341 25200
# Node ID 4d617cb445673c8e3c43d75c240a7d401b394ee8
# Parent 8646199ded31a725bea599aeafc581f9c969872d
SNI: add $ssl_servername variable.

Signed-off-by: Piotr Sikora <piotr@cloudflare.com>

diff -r 8646199ded31 -r 4d617cb44567 src/event/ngx_event_openssl.c
--- a/src/event/ngx_event_openssl.c Tue May 21 16:02:10 2013 -0700
+++ b/src/event/ngx_event_openssl.c Tue May 21 16:02:21 2013 -0700
@@ -2221,6 +2221,21 @@


ngx_int_t
+ngx_ssl_get_servername(ngx_connection_t *c, ngx_pool_t *pool, ngx_str_t *s)
+{
+#ifdef SSL_CTRL_SET_TLSEXT_HOSTNAME
+ if (c->ssl->servername) {
+ *s = *c->ssl->servername;
+ return NGX_OK;
+ }
+#endif
+
+ s->len = 0;
+ return NGX_OK;
+}
+
+
+ngx_int_t
ngx_ssl_get_session_id(ngx_connection_t *c, ngx_pool_t *pool, ngx_str_t *s)
{
int len;
diff -r 8646199ded31 -r 4d617cb44567 src/event/ngx_event_openssl.h
--- a/src/event/ngx_event_openssl.h Tue May 21 16:02:10 2013 -0700
+++ b/src/event/ngx_event_openssl.h Tue May 21 16:02:21 2013 -0700
@@ -146,6 +146,8 @@
ngx_str_t *s);
ngx_int_t ngx_ssl_get_cipher_name(ngx_connection_t *c, ngx_pool_t *pool,
ngx_str_t *s);
+ngx_int_t ngx_ssl_get_servername(ngx_connection_t *c, ngx_pool_t *pool,
+ ngx_str_t *s);
ngx_int_t ngx_ssl_get_session_id(ngx_connection_t *c, ngx_pool_t *pool,
ngx_str_t *s);
ngx_int_t ngx_ssl_get_raw_certificate(ngx_connection_t *c, ngx_pool_t *pool,
diff -r 8646199ded31 -r 4d617cb44567 src/http/modules/ngx_http_ssl_module.c
--- a/src/http/modules/ngx_http_ssl_module.c Tue May 21 16:02:10 2013 -0700
+++ b/src/http/modules/ngx_http_ssl_module.c Tue May 21 16:02:21 2013 -0700
@@ -238,6 +238,9 @@
{ ngx_string("ssl_cipher"), NULL, ngx_http_ssl_static_variable,
(uintptr_t) ngx_ssl_get_cipher_name, NGX_HTTP_VAR_CHANGEABLE, 0 },

+ { ngx_string("ssl_servername"), NULL, ngx_http_ssl_variable,
+ (uintptr_t) ngx_ssl_get_servername, NGX_HTTP_VAR_CHANGEABLE, 0 },
+
{ ngx_string("ssl_session_id"), NULL, ngx_http_ssl_variable,
(uintptr_t) ngx_ssl_get_session_id, NGX_HTTP_VAR_CHANGEABLE, 0 },

_______________________________________________
nginx-devel mailing list
nginx-devel@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-devel
Subject Author Views Posted

[PATCH] SNI: add $ssl_servername variable.

Piotr Sikora 709 May 21, 2013 07:14PM



Sorry, you do not have permission to post/reply in this forum.

Online Users

Guests: 187
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready