diff options
Diffstat (limited to 'src/gnutls_io.c')
| -rw-r--r-- | src/gnutls_io.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/gnutls_io.c b/src/gnutls_io.c index acb6095..925517b 100644 --- a/src/gnutls_io.c +++ b/src/gnutls_io.c | |||
| @@ -399,6 +399,16 @@ tryagain: | |||
| 399 | else { | 399 | else { |
| 400 | /* all done with the handshake */ | 400 | /* all done with the handshake */ |
| 401 | ctxt->status = 1; | 401 | ctxt->status = 1; |
| 402 | /* If the session was resumed, we did not set the correct | ||
| 403 | * server_rec in ctxt->sc. Go Find it. (ick!) | ||
| 404 | */ | ||
| 405 | if (gnutls_session_is_resumed(ctxt->session)) { | ||
| 406 | mgs_srvconf_rec* sc; | ||
| 407 | sc = mgs_find_sni_server(ctxt->session); | ||
| 408 | if (sc) { | ||
| 409 | ctxt->sc = sc; | ||
| 410 | } | ||
| 411 | } | ||
| 402 | return 0; | 412 | return 0; |
| 403 | } | 413 | } |
| 404 | } | 414 | } |
