/src/dovecot/src/lib/mempool.h
Line | Count | Source |
1 | | #ifndef MEMPOOL_H |
2 | | #define MEMPOOL_H |
3 | | |
4 | | #include "macros.h" |
5 | | |
6 | | /* When DEBUG is enabled, Dovecot warns whenever a memory pool is grown. |
7 | | This is done so that the initial pool size could be set large enough so that |
8 | | it wouldn't grow in normal use. For some memory pools it's too difficult |
9 | | to calculate a good initial size, so this prefix should be used with those |
10 | | pools to disable the warning. */ |
11 | 142k | #define MEMPOOL_GROWING "GROWING-" |
12 | | |
13 | | /* The maximum allocation size that's allowed. Anything larger than that |
14 | | will panic. No pool ever should need more than 4kB of overhead per |
15 | | allocation. */ |
16 | | #define POOL_MAX_ALLOC_SIZE (SSIZE_T_MAX - 4096) |
17 | | |
18 | | /* Memory allocated and reallocated (the new data in it) in pools is always |
19 | | zeroed, it will cost only a few CPU cycles and may well save some debug |
20 | | time. */ |
21 | | |
22 | | /* All pool memory operations - p_malloc(), p_realloc(), p_free() and the |
23 | | p_new()/p_strdup*() helpers built on them - preserve errno. This means an |
24 | | allocation between a failing syscall and reading errno (e.g. when building |
25 | | an error string with "%m") will not clobber errno. The same guarantee holds |
26 | | for the t_* (data stack) and i_* (default pool) allocators. */ |
27 | | |
28 | | typedef struct pool *pool_t; |
29 | | |
30 | | struct pool_vfuncs { |
31 | | const char *(*get_name)(pool_t pool); |
32 | | |
33 | | void (*ref)(pool_t pool); |
34 | | void (*unref)(pool_t *pool); |
35 | | |
36 | | void *(*malloc)(pool_t pool, size_t size) ATTR_RETURNS_NONNULL; |
37 | | void (*free)(pool_t pool, void *mem); |
38 | | |
39 | | /* memory in old_size..new_size will be zeroed */ |
40 | | void *(*realloc)(pool_t pool, void *mem, |
41 | | size_t old_size, size_t new_size) |
42 | | ATTR_WARN_UNUSED_RESULT ATTR_RETURNS_NONNULL; |
43 | | |
44 | | /* Frees all the memory in pool. NOTE: system_pool doesn't support |
45 | | this and crashes if it's used */ |
46 | | void (*clear)(pool_t pool); |
47 | | |
48 | | /* Returns the maximum amount of bytes that can be allocated with |
49 | | minimal trouble. If there's no such concept, always returns 0. */ |
50 | | size_t (*get_max_easy_alloc_size)(pool_t pool); |
51 | | }; |
52 | | |
53 | | struct pool { |
54 | | const struct pool_vfuncs *v; |
55 | | ARRAY(pool_t) external_refs; |
56 | | |
57 | | bool alloconly_pool:1; |
58 | | bool datastack_pool:1; |
59 | | }; |
60 | | |
61 | | /* system_pool uses calloc() + realloc() + free() */ |
62 | | extern pool_t system_pool; |
63 | | extern struct pool static_system_pool; |
64 | | |
65 | | /* memory allocated from data_stack is valid only until next t_pop() call. |
66 | | No checks are performed. */ |
67 | | extern pool_t unsafe_data_stack_pool; |
68 | | |
69 | | /* null_pool can be used to have a memory pool where referencing and |
70 | | unreferencing it are ignored. Any attempt to allocate memory from it will |
71 | | panic. */ |
72 | | extern pool_t null_pool; |
73 | | |
74 | | /* Create a new alloc-only pool. Note that `size' specifies the initial |
75 | | malloc()ed block size, part of it is used internally. */ |
76 | | pool_t pool_alloconly_create(const char *name, size_t size); |
77 | | /* Like alloconly pool, but clear the memory before freeing it. The idea is |
78 | | that you could allocate memory for storing sensitive information from this |
79 | | pool, and be sure that it gets cleared from the memory when it's no longer |
80 | | needed. */ |
81 | | pool_t pool_alloconly_create_clean(const char *name, size_t size); |
82 | | |
83 | | /* When allocating memory from returned pool, the data stack frame must be |
84 | | the same as it was when calling this function. pool_unref() also checks |
85 | | that the stack frame is the same. This should make it quite safe to use. */ |
86 | | pool_t pool_datastack_create(void); |
87 | | |
88 | | /* Create new alloc pool. This is very similar to system pool, but it |
89 | | will deallocate all memory on deinit. */ |
90 | | pool_t pool_allocfree_create(const char *name); |
91 | | |
92 | | /* Like alloc pool, but all memory is cleaned before freeing. |
93 | | See pool_alloconly_create_clean. */ |
94 | | pool_t pool_allocfree_create_clean(const char *name); |
95 | | |
96 | | /* Similar to nearest_power(), but try not to exceed buffer's easy |
97 | | allocation size. If you don't have any explicit minimum size, use |
98 | | old_size + 1. */ |
99 | | size_t pool_get_exp_grown_size(pool_t pool, size_t old_size, size_t min_size); |
100 | | |
101 | | /* Reference another memory pool in the given pool. This call also increases |
102 | | the ref_pool's reference count. When the pool is freed or cleared, the |
103 | | referenced memory pools are also unreferenced. */ |
104 | | void pool_add_external_ref(pool_t pool, pool_t ref_pool); |
105 | | |
106 | | /* We require sizeof(type) to be <= UINT_MAX. This allows compiler to optimize |
107 | | away the entire MALLOC_MULTIPLY() call on 64bit systems. */ |
108 | | #define p_new(pool, type, count) \ |
109 | | /* NOLINTNEXTLINE(bugprone-sizeof-expression) */ \ |
110 | 757k | ((type *) p_malloc(pool, MALLOC_MULTIPLY((unsigned int)sizeof(type), (count))) + \ |
111 | 757k | COMPILE_ERROR_IF_TRUE(sizeof(type) > UINT_MAX)) |
112 | | |
113 | | #define p_realloc_type(pool, mem, type, old_count, new_count) \ |
114 | 2.24k | ((type *) p_realloc(pool, mem, \ |
115 | 2.24k | /* NOLINTNEXTLINE(bugprone-sizeof-expression) */ \ |
116 | 2.24k | MALLOC_MULTIPLY((unsigned int)sizeof(type), (old_count)), \ |
117 | 2.24k | /* NOLINTNEXTLINE(bugprone-sizeof-expression) */ \ |
118 | 2.24k | MALLOC_MULTIPLY((unsigned int)sizeof(type), (new_count))) + \ |
119 | 2.24k | COMPILE_ERROR_IF_TRUE(sizeof(type) > UINT_MAX)) |
120 | | |
121 | | static inline void * ATTR_MALLOC ATTR_RETURNS_NONNULL |
122 | | p_malloc(pool_t pool, size_t size) |
123 | 1.34M | { |
124 | 1.34M | if (unlikely(size == 0 || size > POOL_MAX_ALLOC_SIZE)) |
125 | 0 | i_panic("Trying to allocate %zu bytes", size); |
126 | | |
127 | 1.34M | return pool->v->malloc(pool, size); |
128 | 1.34M | } Unexecuted instantiation: dsasl-client-mech-ntlm-dummy.c:p_malloc Unexecuted instantiation: fuzz-sasl-authentication.c:p_malloc Line | Count | Source | 123 | 6.96k | { | 124 | 6.96k | if (unlikely(size == 0 || size > POOL_MAX_ALLOC_SIZE)) | 125 | 0 | i_panic("Trying to allocate %zu bytes", size); | 126 | | | 127 | 6.96k | return pool->v->malloc(pool, size); | 128 | 6.96k | } |
Unexecuted instantiation: sasl-server-mech-anonymous.c:p_malloc sasl-server-mech-cram-md5.c:p_malloc Line | Count | Source | 123 | 294 | { | 124 | 294 | if (unlikely(size == 0 || size > POOL_MAX_ALLOC_SIZE)) | 125 | 0 | i_panic("Trying to allocate %zu bytes", size); | 126 | | | 127 | 294 | return pool->v->malloc(pool, size); | 128 | 294 | } |
sasl-server-mech-digest-md5.c:p_malloc Line | Count | Source | 123 | 3.09k | { | 124 | 3.09k | if (unlikely(size == 0 || size > POOL_MAX_ALLOC_SIZE)) | 125 | 0 | i_panic("Trying to allocate %zu bytes", size); | 126 | | | 127 | 3.09k | return pool->v->malloc(pool, size); | 128 | 3.09k | } |
Unexecuted instantiation: sasl-server-mech-login.c:p_malloc sasl-server-mech-oauth2.c:p_malloc Line | Count | Source | 123 | 15.1k | { | 124 | 15.1k | if (unlikely(size == 0 || size > POOL_MAX_ALLOC_SIZE)) | 125 | 0 | i_panic("Trying to allocate %zu bytes", size); | 126 | | | 127 | 15.1k | return pool->v->malloc(pool, size); | 128 | 15.1k | } |
Unexecuted instantiation: sasl-server-mech-plain.c:p_malloc sasl-server-mech-scram.c:p_malloc Line | Count | Source | 123 | 30.2k | { | 124 | 30.2k | if (unlikely(size == 0 || size > POOL_MAX_ALLOC_SIZE)) | 125 | 0 | i_panic("Trying to allocate %zu bytes", size); | 126 | | | 127 | 30.2k | return pool->v->malloc(pool, size); | 128 | 30.2k | } |
sasl-server-mech.c:p_malloc Line | Count | Source | 123 | 191k | { | 124 | 191k | if (unlikely(size == 0 || size > POOL_MAX_ALLOC_SIZE)) | 125 | 0 | i_panic("Trying to allocate %zu bytes", size); | 126 | | | 127 | 191k | return pool->v->malloc(pool, size); | 128 | 191k | } |
sasl-server-request.c:p_malloc Line | Count | Source | 123 | 7.76k | { | 124 | 7.76k | if (unlikely(size == 0 || size > POOL_MAX_ALLOC_SIZE)) | 125 | 0 | i_panic("Trying to allocate %zu bytes", size); | 126 | | | 127 | 7.76k | return pool->v->malloc(pool, size); | 128 | 7.76k | } |
Line | Count | Source | 123 | 14.2k | { | 124 | 14.2k | if (unlikely(size == 0 || size > POOL_MAX_ALLOC_SIZE)) | 125 | 0 | i_panic("Trying to allocate %zu bytes", size); | 126 | | | 127 | 14.2k | return pool->v->malloc(pool, size); | 128 | 14.2k | } |
Unexecuted instantiation: sasl-oauth2.c:p_malloc Unexecuted instantiation: dsasl-client-mech-anonymous.c:p_malloc Unexecuted instantiation: dsasl-client-mech-cram-md5.c:p_malloc Unexecuted instantiation: dsasl-client-mech-digest-md5.c:p_malloc Unexecuted instantiation: dsasl-client-mech-external.c:p_malloc Unexecuted instantiation: dsasl-client-mech-login.c:p_malloc Unexecuted instantiation: dsasl-client-mech-oauthbearer.c:p_malloc Unexecuted instantiation: dsasl-client-mech-plain.c:p_malloc Unexecuted instantiation: dsasl-client-mech-scram.c:p_malloc Unexecuted instantiation: auth-digest.c:p_malloc Unexecuted instantiation: auth-gs2.c:p_malloc Unexecuted instantiation: auth-scram.c:p_malloc auth-scram-client.c:p_malloc Line | Count | Source | 123 | 1.11k | { | 124 | 1.11k | if (unlikely(size == 0 || size > POOL_MAX_ALLOC_SIZE)) | 125 | 0 | i_panic("Trying to allocate %zu bytes", size); | 126 | | | 127 | 1.11k | return pool->v->malloc(pool, size); | 128 | 1.11k | } |
auth-scram-server.c:p_malloc Line | Count | Source | 123 | 3.04k | { | 124 | 3.04k | if (unlikely(size == 0 || size > POOL_MAX_ALLOC_SIZE)) | 125 | 0 | i_panic("Trying to allocate %zu bytes", size); | 126 | | | 127 | 3.04k | return pool->v->malloc(pool, size); | 128 | 3.04k | } |
Unexecuted instantiation: password-scheme.c:p_malloc Unexecuted instantiation: password-scheme-md5crypt.c:p_malloc Unexecuted instantiation: password-scheme-scram.c:p_malloc Unexecuted instantiation: password-scheme-pbkdf2.c:p_malloc Unexecuted instantiation: oauth2.c:p_malloc Unexecuted instantiation: json-tree-io.c:p_malloc Unexecuted instantiation: json-istream.c:p_malloc Line | Count | Source | 123 | 803 | { | 124 | 803 | if (unlikely(size == 0 || size > POOL_MAX_ALLOC_SIZE)) | 125 | 0 | i_panic("Trying to allocate %zu bytes", size); | 126 | | | 127 | 803 | return pool->v->malloc(pool, size); | 128 | 803 | } |
Unexecuted instantiation: json-tree.c:p_malloc Unexecuted instantiation: json-parser.c:p_malloc json-generator.c:p_malloc Line | Count | Source | 123 | 803 | { | 124 | 803 | if (unlikely(size == 0 || size > POOL_MAX_ALLOC_SIZE)) | 125 | 0 | i_panic("Trying to allocate %zu bytes", size); | 126 | | | 127 | 803 | return pool->v->malloc(pool, size); | 128 | 803 | } |
Unexecuted instantiation: istream-json-string.c:p_malloc Unexecuted instantiation: json-syntax.c:p_malloc Unexecuted instantiation: fuzzer.c:p_malloc Unexecuted instantiation: array.c:p_malloc Unexecuted instantiation: base64.c:p_malloc Line | Count | Source | 123 | 302k | { | 124 | 302k | if (unlikely(size == 0 || size > POOL_MAX_ALLOC_SIZE)) | 125 | 0 | i_panic("Trying to allocate %zu bytes", size); | 126 | | | 127 | 302k | return pool->v->malloc(pool, size); | 128 | 302k | } |
Unexecuted instantiation: data-stack.c:p_malloc Unexecuted instantiation: event-log.c:p_malloc Unexecuted instantiation: failures.c:p_malloc Unexecuted instantiation: fd-util.c:p_malloc Line | Count | Source | 123 | 29.0k | { | 124 | 29.0k | if (unlikely(size == 0 || size > POOL_MAX_ALLOC_SIZE)) | 125 | 0 | i_panic("Trying to allocate %zu bytes", size); | 126 | | | 127 | 29.0k | return pool->v->malloc(pool, size); | 128 | 29.0k | } |
Unexecuted instantiation: hash-method.c:p_malloc Unexecuted instantiation: hex-binary.c:p_malloc Unexecuted instantiation: hex-dec.c:p_malloc Unexecuted instantiation: hmac.c:p_malloc Unexecuted instantiation: hmac-cram-md5.c:p_malloc Unexecuted instantiation: hostpid.c:p_malloc Unexecuted instantiation: imem.c:p_malloc Unexecuted instantiation: iostream.c:p_malloc Unexecuted instantiation: iostream-pump.c:p_malloc Unexecuted instantiation: istream.c:p_malloc Line | Count | Source | 123 | 7.26k | { | 124 | 7.26k | if (unlikely(size == 0 || size > POOL_MAX_ALLOC_SIZE)) | 125 | 0 | i_panic("Trying to allocate %zu bytes", size); | 126 | | | 127 | 7.26k | return pool->v->malloc(pool, size); | 128 | 7.26k | } |
Unexecuted instantiation: istream-file.c:p_malloc Unexecuted instantiation: istream-limit.c:p_malloc Unexecuted instantiation: istream-seekable.c:p_malloc Line | Count | Source | 123 | 7.26k | { | 124 | 7.26k | if (unlikely(size == 0 || size > POOL_MAX_ALLOC_SIZE)) | 125 | 0 | i_panic("Trying to allocate %zu bytes", size); | 126 | | | 127 | 7.26k | return pool->v->malloc(pool, size); | 128 | 7.26k | } |
Unexecuted instantiation: ioloop-notify-inotify.c:p_malloc Unexecuted instantiation: ioloop-epoll.c:p_malloc Unexecuted instantiation: lib.c:p_malloc Line | Count | Source | 123 | 128k | { | 124 | 128k | if (unlikely(size == 0 || size > POOL_MAX_ALLOC_SIZE)) | 125 | 0 | i_panic("Trying to allocate %zu bytes", size); | 126 | | | 127 | 128k | return pool->v->malloc(pool, size); | 128 | 128k | } |
Unexecuted instantiation: lib-signals.c:p_malloc Unexecuted instantiation: md4.c:p_malloc Unexecuted instantiation: md5.c:p_malloc Unexecuted instantiation: memarea.c:p_malloc Unexecuted instantiation: mempool.c:p_malloc mempool-alloconly.c:p_malloc Line | Count | Source | 123 | 149k | { | 124 | 149k | if (unlikely(size == 0 || size > POOL_MAX_ALLOC_SIZE)) | 125 | 0 | i_panic("Trying to allocate %zu bytes", size); | 126 | | | 127 | 149k | return pool->v->malloc(pool, size); | 128 | 149k | } |
Unexecuted instantiation: mempool-datastack.c:p_malloc Unexecuted instantiation: mempool-system.c:p_malloc Unexecuted instantiation: mempool-unsafe-datastack.c:p_malloc Unexecuted instantiation: net.c:p_malloc Unexecuted instantiation: ostream.c:p_malloc Unexecuted instantiation: ostream-file.c:p_malloc Unexecuted instantiation: path-util.c:p_malloc Unexecuted instantiation: pkcs5.c:p_malloc Unexecuted instantiation: primes.c:p_malloc Unexecuted instantiation: printf-format-fix.c:p_malloc Unexecuted instantiation: process-title.c:p_malloc Line | Count | Source | 123 | 7.26k | { | 124 | 7.26k | if (unlikely(size == 0 || size > POOL_MAX_ALLOC_SIZE)) | 125 | 0 | i_panic("Trying to allocate %zu bytes", size); | 126 | | | 127 | 7.26k | return pool->v->malloc(pool, size); | 128 | 7.26k | } |
Unexecuted instantiation: randgen.c:p_malloc Unexecuted instantiation: rand.c:p_malloc Unexecuted instantiation: read-full.c:p_malloc Unexecuted instantiation: restrict-access.c:p_malloc Unexecuted instantiation: safe-memset.c:p_malloc Unexecuted instantiation: safe-mkstemp.c:p_malloc Unexecuted instantiation: sendfile-util.c:p_malloc Unexecuted instantiation: sha1.c:p_malloc Unexecuted instantiation: sha2.c:p_malloc Unexecuted instantiation: sha3.c:p_malloc Unexecuted instantiation: xxh64.c:p_malloc Unexecuted instantiation: sleep.c:p_malloc Unexecuted instantiation: str.c:p_malloc Unexecuted instantiation: str-sanitize.c:p_malloc Unexecuted instantiation: strescape.c:p_malloc Line | Count | Source | 123 | 436k | { | 124 | 436k | if (unlikely(size == 0 || size > POOL_MAX_ALLOC_SIZE)) | 125 | 0 | i_panic("Trying to allocate %zu bytes", size); | 126 | | | 127 | 436k | return pool->v->malloc(pool, size); | 128 | 436k | } |
Unexecuted instantiation: strnum.c:p_malloc Unexecuted instantiation: time-util.c:p_malloc Unexecuted instantiation: unichar.c:p_malloc Unexecuted instantiation: unicode-break.c:p_malloc Unexecuted instantiation: unicode-data-tables.c:p_malloc Unexecuted instantiation: unicode-transform.c:p_malloc Unexecuted instantiation: write-full.c:p_malloc Unexecuted instantiation: backtrace-string.c:p_malloc Unexecuted instantiation: bits.c:p_malloc Unexecuted instantiation: eacces-error.c:p_malloc Unexecuted instantiation: env-util.c:p_malloc Unexecuted instantiation: event-filter.c:p_malloc Unexecuted instantiation: event-filter-lexer.c:p_malloc Unexecuted instantiation: event-filter-parser.c:p_malloc Unexecuted instantiation: ipwd.c:p_malloc Unexecuted instantiation: istream-concat.c:p_malloc Unexecuted instantiation: ioloop-iolist.c:p_malloc Unexecuted instantiation: ioloop-notify-fd.c:p_malloc Unexecuted instantiation: str-parse.c:p_malloc Unexecuted instantiation: wildcard-match.c:p_malloc |
129 | | |
130 | | /* For allocfree and system pools you can use SIZE_MAX |
131 | | to indicate that you have no knowledge of the old size. */ |
132 | | static inline void * ATTR_WARN_UNUSED_RESULT ATTR_RETURNS_NONNULL |
133 | | p_realloc(pool_t pool, void *mem, size_t old_size, size_t new_size) |
134 | 15.6k | { |
135 | 15.6k | if (unlikely(new_size == 0 || new_size > POOL_MAX_ALLOC_SIZE)) |
136 | 0 | i_panic("Trying to reallocate %zu -> %zu bytes", |
137 | 0 | old_size, new_size); |
138 | | |
139 | 15.6k | if (mem == NULL) |
140 | 0 | return pool->v->malloc(pool, new_size); |
141 | | |
142 | 15.6k | return pool->v->realloc(pool, mem, old_size, new_size); |
143 | 15.6k | } Unexecuted instantiation: dsasl-client-mech-ntlm-dummy.c:p_realloc Unexecuted instantiation: fuzz-sasl-authentication.c:p_realloc Unexecuted instantiation: dsasl-client.c:p_realloc Unexecuted instantiation: sasl-server-mech-anonymous.c:p_realloc Unexecuted instantiation: sasl-server-mech-cram-md5.c:p_realloc Unexecuted instantiation: sasl-server-mech-digest-md5.c:p_realloc Unexecuted instantiation: sasl-server-mech-login.c:p_realloc Unexecuted instantiation: sasl-server-mech-oauth2.c:p_realloc Unexecuted instantiation: sasl-server-mech-plain.c:p_realloc Unexecuted instantiation: sasl-server-mech-scram.c:p_realloc Unexecuted instantiation: sasl-server-mech.c:p_realloc Unexecuted instantiation: sasl-server-request.c:p_realloc Unexecuted instantiation: sasl-server.c:p_realloc Unexecuted instantiation: sasl-oauth2.c:p_realloc Unexecuted instantiation: dsasl-client-mech-anonymous.c:p_realloc Unexecuted instantiation: dsasl-client-mech-cram-md5.c:p_realloc Unexecuted instantiation: dsasl-client-mech-digest-md5.c:p_realloc Unexecuted instantiation: dsasl-client-mech-external.c:p_realloc Unexecuted instantiation: dsasl-client-mech-login.c:p_realloc Unexecuted instantiation: dsasl-client-mech-oauthbearer.c:p_realloc Unexecuted instantiation: dsasl-client-mech-plain.c:p_realloc Unexecuted instantiation: dsasl-client-mech-scram.c:p_realloc Unexecuted instantiation: auth-digest.c:p_realloc Unexecuted instantiation: auth-gs2.c:p_realloc Unexecuted instantiation: auth-scram.c:p_realloc Unexecuted instantiation: auth-scram-client.c:p_realloc Unexecuted instantiation: auth-scram-server.c:p_realloc Unexecuted instantiation: password-scheme.c:p_realloc Unexecuted instantiation: password-scheme-md5crypt.c:p_realloc Unexecuted instantiation: password-scheme-scram.c:p_realloc Unexecuted instantiation: password-scheme-pbkdf2.c:p_realloc Unexecuted instantiation: oauth2.c:p_realloc Unexecuted instantiation: json-tree-io.c:p_realloc Unexecuted instantiation: json-istream.c:p_realloc Unexecuted instantiation: json-ostream.c:p_realloc Unexecuted instantiation: json-tree.c:p_realloc Unexecuted instantiation: json-parser.c:p_realloc Unexecuted instantiation: json-generator.c:p_realloc Unexecuted instantiation: istream-json-string.c:p_realloc Unexecuted instantiation: json-syntax.c:p_realloc Unexecuted instantiation: fuzzer.c:p_realloc Unexecuted instantiation: array.c:p_realloc Unexecuted instantiation: base64.c:p_realloc Line | Count | Source | 134 | 13.4k | { | 135 | 13.4k | if (unlikely(new_size == 0 || new_size > POOL_MAX_ALLOC_SIZE)) | 136 | 0 | i_panic("Trying to reallocate %zu -> %zu bytes", | 137 | 0 | old_size, new_size); | 138 | | | 139 | 13.4k | if (mem == NULL) | 140 | 0 | return pool->v->malloc(pool, new_size); | 141 | | | 142 | 13.4k | return pool->v->realloc(pool, mem, old_size, new_size); | 143 | 13.4k | } |
Unexecuted instantiation: data-stack.c:p_realloc Unexecuted instantiation: event-log.c:p_realloc Unexecuted instantiation: failures.c:p_realloc Unexecuted instantiation: fd-util.c:p_realloc Unexecuted instantiation: hash.c:p_realloc Unexecuted instantiation: hash-method.c:p_realloc Unexecuted instantiation: hex-binary.c:p_realloc Unexecuted instantiation: hex-dec.c:p_realloc Unexecuted instantiation: hmac.c:p_realloc Unexecuted instantiation: hmac-cram-md5.c:p_realloc Unexecuted instantiation: hostpid.c:p_realloc Unexecuted instantiation: imem.c:p_realloc Unexecuted instantiation: iostream.c:p_realloc Unexecuted instantiation: iostream-pump.c:p_realloc Unexecuted instantiation: istream.c:p_realloc Unexecuted instantiation: istream-data.c:p_realloc Unexecuted instantiation: istream-file.c:p_realloc Unexecuted instantiation: istream-limit.c:p_realloc Unexecuted instantiation: istream-seekable.c:p_realloc Unexecuted instantiation: ioloop.c:p_realloc Unexecuted instantiation: ioloop-notify-inotify.c:p_realloc Unexecuted instantiation: ioloop-epoll.c:p_realloc Unexecuted instantiation: lib.c:p_realloc Unexecuted instantiation: lib-event.c:p_realloc Unexecuted instantiation: lib-signals.c:p_realloc Unexecuted instantiation: md4.c:p_realloc Unexecuted instantiation: md5.c:p_realloc Unexecuted instantiation: memarea.c:p_realloc Unexecuted instantiation: mempool.c:p_realloc Unexecuted instantiation: mempool-alloconly.c:p_realloc Unexecuted instantiation: mempool-datastack.c:p_realloc Unexecuted instantiation: mempool-system.c:p_realloc Unexecuted instantiation: mempool-unsafe-datastack.c:p_realloc Unexecuted instantiation: net.c:p_realloc Unexecuted instantiation: ostream.c:p_realloc Unexecuted instantiation: ostream-file.c:p_realloc Unexecuted instantiation: path-util.c:p_realloc Unexecuted instantiation: pkcs5.c:p_realloc Unexecuted instantiation: primes.c:p_realloc Unexecuted instantiation: printf-format-fix.c:p_realloc Unexecuted instantiation: process-title.c:p_realloc Unexecuted instantiation: priorityq.c:p_realloc Unexecuted instantiation: randgen.c:p_realloc Unexecuted instantiation: rand.c:p_realloc Unexecuted instantiation: read-full.c:p_realloc Unexecuted instantiation: restrict-access.c:p_realloc Unexecuted instantiation: safe-memset.c:p_realloc Unexecuted instantiation: safe-mkstemp.c:p_realloc Unexecuted instantiation: sendfile-util.c:p_realloc Unexecuted instantiation: sha1.c:p_realloc Unexecuted instantiation: sha2.c:p_realloc Unexecuted instantiation: sha3.c:p_realloc Unexecuted instantiation: xxh64.c:p_realloc Unexecuted instantiation: sleep.c:p_realloc Unexecuted instantiation: str.c:p_realloc Unexecuted instantiation: str-sanitize.c:p_realloc Unexecuted instantiation: strescape.c:p_realloc Line | Count | Source | 134 | 2.24k | { | 135 | 2.24k | if (unlikely(new_size == 0 || new_size > POOL_MAX_ALLOC_SIZE)) | 136 | 0 | i_panic("Trying to reallocate %zu -> %zu bytes", | 137 | 0 | old_size, new_size); | 138 | | | 139 | 2.24k | if (mem == NULL) | 140 | 0 | return pool->v->malloc(pool, new_size); | 141 | | | 142 | 2.24k | return pool->v->realloc(pool, mem, old_size, new_size); | 143 | 2.24k | } |
Unexecuted instantiation: strnum.c:p_realloc Unexecuted instantiation: time-util.c:p_realloc Unexecuted instantiation: unichar.c:p_realloc Unexecuted instantiation: unicode-break.c:p_realloc Unexecuted instantiation: unicode-data-tables.c:p_realloc Unexecuted instantiation: unicode-transform.c:p_realloc Unexecuted instantiation: write-full.c:p_realloc Unexecuted instantiation: backtrace-string.c:p_realloc Unexecuted instantiation: bits.c:p_realloc Unexecuted instantiation: eacces-error.c:p_realloc Unexecuted instantiation: env-util.c:p_realloc Unexecuted instantiation: event-filter.c:p_realloc Unexecuted instantiation: event-filter-lexer.c:p_realloc Unexecuted instantiation: event-filter-parser.c:p_realloc Unexecuted instantiation: ipwd.c:p_realloc Unexecuted instantiation: istream-concat.c:p_realloc Unexecuted instantiation: ioloop-iolist.c:p_realloc Unexecuted instantiation: ioloop-notify-fd.c:p_realloc Unexecuted instantiation: str-parse.c:p_realloc Unexecuted instantiation: wildcard-match.c:p_realloc |
144 | | |
145 | | /* Free the memory. p_free() and p_free_and_null() are now guaranteed to both |
146 | | set mem=NULL, so either one of them can be used. */ |
147 | | #define p_free(pool, mem) \ |
148 | 638k | STMT_START { \ |
149 | 638k | p_free_internal(pool, mem); \ |
150 | 638k | (mem) = NULL; \ |
151 | 638k | } STMT_END |
152 | 531k | #define p_free_and_null(pool, mem) p_free(pool, mem) |
153 | | |
154 | | static inline void p_free_internal(pool_t pool, void *mem) |
155 | 638k | { |
156 | 638k | if (mem != NULL) |
157 | 303k | pool->v->free(pool, mem); |
158 | 638k | } Unexecuted instantiation: dsasl-client-mech-ntlm-dummy.c:p_free_internal Unexecuted instantiation: fuzz-sasl-authentication.c:p_free_internal Unexecuted instantiation: dsasl-client.c:p_free_internal Unexecuted instantiation: sasl-server-mech-anonymous.c:p_free_internal Unexecuted instantiation: sasl-server-mech-cram-md5.c:p_free_internal Unexecuted instantiation: sasl-server-mech-digest-md5.c:p_free_internal Unexecuted instantiation: sasl-server-mech-login.c:p_free_internal Unexecuted instantiation: sasl-server-mech-oauth2.c:p_free_internal Unexecuted instantiation: sasl-server-mech-plain.c:p_free_internal Unexecuted instantiation: sasl-server-mech-scram.c:p_free_internal Unexecuted instantiation: sasl-server-mech.c:p_free_internal Unexecuted instantiation: sasl-server-request.c:p_free_internal Unexecuted instantiation: sasl-server.c:p_free_internal Unexecuted instantiation: sasl-oauth2.c:p_free_internal Unexecuted instantiation: dsasl-client-mech-anonymous.c:p_free_internal Unexecuted instantiation: dsasl-client-mech-cram-md5.c:p_free_internal Unexecuted instantiation: dsasl-client-mech-digest-md5.c:p_free_internal Unexecuted instantiation: dsasl-client-mech-external.c:p_free_internal Unexecuted instantiation: dsasl-client-mech-login.c:p_free_internal Unexecuted instantiation: dsasl-client-mech-oauthbearer.c:p_free_internal Unexecuted instantiation: dsasl-client-mech-plain.c:p_free_internal Unexecuted instantiation: dsasl-client-mech-scram.c:p_free_internal Unexecuted instantiation: auth-digest.c:p_free_internal Unexecuted instantiation: auth-gs2.c:p_free_internal Unexecuted instantiation: auth-scram.c:p_free_internal Unexecuted instantiation: auth-scram-client.c:p_free_internal Unexecuted instantiation: auth-scram-server.c:p_free_internal Unexecuted instantiation: password-scheme.c:p_free_internal Unexecuted instantiation: password-scheme-md5crypt.c:p_free_internal Unexecuted instantiation: password-scheme-scram.c:p_free_internal Unexecuted instantiation: password-scheme-pbkdf2.c:p_free_internal Unexecuted instantiation: oauth2.c:p_free_internal Unexecuted instantiation: json-tree-io.c:p_free_internal Unexecuted instantiation: json-istream.c:p_free_internal json-ostream.c:p_free_internal Line | Count | Source | 155 | 1.60k | { | 156 | 1.60k | if (mem != NULL) | 157 | 803 | pool->v->free(pool, mem); | 158 | 1.60k | } |
Unexecuted instantiation: json-tree.c:p_free_internal Unexecuted instantiation: json-parser.c:p_free_internal json-generator.c:p_free_internal Line | Count | Source | 155 | 1.60k | { | 156 | 1.60k | if (mem != NULL) | 157 | 803 | pool->v->free(pool, mem); | 158 | 1.60k | } |
Unexecuted instantiation: istream-json-string.c:p_free_internal Unexecuted instantiation: json-syntax.c:p_free_internal Unexecuted instantiation: fuzzer.c:p_free_internal Unexecuted instantiation: array.c:p_free_internal Unexecuted instantiation: base64.c:p_free_internal Line | Count | Source | 155 | 206k | { | 156 | 206k | if (mem != NULL) | 157 | 206k | pool->v->free(pool, mem); | 158 | 206k | } |
Unexecuted instantiation: data-stack.c:p_free_internal Unexecuted instantiation: event-log.c:p_free_internal failures.c:p_free_internal Line | Count | Source | 155 | 29.0k | { | 156 | 29.0k | if (mem != NULL) | 157 | 0 | pool->v->free(pool, mem); | 158 | 29.0k | } |
Unexecuted instantiation: fd-util.c:p_free_internal Line | Count | Source | 155 | 29.0k | { | 156 | 29.0k | if (mem != NULL) | 157 | 29.0k | pool->v->free(pool, mem); | 158 | 29.0k | } |
Unexecuted instantiation: hash-method.c:p_free_internal Unexecuted instantiation: hex-binary.c:p_free_internal Unexecuted instantiation: hex-dec.c:p_free_internal Unexecuted instantiation: hmac.c:p_free_internal Unexecuted instantiation: hmac-cram-md5.c:p_free_internal hostpid.c:p_free_internal Line | Count | Source | 155 | 29.0k | { | 156 | 29.0k | if (mem != NULL) | 157 | 7.26k | pool->v->free(pool, mem); | 158 | 29.0k | } |
Unexecuted instantiation: imem.c:p_free_internal iostream.c:p_free_internal Line | Count | Source | 155 | 21.7k | { | 156 | 21.7k | if (mem != NULL) | 157 | 14.5k | pool->v->free(pool, mem); | 158 | 21.7k | } |
Unexecuted instantiation: iostream-pump.c:p_free_internal istream.c:p_free_internal Line | Count | Source | 155 | 7.26k | { | 156 | 7.26k | if (mem != NULL) | 157 | 0 | pool->v->free(pool, mem); | 158 | 7.26k | } |
Unexecuted instantiation: istream-data.c:p_free_internal Unexecuted instantiation: istream-file.c:p_free_internal Unexecuted instantiation: istream-limit.c:p_free_internal Unexecuted instantiation: istream-seekable.c:p_free_internal Line | Count | Source | 155 | 7.26k | { | 156 | 7.26k | if (mem != NULL) | 157 | 7.26k | pool->v->free(pool, mem); | 158 | 7.26k | } |
Unexecuted instantiation: ioloop-notify-inotify.c:p_free_internal Unexecuted instantiation: ioloop-epoll.c:p_free_internal Unexecuted instantiation: lib.c:p_free_internal lib-event.c:p_free_internal Line | Count | Source | 155 | 268k | { | 156 | 268k | if (mem != NULL) | 157 | 29.8k | pool->v->free(pool, mem); | 158 | 268k | } |
Unexecuted instantiation: lib-signals.c:p_free_internal Unexecuted instantiation: md4.c:p_free_internal Unexecuted instantiation: md5.c:p_free_internal Unexecuted instantiation: memarea.c:p_free_internal Unexecuted instantiation: mempool.c:p_free_internal Unexecuted instantiation: mempool-alloconly.c:p_free_internal Unexecuted instantiation: mempool-datastack.c:p_free_internal Unexecuted instantiation: mempool-system.c:p_free_internal Unexecuted instantiation: mempool-unsafe-datastack.c:p_free_internal Unexecuted instantiation: net.c:p_free_internal Unexecuted instantiation: ostream.c:p_free_internal Unexecuted instantiation: ostream-file.c:p_free_internal Unexecuted instantiation: path-util.c:p_free_internal Unexecuted instantiation: pkcs5.c:p_free_internal Unexecuted instantiation: primes.c:p_free_internal Unexecuted instantiation: printf-format-fix.c:p_free_internal process-title.c:p_free_internal Line | Count | Source | 155 | 7.26k | { | 156 | 7.26k | if (mem != NULL) | 157 | 0 | pool->v->free(pool, mem); | 158 | 7.26k | } |
priorityq.c:p_free_internal Line | Count | Source | 155 | 7.26k | { | 156 | 7.26k | if (mem != NULL) | 157 | 7.26k | pool->v->free(pool, mem); | 158 | 7.26k | } |
Unexecuted instantiation: randgen.c:p_free_internal Unexecuted instantiation: rand.c:p_free_internal Unexecuted instantiation: read-full.c:p_free_internal restrict-access.c:p_free_internal Line | Count | Source | 155 | 7.26k | { | 156 | 7.26k | if (mem != NULL) | 157 | 0 | pool->v->free(pool, mem); | 158 | 7.26k | } |
Unexecuted instantiation: safe-memset.c:p_free_internal Unexecuted instantiation: safe-mkstemp.c:p_free_internal Unexecuted instantiation: sendfile-util.c:p_free_internal Unexecuted instantiation: sha1.c:p_free_internal Unexecuted instantiation: sha2.c:p_free_internal Unexecuted instantiation: sha3.c:p_free_internal Unexecuted instantiation: xxh64.c:p_free_internal Unexecuted instantiation: sleep.c:p_free_internal Unexecuted instantiation: str.c:p_free_internal Unexecuted instantiation: str-sanitize.c:p_free_internal Unexecuted instantiation: strescape.c:p_free_internal Unexecuted instantiation: strfuncs.c:p_free_internal Unexecuted instantiation: strnum.c:p_free_internal Unexecuted instantiation: time-util.c:p_free_internal Unexecuted instantiation: unichar.c:p_free_internal Unexecuted instantiation: unicode-break.c:p_free_internal Unexecuted instantiation: unicode-data-tables.c:p_free_internal Unexecuted instantiation: unicode-transform.c:p_free_internal Unexecuted instantiation: write-full.c:p_free_internal Unexecuted instantiation: backtrace-string.c:p_free_internal Unexecuted instantiation: bits.c:p_free_internal Unexecuted instantiation: eacces-error.c:p_free_internal Unexecuted instantiation: env-util.c:p_free_internal Unexecuted instantiation: event-filter.c:p_free_internal Unexecuted instantiation: event-filter-lexer.c:p_free_internal Unexecuted instantiation: event-filter-parser.c:p_free_internal Line | Count | Source | 155 | 14.5k | { | 156 | 14.5k | if (mem != NULL) | 157 | 0 | pool->v->free(pool, mem); | 158 | 14.5k | } |
Unexecuted instantiation: istream-concat.c:p_free_internal Unexecuted instantiation: ioloop-iolist.c:p_free_internal Unexecuted instantiation: ioloop-notify-fd.c:p_free_internal Unexecuted instantiation: str-parse.c:p_free_internal Unexecuted instantiation: wildcard-match.c:p_free_internal |
159 | | |
160 | | static inline void p_clear(pool_t pool) |
161 | 0 | { |
162 | 0 | pool->v->clear(pool); |
163 | 0 | } Unexecuted instantiation: dsasl-client-mech-ntlm-dummy.c:p_clear Unexecuted instantiation: fuzz-sasl-authentication.c:p_clear Unexecuted instantiation: dsasl-client.c:p_clear Unexecuted instantiation: sasl-server-mech-anonymous.c:p_clear Unexecuted instantiation: sasl-server-mech-cram-md5.c:p_clear Unexecuted instantiation: sasl-server-mech-digest-md5.c:p_clear Unexecuted instantiation: sasl-server-mech-login.c:p_clear Unexecuted instantiation: sasl-server-mech-oauth2.c:p_clear Unexecuted instantiation: sasl-server-mech-plain.c:p_clear Unexecuted instantiation: sasl-server-mech-scram.c:p_clear Unexecuted instantiation: sasl-server-mech.c:p_clear Unexecuted instantiation: sasl-server-request.c:p_clear Unexecuted instantiation: sasl-server.c:p_clear Unexecuted instantiation: sasl-oauth2.c:p_clear Unexecuted instantiation: dsasl-client-mech-anonymous.c:p_clear Unexecuted instantiation: dsasl-client-mech-cram-md5.c:p_clear Unexecuted instantiation: dsasl-client-mech-digest-md5.c:p_clear Unexecuted instantiation: dsasl-client-mech-external.c:p_clear Unexecuted instantiation: dsasl-client-mech-login.c:p_clear Unexecuted instantiation: dsasl-client-mech-oauthbearer.c:p_clear Unexecuted instantiation: dsasl-client-mech-plain.c:p_clear Unexecuted instantiation: dsasl-client-mech-scram.c:p_clear Unexecuted instantiation: auth-digest.c:p_clear Unexecuted instantiation: auth-gs2.c:p_clear Unexecuted instantiation: auth-scram.c:p_clear Unexecuted instantiation: auth-scram-client.c:p_clear Unexecuted instantiation: auth-scram-server.c:p_clear Unexecuted instantiation: password-scheme.c:p_clear Unexecuted instantiation: password-scheme-md5crypt.c:p_clear Unexecuted instantiation: password-scheme-scram.c:p_clear Unexecuted instantiation: password-scheme-pbkdf2.c:p_clear Unexecuted instantiation: oauth2.c:p_clear Unexecuted instantiation: json-tree-io.c:p_clear Unexecuted instantiation: json-istream.c:p_clear Unexecuted instantiation: json-ostream.c:p_clear Unexecuted instantiation: json-tree.c:p_clear Unexecuted instantiation: json-parser.c:p_clear Unexecuted instantiation: json-generator.c:p_clear Unexecuted instantiation: istream-json-string.c:p_clear Unexecuted instantiation: json-syntax.c:p_clear Unexecuted instantiation: fuzzer.c:p_clear Unexecuted instantiation: array.c:p_clear Unexecuted instantiation: base64.c:p_clear Unexecuted instantiation: buffer.c:p_clear Unexecuted instantiation: data-stack.c:p_clear Unexecuted instantiation: event-log.c:p_clear Unexecuted instantiation: failures.c:p_clear Unexecuted instantiation: fd-util.c:p_clear Unexecuted instantiation: hash.c:p_clear Unexecuted instantiation: hash-method.c:p_clear Unexecuted instantiation: hex-binary.c:p_clear Unexecuted instantiation: hex-dec.c:p_clear Unexecuted instantiation: hmac.c:p_clear Unexecuted instantiation: hmac-cram-md5.c:p_clear Unexecuted instantiation: hostpid.c:p_clear Unexecuted instantiation: imem.c:p_clear Unexecuted instantiation: iostream.c:p_clear Unexecuted instantiation: iostream-pump.c:p_clear Unexecuted instantiation: istream.c:p_clear Unexecuted instantiation: istream-data.c:p_clear Unexecuted instantiation: istream-file.c:p_clear Unexecuted instantiation: istream-limit.c:p_clear Unexecuted instantiation: istream-seekable.c:p_clear Unexecuted instantiation: ioloop.c:p_clear Unexecuted instantiation: ioloop-notify-inotify.c:p_clear Unexecuted instantiation: ioloop-epoll.c:p_clear Unexecuted instantiation: lib.c:p_clear Unexecuted instantiation: lib-event.c:p_clear Unexecuted instantiation: lib-signals.c:p_clear Unexecuted instantiation: md4.c:p_clear Unexecuted instantiation: md5.c:p_clear Unexecuted instantiation: memarea.c:p_clear Unexecuted instantiation: mempool.c:p_clear Unexecuted instantiation: mempool-alloconly.c:p_clear Unexecuted instantiation: mempool-datastack.c:p_clear Unexecuted instantiation: mempool-system.c:p_clear Unexecuted instantiation: mempool-unsafe-datastack.c:p_clear Unexecuted instantiation: net.c:p_clear Unexecuted instantiation: ostream.c:p_clear Unexecuted instantiation: ostream-file.c:p_clear Unexecuted instantiation: path-util.c:p_clear Unexecuted instantiation: pkcs5.c:p_clear Unexecuted instantiation: primes.c:p_clear Unexecuted instantiation: printf-format-fix.c:p_clear Unexecuted instantiation: process-title.c:p_clear Unexecuted instantiation: priorityq.c:p_clear Unexecuted instantiation: randgen.c:p_clear Unexecuted instantiation: rand.c:p_clear Unexecuted instantiation: read-full.c:p_clear Unexecuted instantiation: restrict-access.c:p_clear Unexecuted instantiation: safe-memset.c:p_clear Unexecuted instantiation: safe-mkstemp.c:p_clear Unexecuted instantiation: sendfile-util.c:p_clear Unexecuted instantiation: sha1.c:p_clear Unexecuted instantiation: sha2.c:p_clear Unexecuted instantiation: sha3.c:p_clear Unexecuted instantiation: xxh64.c:p_clear Unexecuted instantiation: sleep.c:p_clear Unexecuted instantiation: str.c:p_clear Unexecuted instantiation: str-sanitize.c:p_clear Unexecuted instantiation: strescape.c:p_clear Unexecuted instantiation: strfuncs.c:p_clear Unexecuted instantiation: strnum.c:p_clear Unexecuted instantiation: time-util.c:p_clear Unexecuted instantiation: unichar.c:p_clear Unexecuted instantiation: unicode-break.c:p_clear Unexecuted instantiation: unicode-data-tables.c:p_clear Unexecuted instantiation: unicode-transform.c:p_clear Unexecuted instantiation: write-full.c:p_clear Unexecuted instantiation: backtrace-string.c:p_clear Unexecuted instantiation: bits.c:p_clear Unexecuted instantiation: eacces-error.c:p_clear Unexecuted instantiation: env-util.c:p_clear Unexecuted instantiation: event-filter.c:p_clear Unexecuted instantiation: event-filter-lexer.c:p_clear Unexecuted instantiation: event-filter-parser.c:p_clear Unexecuted instantiation: ipwd.c:p_clear Unexecuted instantiation: istream-concat.c:p_clear Unexecuted instantiation: ioloop-iolist.c:p_clear Unexecuted instantiation: ioloop-notify-fd.c:p_clear Unexecuted instantiation: str-parse.c:p_clear Unexecuted instantiation: wildcard-match.c:p_clear |
164 | | |
165 | | static inline size_t p_get_max_easy_alloc_size(pool_t pool) |
166 | 13.4k | { |
167 | 13.4k | return pool->v->get_max_easy_alloc_size(pool); |
168 | 13.4k | } Unexecuted instantiation: dsasl-client-mech-ntlm-dummy.c:p_get_max_easy_alloc_size Unexecuted instantiation: fuzz-sasl-authentication.c:p_get_max_easy_alloc_size Unexecuted instantiation: dsasl-client.c:p_get_max_easy_alloc_size Unexecuted instantiation: sasl-server-mech-anonymous.c:p_get_max_easy_alloc_size Unexecuted instantiation: sasl-server-mech-cram-md5.c:p_get_max_easy_alloc_size Unexecuted instantiation: sasl-server-mech-digest-md5.c:p_get_max_easy_alloc_size Unexecuted instantiation: sasl-server-mech-login.c:p_get_max_easy_alloc_size Unexecuted instantiation: sasl-server-mech-oauth2.c:p_get_max_easy_alloc_size Unexecuted instantiation: sasl-server-mech-plain.c:p_get_max_easy_alloc_size Unexecuted instantiation: sasl-server-mech-scram.c:p_get_max_easy_alloc_size Unexecuted instantiation: sasl-server-mech.c:p_get_max_easy_alloc_size Unexecuted instantiation: sasl-server-request.c:p_get_max_easy_alloc_size Unexecuted instantiation: sasl-server.c:p_get_max_easy_alloc_size Unexecuted instantiation: sasl-oauth2.c:p_get_max_easy_alloc_size Unexecuted instantiation: dsasl-client-mech-anonymous.c:p_get_max_easy_alloc_size Unexecuted instantiation: dsasl-client-mech-cram-md5.c:p_get_max_easy_alloc_size Unexecuted instantiation: dsasl-client-mech-digest-md5.c:p_get_max_easy_alloc_size Unexecuted instantiation: dsasl-client-mech-external.c:p_get_max_easy_alloc_size Unexecuted instantiation: dsasl-client-mech-login.c:p_get_max_easy_alloc_size Unexecuted instantiation: dsasl-client-mech-oauthbearer.c:p_get_max_easy_alloc_size Unexecuted instantiation: dsasl-client-mech-plain.c:p_get_max_easy_alloc_size Unexecuted instantiation: dsasl-client-mech-scram.c:p_get_max_easy_alloc_size Unexecuted instantiation: auth-digest.c:p_get_max_easy_alloc_size Unexecuted instantiation: auth-gs2.c:p_get_max_easy_alloc_size Unexecuted instantiation: auth-scram.c:p_get_max_easy_alloc_size Unexecuted instantiation: auth-scram-client.c:p_get_max_easy_alloc_size Unexecuted instantiation: auth-scram-server.c:p_get_max_easy_alloc_size Unexecuted instantiation: password-scheme.c:p_get_max_easy_alloc_size Unexecuted instantiation: password-scheme-md5crypt.c:p_get_max_easy_alloc_size Unexecuted instantiation: password-scheme-scram.c:p_get_max_easy_alloc_size Unexecuted instantiation: password-scheme-pbkdf2.c:p_get_max_easy_alloc_size Unexecuted instantiation: oauth2.c:p_get_max_easy_alloc_size Unexecuted instantiation: json-tree-io.c:p_get_max_easy_alloc_size Unexecuted instantiation: json-istream.c:p_get_max_easy_alloc_size Unexecuted instantiation: json-ostream.c:p_get_max_easy_alloc_size Unexecuted instantiation: json-tree.c:p_get_max_easy_alloc_size Unexecuted instantiation: json-parser.c:p_get_max_easy_alloc_size Unexecuted instantiation: json-generator.c:p_get_max_easy_alloc_size Unexecuted instantiation: istream-json-string.c:p_get_max_easy_alloc_size Unexecuted instantiation: json-syntax.c:p_get_max_easy_alloc_size Unexecuted instantiation: fuzzer.c:p_get_max_easy_alloc_size Unexecuted instantiation: array.c:p_get_max_easy_alloc_size Unexecuted instantiation: base64.c:p_get_max_easy_alloc_size Unexecuted instantiation: buffer.c:p_get_max_easy_alloc_size Unexecuted instantiation: data-stack.c:p_get_max_easy_alloc_size Unexecuted instantiation: event-log.c:p_get_max_easy_alloc_size Unexecuted instantiation: failures.c:p_get_max_easy_alloc_size Unexecuted instantiation: fd-util.c:p_get_max_easy_alloc_size Unexecuted instantiation: hash.c:p_get_max_easy_alloc_size Unexecuted instantiation: hash-method.c:p_get_max_easy_alloc_size Unexecuted instantiation: hex-binary.c:p_get_max_easy_alloc_size Unexecuted instantiation: hex-dec.c:p_get_max_easy_alloc_size Unexecuted instantiation: hmac.c:p_get_max_easy_alloc_size Unexecuted instantiation: hmac-cram-md5.c:p_get_max_easy_alloc_size Unexecuted instantiation: hostpid.c:p_get_max_easy_alloc_size Unexecuted instantiation: imem.c:p_get_max_easy_alloc_size Unexecuted instantiation: iostream.c:p_get_max_easy_alloc_size Unexecuted instantiation: iostream-pump.c:p_get_max_easy_alloc_size Unexecuted instantiation: istream.c:p_get_max_easy_alloc_size Unexecuted instantiation: istream-data.c:p_get_max_easy_alloc_size Unexecuted instantiation: istream-file.c:p_get_max_easy_alloc_size Unexecuted instantiation: istream-limit.c:p_get_max_easy_alloc_size Unexecuted instantiation: istream-seekable.c:p_get_max_easy_alloc_size Unexecuted instantiation: ioloop.c:p_get_max_easy_alloc_size Unexecuted instantiation: ioloop-notify-inotify.c:p_get_max_easy_alloc_size Unexecuted instantiation: ioloop-epoll.c:p_get_max_easy_alloc_size Unexecuted instantiation: lib.c:p_get_max_easy_alloc_size Unexecuted instantiation: lib-event.c:p_get_max_easy_alloc_size Unexecuted instantiation: lib-signals.c:p_get_max_easy_alloc_size Unexecuted instantiation: md4.c:p_get_max_easy_alloc_size Unexecuted instantiation: md5.c:p_get_max_easy_alloc_size Unexecuted instantiation: memarea.c:p_get_max_easy_alloc_size mempool.c:p_get_max_easy_alloc_size Line | Count | Source | 166 | 13.4k | { | 167 | 13.4k | return pool->v->get_max_easy_alloc_size(pool); | 168 | 13.4k | } |
Unexecuted instantiation: mempool-alloconly.c:p_get_max_easy_alloc_size Unexecuted instantiation: mempool-datastack.c:p_get_max_easy_alloc_size Unexecuted instantiation: mempool-system.c:p_get_max_easy_alloc_size Unexecuted instantiation: mempool-unsafe-datastack.c:p_get_max_easy_alloc_size Unexecuted instantiation: net.c:p_get_max_easy_alloc_size Unexecuted instantiation: ostream.c:p_get_max_easy_alloc_size Unexecuted instantiation: ostream-file.c:p_get_max_easy_alloc_size Unexecuted instantiation: path-util.c:p_get_max_easy_alloc_size Unexecuted instantiation: pkcs5.c:p_get_max_easy_alloc_size Unexecuted instantiation: primes.c:p_get_max_easy_alloc_size Unexecuted instantiation: printf-format-fix.c:p_get_max_easy_alloc_size Unexecuted instantiation: process-title.c:p_get_max_easy_alloc_size Unexecuted instantiation: priorityq.c:p_get_max_easy_alloc_size Unexecuted instantiation: randgen.c:p_get_max_easy_alloc_size Unexecuted instantiation: rand.c:p_get_max_easy_alloc_size Unexecuted instantiation: read-full.c:p_get_max_easy_alloc_size Unexecuted instantiation: restrict-access.c:p_get_max_easy_alloc_size Unexecuted instantiation: safe-memset.c:p_get_max_easy_alloc_size Unexecuted instantiation: safe-mkstemp.c:p_get_max_easy_alloc_size Unexecuted instantiation: sendfile-util.c:p_get_max_easy_alloc_size Unexecuted instantiation: sha1.c:p_get_max_easy_alloc_size Unexecuted instantiation: sha2.c:p_get_max_easy_alloc_size Unexecuted instantiation: sha3.c:p_get_max_easy_alloc_size Unexecuted instantiation: xxh64.c:p_get_max_easy_alloc_size Unexecuted instantiation: sleep.c:p_get_max_easy_alloc_size Unexecuted instantiation: str.c:p_get_max_easy_alloc_size Unexecuted instantiation: str-sanitize.c:p_get_max_easy_alloc_size Unexecuted instantiation: strescape.c:p_get_max_easy_alloc_size Unexecuted instantiation: strfuncs.c:p_get_max_easy_alloc_size Unexecuted instantiation: strnum.c:p_get_max_easy_alloc_size Unexecuted instantiation: time-util.c:p_get_max_easy_alloc_size Unexecuted instantiation: unichar.c:p_get_max_easy_alloc_size Unexecuted instantiation: unicode-break.c:p_get_max_easy_alloc_size Unexecuted instantiation: unicode-data-tables.c:p_get_max_easy_alloc_size Unexecuted instantiation: unicode-transform.c:p_get_max_easy_alloc_size Unexecuted instantiation: write-full.c:p_get_max_easy_alloc_size Unexecuted instantiation: backtrace-string.c:p_get_max_easy_alloc_size Unexecuted instantiation: bits.c:p_get_max_easy_alloc_size Unexecuted instantiation: eacces-error.c:p_get_max_easy_alloc_size Unexecuted instantiation: env-util.c:p_get_max_easy_alloc_size Unexecuted instantiation: event-filter.c:p_get_max_easy_alloc_size Unexecuted instantiation: event-filter-lexer.c:p_get_max_easy_alloc_size Unexecuted instantiation: event-filter-parser.c:p_get_max_easy_alloc_size Unexecuted instantiation: ipwd.c:p_get_max_easy_alloc_size Unexecuted instantiation: istream-concat.c:p_get_max_easy_alloc_size Unexecuted instantiation: ioloop-iolist.c:p_get_max_easy_alloc_size Unexecuted instantiation: ioloop-notify-fd.c:p_get_max_easy_alloc_size Unexecuted instantiation: str-parse.c:p_get_max_easy_alloc_size Unexecuted instantiation: wildcard-match.c:p_get_max_easy_alloc_size |
169 | | |
170 | | static inline const char *pool_get_name(pool_t pool) |
171 | 0 | { |
172 | 0 | return pool->v->get_name(pool); |
173 | 0 | } Unexecuted instantiation: dsasl-client-mech-ntlm-dummy.c:pool_get_name Unexecuted instantiation: fuzz-sasl-authentication.c:pool_get_name Unexecuted instantiation: dsasl-client.c:pool_get_name Unexecuted instantiation: sasl-server-mech-anonymous.c:pool_get_name Unexecuted instantiation: sasl-server-mech-cram-md5.c:pool_get_name Unexecuted instantiation: sasl-server-mech-digest-md5.c:pool_get_name Unexecuted instantiation: sasl-server-mech-login.c:pool_get_name Unexecuted instantiation: sasl-server-mech-oauth2.c:pool_get_name Unexecuted instantiation: sasl-server-mech-plain.c:pool_get_name Unexecuted instantiation: sasl-server-mech-scram.c:pool_get_name Unexecuted instantiation: sasl-server-mech.c:pool_get_name Unexecuted instantiation: sasl-server-request.c:pool_get_name Unexecuted instantiation: sasl-server.c:pool_get_name Unexecuted instantiation: sasl-oauth2.c:pool_get_name Unexecuted instantiation: dsasl-client-mech-anonymous.c:pool_get_name Unexecuted instantiation: dsasl-client-mech-cram-md5.c:pool_get_name Unexecuted instantiation: dsasl-client-mech-digest-md5.c:pool_get_name Unexecuted instantiation: dsasl-client-mech-external.c:pool_get_name Unexecuted instantiation: dsasl-client-mech-login.c:pool_get_name Unexecuted instantiation: dsasl-client-mech-oauthbearer.c:pool_get_name Unexecuted instantiation: dsasl-client-mech-plain.c:pool_get_name Unexecuted instantiation: dsasl-client-mech-scram.c:pool_get_name Unexecuted instantiation: auth-digest.c:pool_get_name Unexecuted instantiation: auth-gs2.c:pool_get_name Unexecuted instantiation: auth-scram.c:pool_get_name Unexecuted instantiation: auth-scram-client.c:pool_get_name Unexecuted instantiation: auth-scram-server.c:pool_get_name Unexecuted instantiation: password-scheme.c:pool_get_name Unexecuted instantiation: password-scheme-md5crypt.c:pool_get_name Unexecuted instantiation: password-scheme-scram.c:pool_get_name Unexecuted instantiation: password-scheme-pbkdf2.c:pool_get_name Unexecuted instantiation: oauth2.c:pool_get_name Unexecuted instantiation: json-tree-io.c:pool_get_name Unexecuted instantiation: json-istream.c:pool_get_name Unexecuted instantiation: json-ostream.c:pool_get_name Unexecuted instantiation: json-tree.c:pool_get_name Unexecuted instantiation: json-parser.c:pool_get_name Unexecuted instantiation: json-generator.c:pool_get_name Unexecuted instantiation: istream-json-string.c:pool_get_name Unexecuted instantiation: json-syntax.c:pool_get_name Unexecuted instantiation: fuzzer.c:pool_get_name Unexecuted instantiation: array.c:pool_get_name Unexecuted instantiation: base64.c:pool_get_name Unexecuted instantiation: buffer.c:pool_get_name Unexecuted instantiation: data-stack.c:pool_get_name Unexecuted instantiation: event-log.c:pool_get_name Unexecuted instantiation: failures.c:pool_get_name Unexecuted instantiation: fd-util.c:pool_get_name Unexecuted instantiation: hash.c:pool_get_name Unexecuted instantiation: hash-method.c:pool_get_name Unexecuted instantiation: hex-binary.c:pool_get_name Unexecuted instantiation: hex-dec.c:pool_get_name Unexecuted instantiation: hmac.c:pool_get_name Unexecuted instantiation: hmac-cram-md5.c:pool_get_name Unexecuted instantiation: hostpid.c:pool_get_name Unexecuted instantiation: imem.c:pool_get_name Unexecuted instantiation: iostream.c:pool_get_name Unexecuted instantiation: iostream-pump.c:pool_get_name Unexecuted instantiation: istream.c:pool_get_name Unexecuted instantiation: istream-data.c:pool_get_name Unexecuted instantiation: istream-file.c:pool_get_name Unexecuted instantiation: istream-limit.c:pool_get_name Unexecuted instantiation: istream-seekable.c:pool_get_name Unexecuted instantiation: ioloop.c:pool_get_name Unexecuted instantiation: ioloop-notify-inotify.c:pool_get_name Unexecuted instantiation: ioloop-epoll.c:pool_get_name Unexecuted instantiation: lib.c:pool_get_name Unexecuted instantiation: lib-event.c:pool_get_name Unexecuted instantiation: lib-signals.c:pool_get_name Unexecuted instantiation: md4.c:pool_get_name Unexecuted instantiation: md5.c:pool_get_name Unexecuted instantiation: memarea.c:pool_get_name Unexecuted instantiation: mempool.c:pool_get_name Unexecuted instantiation: mempool-alloconly.c:pool_get_name Unexecuted instantiation: mempool-datastack.c:pool_get_name Unexecuted instantiation: mempool-system.c:pool_get_name Unexecuted instantiation: mempool-unsafe-datastack.c:pool_get_name Unexecuted instantiation: net.c:pool_get_name Unexecuted instantiation: ostream.c:pool_get_name Unexecuted instantiation: ostream-file.c:pool_get_name Unexecuted instantiation: path-util.c:pool_get_name Unexecuted instantiation: pkcs5.c:pool_get_name Unexecuted instantiation: primes.c:pool_get_name Unexecuted instantiation: printf-format-fix.c:pool_get_name Unexecuted instantiation: process-title.c:pool_get_name Unexecuted instantiation: priorityq.c:pool_get_name Unexecuted instantiation: randgen.c:pool_get_name Unexecuted instantiation: rand.c:pool_get_name Unexecuted instantiation: read-full.c:pool_get_name Unexecuted instantiation: restrict-access.c:pool_get_name Unexecuted instantiation: safe-memset.c:pool_get_name Unexecuted instantiation: safe-mkstemp.c:pool_get_name Unexecuted instantiation: sendfile-util.c:pool_get_name Unexecuted instantiation: sha1.c:pool_get_name Unexecuted instantiation: sha2.c:pool_get_name Unexecuted instantiation: sha3.c:pool_get_name Unexecuted instantiation: xxh64.c:pool_get_name Unexecuted instantiation: sleep.c:pool_get_name Unexecuted instantiation: str.c:pool_get_name Unexecuted instantiation: str-sanitize.c:pool_get_name Unexecuted instantiation: strescape.c:pool_get_name Unexecuted instantiation: strfuncs.c:pool_get_name Unexecuted instantiation: strnum.c:pool_get_name Unexecuted instantiation: time-util.c:pool_get_name Unexecuted instantiation: unichar.c:pool_get_name Unexecuted instantiation: unicode-break.c:pool_get_name Unexecuted instantiation: unicode-data-tables.c:pool_get_name Unexecuted instantiation: unicode-transform.c:pool_get_name Unexecuted instantiation: write-full.c:pool_get_name Unexecuted instantiation: backtrace-string.c:pool_get_name Unexecuted instantiation: bits.c:pool_get_name Unexecuted instantiation: eacces-error.c:pool_get_name Unexecuted instantiation: env-util.c:pool_get_name Unexecuted instantiation: event-filter.c:pool_get_name Unexecuted instantiation: event-filter-lexer.c:pool_get_name Unexecuted instantiation: event-filter-parser.c:pool_get_name Unexecuted instantiation: ipwd.c:pool_get_name Unexecuted instantiation: istream-concat.c:pool_get_name Unexecuted instantiation: ioloop-iolist.c:pool_get_name Unexecuted instantiation: ioloop-notify-fd.c:pool_get_name Unexecuted instantiation: str-parse.c:pool_get_name Unexecuted instantiation: wildcard-match.c:pool_get_name |
174 | | |
175 | | static inline void pool_ref(pool_t pool) |
176 | 9.13k | { |
177 | 9.13k | pool->v->ref(pool); |
178 | 9.13k | } Unexecuted instantiation: dsasl-client-mech-ntlm-dummy.c:pool_ref Unexecuted instantiation: fuzz-sasl-authentication.c:pool_ref Unexecuted instantiation: dsasl-client.c:pool_ref Unexecuted instantiation: sasl-server-mech-anonymous.c:pool_ref Unexecuted instantiation: sasl-server-mech-cram-md5.c:pool_ref Unexecuted instantiation: sasl-server-mech-digest-md5.c:pool_ref Unexecuted instantiation: sasl-server-mech-login.c:pool_ref Unexecuted instantiation: sasl-server-mech-oauth2.c:pool_ref Unexecuted instantiation: sasl-server-mech-plain.c:pool_ref Unexecuted instantiation: sasl-server-mech-scram.c:pool_ref Unexecuted instantiation: sasl-server-mech.c:pool_ref Unexecuted instantiation: sasl-server-request.c:pool_ref Unexecuted instantiation: sasl-server.c:pool_ref Unexecuted instantiation: sasl-oauth2.c:pool_ref Unexecuted instantiation: dsasl-client-mech-anonymous.c:pool_ref Unexecuted instantiation: dsasl-client-mech-cram-md5.c:pool_ref Unexecuted instantiation: dsasl-client-mech-digest-md5.c:pool_ref Unexecuted instantiation: dsasl-client-mech-external.c:pool_ref Unexecuted instantiation: dsasl-client-mech-login.c:pool_ref Unexecuted instantiation: dsasl-client-mech-oauthbearer.c:pool_ref Unexecuted instantiation: dsasl-client-mech-plain.c:pool_ref Unexecuted instantiation: dsasl-client-mech-scram.c:pool_ref Unexecuted instantiation: auth-digest.c:pool_ref Unexecuted instantiation: auth-gs2.c:pool_ref Unexecuted instantiation: auth-scram.c:pool_ref Unexecuted instantiation: auth-scram-client.c:pool_ref auth-scram-server.c:pool_ref Line | Count | Source | 176 | 1.87k | { | 177 | 1.87k | pool->v->ref(pool); | 178 | 1.87k | } |
Unexecuted instantiation: password-scheme.c:pool_ref Unexecuted instantiation: password-scheme-md5crypt.c:pool_ref Unexecuted instantiation: password-scheme-scram.c:pool_ref Unexecuted instantiation: password-scheme-pbkdf2.c:pool_ref Unexecuted instantiation: oauth2.c:pool_ref Unexecuted instantiation: json-tree-io.c:pool_ref Unexecuted instantiation: json-istream.c:pool_ref Unexecuted instantiation: json-ostream.c:pool_ref Unexecuted instantiation: json-tree.c:pool_ref Unexecuted instantiation: json-parser.c:pool_ref Unexecuted instantiation: json-generator.c:pool_ref Unexecuted instantiation: istream-json-string.c:pool_ref Unexecuted instantiation: json-syntax.c:pool_ref Unexecuted instantiation: fuzzer.c:pool_ref Unexecuted instantiation: array.c:pool_ref Unexecuted instantiation: base64.c:pool_ref Unexecuted instantiation: buffer.c:pool_ref Unexecuted instantiation: data-stack.c:pool_ref Unexecuted instantiation: event-log.c:pool_ref Unexecuted instantiation: failures.c:pool_ref Unexecuted instantiation: fd-util.c:pool_ref Line | Count | Source | 176 | 7.26k | { | 177 | 7.26k | pool->v->ref(pool); | 178 | 7.26k | } |
Unexecuted instantiation: hash-method.c:pool_ref Unexecuted instantiation: hex-binary.c:pool_ref Unexecuted instantiation: hex-dec.c:pool_ref Unexecuted instantiation: hmac.c:pool_ref Unexecuted instantiation: hmac-cram-md5.c:pool_ref Unexecuted instantiation: hostpid.c:pool_ref Unexecuted instantiation: imem.c:pool_ref Unexecuted instantiation: iostream.c:pool_ref Unexecuted instantiation: iostream-pump.c:pool_ref Unexecuted instantiation: istream.c:pool_ref Unexecuted instantiation: istream-data.c:pool_ref Unexecuted instantiation: istream-file.c:pool_ref Unexecuted instantiation: istream-limit.c:pool_ref Unexecuted instantiation: istream-seekable.c:pool_ref Unexecuted instantiation: ioloop.c:pool_ref Unexecuted instantiation: ioloop-notify-inotify.c:pool_ref Unexecuted instantiation: ioloop-epoll.c:pool_ref Unexecuted instantiation: lib.c:pool_ref Unexecuted instantiation: lib-event.c:pool_ref Unexecuted instantiation: lib-signals.c:pool_ref Unexecuted instantiation: md4.c:pool_ref Unexecuted instantiation: md5.c:pool_ref Unexecuted instantiation: memarea.c:pool_ref Unexecuted instantiation: mempool.c:pool_ref Unexecuted instantiation: mempool-alloconly.c:pool_ref Unexecuted instantiation: mempool-datastack.c:pool_ref Unexecuted instantiation: mempool-system.c:pool_ref Unexecuted instantiation: mempool-unsafe-datastack.c:pool_ref Unexecuted instantiation: net.c:pool_ref Unexecuted instantiation: ostream.c:pool_ref Unexecuted instantiation: ostream-file.c:pool_ref Unexecuted instantiation: path-util.c:pool_ref Unexecuted instantiation: pkcs5.c:pool_ref Unexecuted instantiation: primes.c:pool_ref Unexecuted instantiation: printf-format-fix.c:pool_ref Unexecuted instantiation: process-title.c:pool_ref Unexecuted instantiation: priorityq.c:pool_ref Unexecuted instantiation: randgen.c:pool_ref Unexecuted instantiation: rand.c:pool_ref Unexecuted instantiation: read-full.c:pool_ref Unexecuted instantiation: restrict-access.c:pool_ref Unexecuted instantiation: safe-memset.c:pool_ref Unexecuted instantiation: safe-mkstemp.c:pool_ref Unexecuted instantiation: sendfile-util.c:pool_ref Unexecuted instantiation: sha1.c:pool_ref Unexecuted instantiation: sha2.c:pool_ref Unexecuted instantiation: sha3.c:pool_ref Unexecuted instantiation: xxh64.c:pool_ref Unexecuted instantiation: sleep.c:pool_ref Unexecuted instantiation: str.c:pool_ref Unexecuted instantiation: str-sanitize.c:pool_ref Unexecuted instantiation: strescape.c:pool_ref Unexecuted instantiation: strfuncs.c:pool_ref Unexecuted instantiation: strnum.c:pool_ref Unexecuted instantiation: time-util.c:pool_ref Unexecuted instantiation: unichar.c:pool_ref Unexecuted instantiation: unicode-break.c:pool_ref Unexecuted instantiation: unicode-data-tables.c:pool_ref Unexecuted instantiation: unicode-transform.c:pool_ref Unexecuted instantiation: write-full.c:pool_ref Unexecuted instantiation: backtrace-string.c:pool_ref Unexecuted instantiation: bits.c:pool_ref Unexecuted instantiation: eacces-error.c:pool_ref Unexecuted instantiation: env-util.c:pool_ref Unexecuted instantiation: event-filter.c:pool_ref Unexecuted instantiation: event-filter-lexer.c:pool_ref Unexecuted instantiation: event-filter-parser.c:pool_ref Unexecuted instantiation: ipwd.c:pool_ref Unexecuted instantiation: istream-concat.c:pool_ref Unexecuted instantiation: ioloop-iolist.c:pool_ref Unexecuted instantiation: ioloop-notify-fd.c:pool_ref Unexecuted instantiation: str-parse.c:pool_ref Unexecuted instantiation: wildcard-match.c:pool_ref |
179 | | |
180 | | static inline void pool_unref(pool_t *pool) |
181 | 158k | { |
182 | 158k | if (*pool != NULL) |
183 | 158k | (*pool)->v->unref(pool); |
184 | 158k | } Unexecuted instantiation: dsasl-client-mech-ntlm-dummy.c:pool_unref fuzz-sasl-authentication.c:pool_unref Line | Count | Source | 181 | 6.96k | { | 182 | 6.96k | if (*pool != NULL) | 183 | 6.96k | (*pool)->v->unref(pool); | 184 | 6.96k | } |
dsasl-client.c:pool_unref Line | Count | Source | 181 | 6.96k | { | 182 | 6.96k | if (*pool != NULL) | 183 | 6.96k | (*pool)->v->unref(pool); | 184 | 6.96k | } |
Unexecuted instantiation: sasl-server-mech-anonymous.c:pool_unref Unexecuted instantiation: sasl-server-mech-cram-md5.c:pool_unref Unexecuted instantiation: sasl-server-mech-digest-md5.c:pool_unref Unexecuted instantiation: sasl-server-mech-login.c:pool_unref Unexecuted instantiation: sasl-server-mech-oauth2.c:pool_unref Unexecuted instantiation: sasl-server-mech-plain.c:pool_unref Unexecuted instantiation: sasl-server-mech-scram.c:pool_unref Unexecuted instantiation: sasl-server-mech.c:pool_unref sasl-server-request.c:pool_unref Line | Count | Source | 181 | 6.96k | { | 182 | 6.96k | if (*pool != NULL) | 183 | 6.96k | (*pool)->v->unref(pool); | 184 | 6.96k | } |
Line | Count | Source | 181 | 14.2k | { | 182 | 14.2k | if (*pool != NULL) | 183 | 14.2k | (*pool)->v->unref(pool); | 184 | 14.2k | } |
Unexecuted instantiation: sasl-oauth2.c:pool_unref Unexecuted instantiation: dsasl-client-mech-anonymous.c:pool_unref Unexecuted instantiation: dsasl-client-mech-cram-md5.c:pool_unref Unexecuted instantiation: dsasl-client-mech-digest-md5.c:pool_unref Unexecuted instantiation: dsasl-client-mech-external.c:pool_unref Unexecuted instantiation: dsasl-client-mech-login.c:pool_unref Unexecuted instantiation: dsasl-client-mech-oauthbearer.c:pool_unref Unexecuted instantiation: dsasl-client-mech-plain.c:pool_unref Unexecuted instantiation: dsasl-client-mech-scram.c:pool_unref Unexecuted instantiation: auth-digest.c:pool_unref Unexecuted instantiation: auth-gs2.c:pool_unref Unexecuted instantiation: auth-scram.c:pool_unref Unexecuted instantiation: auth-scram-client.c:pool_unref auth-scram-server.c:pool_unref Line | Count | Source | 181 | 1.87k | { | 182 | 1.87k | if (*pool != NULL) | 183 | 1.87k | (*pool)->v->unref(pool); | 184 | 1.87k | } |
Unexecuted instantiation: password-scheme.c:pool_unref Unexecuted instantiation: password-scheme-md5crypt.c:pool_unref Unexecuted instantiation: password-scheme-scram.c:pool_unref Unexecuted instantiation: password-scheme-pbkdf2.c:pool_unref Unexecuted instantiation: oauth2.c:pool_unref Unexecuted instantiation: json-tree-io.c:pool_unref Unexecuted instantiation: json-istream.c:pool_unref Unexecuted instantiation: json-ostream.c:pool_unref Unexecuted instantiation: json-tree.c:pool_unref Unexecuted instantiation: json-parser.c:pool_unref Unexecuted instantiation: json-generator.c:pool_unref Unexecuted instantiation: istream-json-string.c:pool_unref Unexecuted instantiation: json-syntax.c:pool_unref Unexecuted instantiation: fuzzer.c:pool_unref Unexecuted instantiation: array.c:pool_unref Unexecuted instantiation: base64.c:pool_unref Unexecuted instantiation: buffer.c:pool_unref Unexecuted instantiation: data-stack.c:pool_unref Unexecuted instantiation: event-log.c:pool_unref Unexecuted instantiation: failures.c:pool_unref Unexecuted instantiation: fd-util.c:pool_unref Line | Count | Source | 181 | 7.26k | { | 182 | 7.26k | if (*pool != NULL) | 183 | 7.26k | (*pool)->v->unref(pool); | 184 | 7.26k | } |
Unexecuted instantiation: hash-method.c:pool_unref Unexecuted instantiation: hex-binary.c:pool_unref Unexecuted instantiation: hex-dec.c:pool_unref Unexecuted instantiation: hmac.c:pool_unref Unexecuted instantiation: hmac-cram-md5.c:pool_unref Unexecuted instantiation: hostpid.c:pool_unref Unexecuted instantiation: imem.c:pool_unref Unexecuted instantiation: iostream.c:pool_unref Unexecuted instantiation: iostream-pump.c:pool_unref Unexecuted instantiation: istream.c:pool_unref Unexecuted instantiation: istream-data.c:pool_unref Unexecuted instantiation: istream-file.c:pool_unref Unexecuted instantiation: istream-limit.c:pool_unref Unexecuted instantiation: istream-seekable.c:pool_unref Unexecuted instantiation: ioloop.c:pool_unref Unexecuted instantiation: ioloop-notify-inotify.c:pool_unref Unexecuted instantiation: ioloop-epoll.c:pool_unref Unexecuted instantiation: lib.c:pool_unref Line | Count | Source | 181 | 114k | { | 182 | 114k | if (*pool != NULL) | 183 | 114k | (*pool)->v->unref(pool); | 184 | 114k | } |
Unexecuted instantiation: lib-signals.c:pool_unref Unexecuted instantiation: md4.c:pool_unref Unexecuted instantiation: md5.c:pool_unref Unexecuted instantiation: memarea.c:pool_unref Unexecuted instantiation: mempool.c:pool_unref Unexecuted instantiation: mempool-alloconly.c:pool_unref Unexecuted instantiation: mempool-datastack.c:pool_unref Unexecuted instantiation: mempool-system.c:pool_unref Unexecuted instantiation: mempool-unsafe-datastack.c:pool_unref Unexecuted instantiation: net.c:pool_unref Unexecuted instantiation: ostream.c:pool_unref Unexecuted instantiation: ostream-file.c:pool_unref Unexecuted instantiation: path-util.c:pool_unref Unexecuted instantiation: pkcs5.c:pool_unref Unexecuted instantiation: primes.c:pool_unref Unexecuted instantiation: printf-format-fix.c:pool_unref Unexecuted instantiation: process-title.c:pool_unref Unexecuted instantiation: priorityq.c:pool_unref Unexecuted instantiation: randgen.c:pool_unref Unexecuted instantiation: rand.c:pool_unref Unexecuted instantiation: read-full.c:pool_unref Unexecuted instantiation: restrict-access.c:pool_unref Unexecuted instantiation: safe-memset.c:pool_unref Unexecuted instantiation: safe-mkstemp.c:pool_unref Unexecuted instantiation: sendfile-util.c:pool_unref Unexecuted instantiation: sha1.c:pool_unref Unexecuted instantiation: sha2.c:pool_unref Unexecuted instantiation: sha3.c:pool_unref Unexecuted instantiation: xxh64.c:pool_unref Unexecuted instantiation: sleep.c:pool_unref Unexecuted instantiation: str.c:pool_unref Unexecuted instantiation: str-sanitize.c:pool_unref Unexecuted instantiation: strescape.c:pool_unref Unexecuted instantiation: strfuncs.c:pool_unref Unexecuted instantiation: strnum.c:pool_unref Unexecuted instantiation: time-util.c:pool_unref Unexecuted instantiation: unichar.c:pool_unref Unexecuted instantiation: unicode-break.c:pool_unref Unexecuted instantiation: unicode-data-tables.c:pool_unref Unexecuted instantiation: unicode-transform.c:pool_unref Unexecuted instantiation: write-full.c:pool_unref Unexecuted instantiation: backtrace-string.c:pool_unref Unexecuted instantiation: bits.c:pool_unref Unexecuted instantiation: eacces-error.c:pool_unref Unexecuted instantiation: env-util.c:pool_unref Unexecuted instantiation: event-filter.c:pool_unref Unexecuted instantiation: event-filter-lexer.c:pool_unref Unexecuted instantiation: event-filter-parser.c:pool_unref Unexecuted instantiation: ipwd.c:pool_unref Unexecuted instantiation: istream-concat.c:pool_unref Unexecuted instantiation: ioloop-iolist.c:pool_unref Unexecuted instantiation: ioloop-notify-fd.c:pool_unref Unexecuted instantiation: str-parse.c:pool_unref Unexecuted instantiation: wildcard-match.c:pool_unref |
185 | | |
186 | | /* These functions are only for pools created with pool_alloconly_create(): */ |
187 | | |
188 | | /* Returns how much memory has been allocated from this pool. */ |
189 | | size_t pool_alloconly_get_total_used_size(pool_t pool); |
190 | | /* Returns how much system memory has been allocated for this pool. */ |
191 | | size_t pool_alloconly_get_total_alloc_size(pool_t pool); |
192 | | |
193 | | /* Returns how much memory has been allocated from this pool. */ |
194 | | size_t pool_allocfree_get_total_used_size(pool_t pool); |
195 | | /* Returns how much system memory has been allocated for this pool. */ |
196 | | size_t pool_allocfree_get_total_alloc_size(pool_t pool); |
197 | | |
198 | | /* private: */ |
199 | | void pool_system_free(pool_t pool, void *mem); |
200 | | void pool_external_refs_unref(pool_t pool); |
201 | | |
202 | | #endif |