Lines Matching defs:wsi

39 lws_http_compression_validate(struct lws *wsi)
44 wsi->http.comp_accept_mask = 0;
46 if (!wsi->http.ah || !lwsi_role_server(wsi))
49 a = lws_hdr_simple_ptr(wsi, WSI_TOKEN_HTTP_ACCEPT_ENCODING);
55 wsi->http.comp_accept_mask = (uint8_t)(wsi->http.comp_accept_mask | (1 << n));
61 lws_http_compression_apply(struct lws *wsi, const char *name,
74 if (!decomp && !(wsi->http.comp_accept_mask & (1 << n)))
84 lcs_available[n]->init_compression(&wsi->http.comp_ctx, decomp);
85 if (!wsi->http.comp_ctx.u.generic_ctx_ptr) {
90 wsi->http.lcs = lcs_available[n];
91 wsi->http.comp_ctx.may_have_more = 0;
92 wsi->http.comp_ctx.final_on_input_side = 0;
93 wsi->http.comp_ctx.chunking = 0;
94 wsi->http.comp_ctx.is_decompression = !!decomp;
96 if (lws_add_http_header_by_token(wsi, WSI_TOKEN_HTTP_CONTENT_ENCODING,
102 lws_wsi_tag(wsi), lcs_available[n]->encoding_name);
108 lws_http_compression_destroy(struct lws *wsi)
110 if (!wsi->http.lcs || !wsi->http.comp_ctx.u.generic_ctx_ptr)
113 wsi->http.lcs->destroy(&wsi->http.comp_ctx);
115 wsi->http.lcs = NULL;
121 * wsi->buflist_comp stashes pre-transform input that was not yet compressed
125 lws_http_compression_transform(struct lws *wsi, unsigned char *buf,
131 lws_comp_ctx_t *ctx = &wsi->http.comp_ctx;
135 if (!wsi->http.lcs ||
168 __func__, lws_wsi_tag(wsi), (int)len);
175 lws_wsi_tag(wsi), (int)len);
182 __func__, lws_wsi_tag(wsi), (int)ilen_iused, (int)*olen_oused);
184 n = wsi->http.lcs->process(ctx, buf, &ilen_iused, *outbuf, olen_oused);
196 lwsl_debug("%s: %s: more %d, ilen_iused %d\n", __func__, lws_wsi_tag(wsi),
208 lws_wsi_tag(wsi), (int)len, ctx->buflist_comp);
224 lws_callback_on_writable(wsi);