Lines Matching defs:wsi
83 * give him a fake wsi with context + vhost set, so he can use
86 plwsa->vhost = vhost; /* not a real bound wsi */
128 lws_server_socket_service_ssl(struct lws *wsi, lws_sockfd_type accept_fd, char from_pollin)
130 struct lws_context *context = wsi->a.context;
131 struct lws_context_per_thread *pt = &context->pt[(int)wsi->tsi];
136 if (!LWS_SSL_ENABLED(wsi->a.vhost))
139 switch (lwsi_state(wsi)) {
142 if (wsi->tls.ssl)
147 if (lws_tls_restrict_borrow(wsi)) {
152 if (lws_tls_server_new_nonblocking(wsi, accept_fd)) {
156 lws_tls_restrict_return(wsi);
165 lwsi_set_state(wsi, LRS_SSL_ACK_PENDING);
168 if (__insert_wsi_socket_into_fds(context, wsi)) {
174 lws_set_timeout(wsi, PENDING_TIMEOUT_SSL_ACCEPT,
183 if (lws_change_pollfd(wsi, LWS_POLLOUT, 0)) {
188 if (wsi->a.vhost->tls.allow_non_ssl_on_ssl_port && !wsi->skip_fallback) {
194 s = recv(wsi->desc.sockfd, (char *)pt->serv_buf,
232 wsi->tls.use_ssl = 0;
234 lws_tls_server_abort_connection(wsi);
236 * care... this creates wsi with no ssl when ssl
239 wsi->tls.ssl = NULL;
241 if (lws_check_opt(wsi->a.vhost->options,
245 wsi->tls.redirect_to_https = 1;
249 if (lws_check_opt(wsi->a.vhost->options,
257 if (lws_check_opt(wsi->a.vhost->options,
259 if (lws_http_to_fallback(wsi, NULL, 0))
268 __func__, wsi->a.vhost->name);
305 if (lws_change_pollfd(wsi, 0, LWS_POLLIN)) {
319 n = lws_tls_server_accept(wsi);
323 lws_tls_restrict_return_handshake(wsi);
326 lws_tls_restrict_return_handshake(wsi);
328 __func__, wsi->desc.sockfd, n);
329 wsi->socket_is_permanently_unusable = 1;
339 if (!vh->being_destroyed && wsi->tls.ssl &&
340 vh->tls.ssl_ctx == lws_tls_ctx_from_wsi(wsi)) {
341 lwsl_info("setting wsi to vh %s\n", vh->name);
342 lws_vhost_bind_wsi(vh, wsi);
349 lws_set_timeout(wsi, PENDING_TIMEOUT_ESTABLISH_WITH_SERVER,
352 lwsi_set_state(wsi, LRS_ESTABLISHED);
353 if (lws_tls_server_conn_alpn(wsi)) {
367 lwsi_set_state(wsi, LRS_ESTABLISHED);