GNU libmicrohttpd 1.0.9
Loading...
Searching...
No Matches
mhd_opt_matrix.h
Go to the documentation of this file.
1/*
2 This file is part of GNU libmicrohttpd
3 Copyright (C) 2026 Christian Grothoff
4
5 GNU libmicrohttpd is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 This library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the GNU Lesser General Public
16 License along with GNU libmicrohttpd.
17 If not, see <http://www.gnu.org/licenses/>.
18*/
19
83#ifndef MHD_OPT_MATRIX_H
84#define MHD_OPT_MATRIX_H 1
85
86#include <stddef.h>
87#include <microhttpd.h>
88
92#define MHD_OPT_MATRIX_PROFILE_ENV "MHD_TEST_PROFILE"
93
97#define MHD_OPT_MATRIX_MEM_ENV "MHD_TEST_MEM_LIMIT"
98
102#define MHD_OPT_MATRIX_DISCP_ENV "MHD_TEST_DISCIPLINE"
103
108#define MHD_OPT_MATRIX_STRICT_ENV "MHD_TEST_STRICT_FOR_CLIENT"
109
113#define MHD_OPT_MATRIX_THREADING_ENV "MHD_TEST_THREADING"
114
118#define MHD_OPT_MATRIX_POLL_ENV "MHD_TEST_POLL"
119
145
146
167
168
220
221
225unsigned int
227
228
239const struct MHD_OptMatrixProfile *
240mhd_opt_matrix_profile (unsigned int idx);
241
242
249const struct MHD_OptMatrixProfile *
250mhd_opt_matrix_lookup (const char *name_or_idx);
251
252
260const struct MHD_OptMatrixProfile *
262
263
277int
279
280
288int
290
291
300const char *
302 char *buf,
303 size_t buf_size);
304
305
327unsigned int
329 struct MHD_OptionItem *ops,
330 unsigned int max_ops);
331
332
344unsigned int
346 unsigned int base_flags,
347 int allow_external);
348
349
356int
358
359
372int
374 size_t min_limit);
375
376
383void
384mhd_opt_matrix_print_notice (const char *test_name);
385
386
387#endif /* MHD_OPT_MATRIX_H */
MHD_OptMatrixThreading
@ MHD_OPT_MATRIX_THR_EXTERNAL
@ MHD_OPT_MATRIX_THR_POOL
@ MHD_OPT_MATRIX_THR_INTERNAL
@ MHD_OPT_MATRIX_THR_PER_CONNECTION
unsigned int mhd_opt_matrix_num_profiles(void)
const struct MHD_OptMatrixProfile * mhd_opt_matrix_lookup(const char *name_or_idx)
const struct MHD_OptMatrixProfile * mhd_opt_matrix_profile(unsigned int idx)
const struct MHD_OptMatrixProfile * mhd_opt_matrix_from_env(void)
int mhd_opt_matrix_profile_supported(const struct MHD_OptMatrixProfile *prof)
unsigned int mhd_opt_matrix_fill_options(const struct MHD_OptMatrixProfile *prof, struct MHD_OptionItem *ops, unsigned int max_ops)
int mhd_opt_matrix_effective_discipline(const struct MHD_OptMatrixProfile *prof)
const char * mhd_opt_matrix_describe(const struct MHD_OptMatrixProfile *prof, char *buf, size_t buf_size)
void mhd_opt_matrix_print_notice(const char *test_name)
int mhd_opt_matrix_raise_mem_limit(struct MHD_OptMatrixProfile *prof, size_t min_limit)
MHD_OptMatrixPoll
@ MHD_OPT_MATRIX_POLL_POLL
@ MHD_OPT_MATRIX_POLL_EPOLL
@ MHD_OPT_MATRIX_POLL_SELECT
int mhd_opt_matrix_is_external(const struct MHD_OptMatrixProfile *prof)
unsigned int mhd_opt_matrix_daemon_flags(const struct MHD_OptMatrixProfile *prof, unsigned int base_flags, int allow_external)
public interface to libmicrohttpd
enum MHD_OptMatrixThreading threading
enum MHD_OptMatrixPoll poll_backend
unsigned int thread_pool_size