Lines Matching defs:ctx
28 lcs_init_compression_brotli(lws_comp_ctx_t *ctx, int decomp)
30 ctx->is_decompression = (unsigned char)!!decomp;
33 ctx->u.br_en = BrotliEncoderCreateInstance(NULL, NULL, NULL);
34 if (ctx->u.br_en) {
35 BrotliEncoderSetParameter(ctx->u.br_en,
37 BrotliEncoderSetParameter(ctx->u.br_en,
42 ctx->u.br_de = BrotliDecoderCreateInstance(NULL, NULL, NULL);
44 return !ctx->u.br_de;
48 lcs_process_brotli(lws_comp_ctx_t *ctx, const void *in, size_t *ilen_iused,
62 if (!ctx->is_decompression) {
64 if (!a_in && !BrotliEncoderHasMoreOutput(ctx->u.br_en)) {
71 if (!ctx->buflist_comp && ctx->final_on_input_side)
74 if (BrotliEncoderCompressStream(ctx->u.br_en, n, &a_in, &n_in,
82 ctx->may_have_more = !a_out;
85 n = BrotliDecoderDecompressStream(ctx->u.br_de, &a_in, &n_in,
99 if (!ctx->is_decompression)
100 return BrotliEncoderIsFinished(ctx->u.br_en);
102 return BrotliDecoderIsFinished(ctx->u.br_de);
106 lcs_destroy_brotli(lws_comp_ctx_t *ctx)
108 if (!ctx)
111 if (!(*ctx).is_decompression)
112 BrotliEncoderDestroyInstance((*ctx).u.br_en);
114 BrotliDecoderDestroyInstance((*ctx).u.br_de);
116 (*ctx).u.generic_ctx_ptr = NULL;