Lines Matching defs:vh
51 lws_dll2_remove(&ts->list); /* vh lock */
57 __lws_tls_session_lookup_by_name(struct lws_vhost *vh, const char *name)
60 lws_dll2_get_head(&vh->tls_sessions)) {
87 lws_vhost_lock(wsi->a.vhost); /* -------------- vh { */
122 lws_vhost_unlock(wsi->a.vhost); /* } vh -------------- */
152 lws_tls_session_vh_destroy(struct lws_vhost *vh)
154 lws_dll2_foreach_safe(&vh->tls_sessions, NULL,
162 struct lws_vhost *vh = lws_container_of(ts->list.owner,
165 lws_context_lock(vh->context, __func__); /* -------------- cx { */
166 lws_vhost_lock(vh); /* -------------- vh { */
168 lws_vhost_unlock(vh); /* } vh -------------- */
169 lws_context_unlock(vh->context); /* } cx -------------- */
173 lws_tls_session_add_entry(struct lws_vhost *vh, const char *tag)
178 if (vh->tls_sessions.count == (vh->tls_session_cache_max ?
179 vh->tls_session_cache_max : 10)) {
185 ts = lws_container_of(vh->tls_sessions.head,
191 lws_vhost_lock(vh); /* -------------- vh { */
193 lws_vhost_unlock(vh); /* } vh -------------- */
205 lws_dll2_add_tail(&ts->list, &vh->tls_sessions);
216 struct lws_vhost *vh;
229 vh = wsi->a.vhost;
230 if (vh->options & LWS_SERVER_OPTION_DISABLE_TLS_SESSION_CACHE)
240 lws_context_lock(vh->context, __func__); /* -------------- cx { */
241 lws_vhost_lock(vh); /* -------------- vh { */
243 ts = __lws_tls_session_lookup_by_name(vh, tag);
246 ts = lws_tls_session_add_entry(vh, tag);
274 lws_dll2_add_tail(&ts->list, &vh->tls_sessions);
279 lws_vhost_unlock(vh); /* } vh -------------- */
280 lws_context_unlock(vh->context); /* } cx -------------- */
283 sess, wsi->lc.gutag, disposition, tag, ttl, vh->name,
284 vh->tls_sessions.count);
294 lws_vhost_unlock(vh); /* } vh -------------- */
295 lws_context_unlock(vh->context); /* } cx -------------- */
342 lws_tls_session_cache(struct lws_vhost *vh, uint32_t ttl)
346 if (vh->options & LWS_SERVER_OPTION_DISABLE_TLS_SESSION_CACHE)
349 cmode = SSL_CTX_get_session_cache_mode(vh->tls.ssl_client_ctx);
351 SSL_CTX_set_session_cache_mode(vh->tls.ssl_client_ctx,
354 SSL_CTX_sess_set_new_cb(vh->tls.ssl_client_ctx, lws_tls_session_new_cb);
360 SSL_CTX_set_timeout(vh->tls.ssl_client_ctx, ttl);
362 SSL_CTX_set_timeout(vh->tls.ssl_client_ctx, (long)ttl);
367 lws_tls_session_dump_save(struct lws_vhost *vh, const char *host, uint16_t port,
375 if (vh->options & LWS_SERVER_OPTION_DISABLE_TLS_SESSION_CACHE)
378 lws_tls_session_tag_discrete(vh->name, host, port, d.tag, sizeof(d.tag));
380 lws_context_lock(vh->context, __func__); /* -------------- cx { */
381 lws_vhost_lock(vh); /* -------------- vh { */
383 ts = __lws_tls_session_lookup_by_name(vh, d.tag);
403 if (cb_save(vh->context, &d))
412 lws_vhost_unlock(vh); /* } vh -------------- */
413 lws_context_unlock(vh->context); /* } cx -------------- */
419 lws_tls_session_dump_load(struct lws_vhost *vh, const char *host, uint16_t port,
427 if (vh->options & LWS_SERVER_OPTION_DISABLE_TLS_SESSION_CACHE)
431 lws_tls_session_tag_discrete(vh->name, host, port, d.tag, sizeof(d.tag));
433 lws_context_lock(vh->context, __func__); /* -------------- cx { */
434 lws_vhost_lock(vh); /* -------------- vh { */
436 ts = __lws_tls_session_lookup_by_name(vh, d.tag);
448 if (cb_load(vh->context, &d)) {
466 lws_vhost_lock(vh); /* -------------- vh { */
467 ts = lws_tls_session_add_entry(vh, d.tag);
468 lws_vhost_unlock(vh); /* } vh -------------- */
478 lws_vhost_unlock(vh); /* } vh -------------- */
479 lws_context_unlock(vh->context); /* } cx -------------- */
487 lws_vhost_unlock(vh); /* } vh -------------- */
488 lws_context_unlock(vh->context); /* } cx -------------- */