mirror of
https://github.com/apache/httpd.git
synced 2025-08-01 07:26:57 +03:00
calculate VHostID length at startup rather than request time.
change ap_md5() call in ssl_hook_pre_connection() to ap_md5_binary() that uses the precalculated sc->nVHostID_length to avoid a strlen() call. PR: Obtained from: Submitted by: Reviewed by: git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92216 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
@ -262,7 +262,7 @@ static int ssl_hook_pre_connection(conn_rec *c)
|
||||
return DECLINED; /* XXX */
|
||||
}
|
||||
SSL_clear(ssl);
|
||||
cpVHostMD5 = ap_md5(c->pool, sc->szVHostID);
|
||||
cpVHostMD5 = ap_md5_binary(c->pool, sc->szVHostID, sc->nVHostID_length);
|
||||
if (!SSL_set_session_id_context(ssl, (unsigned char *)cpVHostMD5,
|
||||
MD5_DIGESTSIZE*2)) {
|
||||
ssl_log(c->base_server, SSL_LOG_ERROR|SSL_ADD_SSLERR,
|
||||
|
@ -498,6 +498,7 @@ typedef struct {
|
||||
*/
|
||||
typedef struct {
|
||||
const char *szVHostID;
|
||||
int nVHostID_length;
|
||||
BOOL bEnabled;
|
||||
apr_table_t *ap_server_ctx;
|
||||
const char *szPublicCertFile[SSL_AIDX_MAX];
|
||||
|
@ -477,6 +477,7 @@ void ssl_init_ConfigureServer(server_rec *s, apr_pool_t *p, SSLSrvConfigRec *sc)
|
||||
* Create the server host:port string because we need it a lot
|
||||
*/
|
||||
sc->szVHostID = cpVHostID = ssl_util_vhostid(p, s);
|
||||
sc->nVHostID_length = strlen(sc->szVHostID);
|
||||
|
||||
/*
|
||||
* Now check for important parameters and the
|
||||
|
Reference in New Issue
Block a user