Coverage Report

Created: 2026-09-28 06:27

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/freeradius-server/src/freeradius-devel/util/talloc.h
Line
Count
Source
1
#pragma once
2
/*
3
 *  This program is free software; you can redistribute it and/or modify
4
 *  it under the terms of the GNU General Public License as published by
5
 *  the Free Software Foundation; either version 2 of the License, or
6
 *  (at your option) any later version.
7
 *
8
 *  This program is distributed in the hope that it will be useful,
9
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
10
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11
 *  GNU General Public License for more details.
12
 *
13
 *  You should have received a copy of the GNU General Public License
14
 *  along with this program; if not, write to the Free Software
15
 *  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
16
 */
17
18
/** Functions which we wish were included in the standard talloc distribution
19
 *
20
 * @file src/lib/util/talloc.h
21
 *
22
 * @copyright 2017 The FreeRADIUS server project
23
 * @copyright 2017 Arran Cudbard-Bell (a.cudbardb@freeradius.org)
24
 */
25
RCSIDH(talloc_h, "$Id: 04832c962c8a00baa2e6df326efbeabab2160301 $")
26
27
#ifdef __cplusplus
28
extern "C" {
29
#endif
30
31
#include <ctype.h>
32
33
#include <freeradius-devel/autoconf.h>  /* Very easy to miss including in special builds */
34
#include <freeradius-devel/build.h>
35
#include <freeradius-devel/missing.h>
36
37
#ifdef TALLOC_EXTENSIONS
38
#include TALLOC_EXTENSIONS
39
#else
40
41
/*
42
 *  The default talloc headers have doxygen complaints.
43
 */
44
#ifdef HAVE_WDOCUMENTATION
45
DIAG_OFF(documentation)
46
#endif
47
#include <talloc.h>
48
#ifdef HAVE_WDOCUMENTATION
49
DIAG_ON(documentation)
50
#endif
51
52
#undef talloc_autofree_context
53
/** The original function is deprecated, so replace it with our version
54
 */
55
72
#define talloc_autofree_context talloc_autofree_context_global
56
57
/** Iterate over a talloced array of elements
58
 *
59
@verbatim
60
talloc_foreach(vpt_m, vpt) {
61
  tmpl_debug(vpt);
62
}
63
@endverbatim
64
 *
65
 * There seems to be a limitation in for loop initialiser arguments where they all
66
 * must be the same type, though we can control the number of layers of pointer
67
 * indirection on a per variable basis.
68
 *
69
 * We declare _p to be a pointer of the specified _type, and initialise it to the
70
 * start of the array.  We declare _end to be a pointer of the specified type and
71
 * initialise it to point to the end of the array using talloc_array_length().
72
 *
73
 * _iter is only updated in the condition to avoid de-referencing invalid memory.
74
 *
75
 * @param[in] _array  to iterate over.  May contain zero elements.
76
 * @param[in] _iter Name of iteration variable.
77
 *      Will be declared in the scope of the loop.
78
 */
79
#define talloc_foreach(_array, _iter) \
80
  for (__typeof__(_array[0]) _iter, *_p = (void *)(_array), *_end = _array ? (void *)((_array) + talloc_array_length(_array)) : NULL; \
81
       (_p < _end) && (_iter = *((void **)(uintptr_t)(_p))); \
82
       _p = (__typeof__(_p))((__typeof__(_array))_p) + 1)
83
84
typedef int(* fr_talloc_free_func_t)(void *fire_ctx, void *uctx);
85
86
typedef struct fr_talloc_destructor_s fr_talloc_destructor_t;
87
typedef struct fr_talloc_destructor_disarm_s fr_talloc_destructor_disarm_t;
88
89
/** Structure to record a destructor operation on a specific talloc chunk
90
 *
91
 * Provided here so that additional memory can be allocated with talloc pool.
92
 */
93
struct fr_talloc_destructor_s {
94
  void        *fire;      //!< Parent chunk.
95
96
  fr_talloc_free_func_t   func;     //!< Free function.
97
  void        *uctx;      //!< uctx to pass to free function.
98
  fr_talloc_destructor_disarm_t *ds;      //!< Chunk to free.
99
};
100
101
/** Structure to record a destructor to disarm if a child talloc chunk is freed
102
 *
103
 * Provided here so that additional memory can be allocated with talloc pool.
104
 */
105
struct fr_talloc_destructor_disarm_s {
106
  fr_talloc_destructor_t    *d; //!< Destructor to disarm.
107
};
108
109
/*
110
 *  talloc portability issues.  'const' is not part of the talloc
111
 *  type, but it is part of the pointer type.  But only if
112
 *  talloc_get_type_abort() is just a cast.
113
 */
114
#ifdef TALLOC_GET_TYPE_ABORT_NOOP
115
#  define talloc_get_type_abort_const(ptr, type) (const type *)(ptr)
116
#else
117
192M
#  define talloc_get_type_abort_const talloc_get_type_abort
118
#endif
119
120
/** Allocate a top level chunk with a constant name
121
 *
122
 * @param[in] name  Must be a string literal.
123
 * @return
124
 *  - NULL on allocation error.
125
 *  - A new talloc chunk on success.
126
 */
127
static inline TALLOC_CTX *talloc_init_const(char const *name)
128
43.4k
{
129
43.4k
  TALLOC_CTX *ctx;
130
131
43.4k
  ctx = talloc_new(NULL);
132
43.4k
  if (unlikely(!ctx)) return NULL;
133
134
43.4k
  talloc_set_name_const(ctx, name);
135
136
43.4k
  return ctx;
137
43.4k
}
fuzzer_dhcpv6.c:talloc_init_const
Line
Count
Source
128
5.49k
{
129
5.49k
  TALLOC_CTX *ctx;
130
131
5.49k
  ctx = talloc_new(NULL);
132
5.49k
  if (unlikely(!ctx)) return NULL;
133
134
5.49k
  talloc_set_name_const(ctx, name);
135
136
5.49k
  return ctx;
137
5.49k
}
Unexecuted instantiation: common.c:talloc_init_const
fuzzer_util.c:talloc_init_const
Line
Count
Source
128
4.65k
{
129
4.65k
  TALLOC_CTX *ctx;
130
131
4.65k
  ctx = talloc_new(NULL);
132
4.65k
  if (unlikely(!ctx)) return NULL;
133
134
4.65k
  talloc_set_name_const(ctx, name);
135
136
4.65k
  return ctx;
137
4.65k
}
fuzzer_dhcpv4.c:talloc_init_const
Line
Count
Source
128
1.20k
{
129
1.20k
  TALLOC_CTX *ctx;
130
131
1.20k
  ctx = talloc_new(NULL);
132
1.20k
  if (unlikely(!ctx)) return NULL;
133
134
1.20k
  talloc_set_name_const(ctx, name);
135
136
1.20k
  return ctx;
137
1.20k
}
Unexecuted instantiation: fuzzer_cf.c:talloc_init_const
Unexecuted instantiation: fuzzer_base16_32_64.c:talloc_init_const
fuzzer_cbor.c:talloc_init_const
Line
Count
Source
128
4.61k
{
129
4.61k
  TALLOC_CTX *ctx;
130
131
4.61k
  ctx = talloc_new(NULL);
132
4.61k
  if (unlikely(!ctx)) return NULL;
133
134
4.61k
  talloc_set_name_const(ctx, name);
135
136
4.61k
  return ctx;
137
4.61k
}
fuzzer_xlat.c:talloc_init_const
Line
Count
Source
128
102
{
129
102
  TALLOC_CTX *ctx;
130
131
102
  ctx = talloc_new(NULL);
132
102
  if (unlikely(!ctx)) return NULL;
133
134
102
  talloc_set_name_const(ctx, name);
135
136
102
  return ctx;
137
102
}
fuzzer_der.c:talloc_init_const
Line
Count
Source
128
1.12k
{
129
1.12k
  TALLOC_CTX *ctx;
130
131
1.12k
  ctx = talloc_new(NULL);
132
1.12k
  if (unlikely(!ctx)) return NULL;
133
134
1.12k
  talloc_set_name_const(ctx, name);
135
136
1.12k
  return ctx;
137
1.12k
}
fuzzer_dns.c:talloc_init_const
Line
Count
Source
128
1.60k
{
129
1.60k
  TALLOC_CTX *ctx;
130
131
1.60k
  ctx = talloc_new(NULL);
132
1.60k
  if (unlikely(!ctx)) return NULL;
133
134
1.60k
  talloc_set_name_const(ctx, name);
135
136
1.60k
  return ctx;
137
1.60k
}
fuzzer_tacacs.c:talloc_init_const
Line
Count
Source
128
5.00k
{
129
5.00k
  TALLOC_CTX *ctx;
130
131
5.00k
  ctx = talloc_new(NULL);
132
5.00k
  if (unlikely(!ctx)) return NULL;
133
134
5.00k
  talloc_set_name_const(ctx, name);
135
136
5.00k
  return ctx;
137
5.00k
}
Unexecuted instantiation: fuzzer_json.c:talloc_init_const
fuzzer_bfd.c:talloc_init_const
Line
Count
Source
128
1.73k
{
129
1.73k
  TALLOC_CTX *ctx;
130
131
1.73k
  ctx = talloc_new(NULL);
132
1.73k
  if (unlikely(!ctx)) return NULL;
133
134
1.73k
  talloc_set_name_const(ctx, name);
135
136
1.73k
  return ctx;
137
1.73k
}
fuzzer_radius.c:talloc_init_const
Line
Count
Source
128
4.88k
{
129
4.88k
  TALLOC_CTX *ctx;
130
131
4.88k
  ctx = talloc_new(NULL);
132
4.88k
  if (unlikely(!ctx)) return NULL;
133
134
4.88k
  talloc_set_name_const(ctx, name);
135
136
4.88k
  return ctx;
137
4.88k
}
fuzzer_tmpl.c:talloc_init_const
Line
Count
Source
128
71
{
129
71
  TALLOC_CTX *ctx;
130
131
71
  ctx = talloc_new(NULL);
132
71
  if (unlikely(!ctx)) return NULL;
133
134
71
  talloc_set_name_const(ctx, name);
135
136
71
  return ctx;
137
71
}
fuzzer_tftp.c:talloc_init_const
Line
Count
Source
128
419
{
129
419
  TALLOC_CTX *ctx;
130
131
419
  ctx = talloc_new(NULL);
132
419
  if (unlikely(!ctx)) return NULL;
133
134
419
  talloc_set_name_const(ctx, name);
135
136
419
  return ctx;
137
419
}
fuzzer_value.c:talloc_init_const
Line
Count
Source
128
4.04k
{
129
4.04k
  TALLOC_CTX *ctx;
130
131
4.04k
  ctx = talloc_new(NULL);
132
4.04k
  if (unlikely(!ctx)) return NULL;
133
134
4.04k
  talloc_set_name_const(ctx, name);
135
136
4.04k
  return ctx;
137
4.04k
}
fuzzer_arp.c:talloc_init_const
Line
Count
Source
128
81
{
129
81
  TALLOC_CTX *ctx;
130
131
81
  ctx = talloc_new(NULL);
132
81
  if (unlikely(!ctx)) return NULL;
133
134
81
  talloc_set_name_const(ctx, name);
135
136
81
  return ctx;
137
81
}
fuzzer_vmps.c:talloc_init_const
Line
Count
Source
128
343
{
129
343
  TALLOC_CTX *ctx;
130
131
343
  ctx = talloc_new(NULL);
132
343
  if (unlikely(!ctx)) return NULL;
133
134
343
  talloc_set_name_const(ctx, name);
135
136
343
  return ctx;
137
343
}
Unexecuted instantiation: atexit.c:talloc_init_const
Unexecuted instantiation: backtrace.c:talloc_init_const
Unexecuted instantiation: base16.c:talloc_init_const
Unexecuted instantiation: base32.c:talloc_init_const
Unexecuted instantiation: base64.c:talloc_init_const
Unexecuted instantiation: calc.c:talloc_init_const
Unexecuted instantiation: cbor.c:talloc_init_const
Unexecuted instantiation: dbuff.c:talloc_init_const
Unexecuted instantiation: debug.c:talloc_init_const
Unexecuted instantiation: decode.c:talloc_init_const
Unexecuted instantiation: dict_ext.c:talloc_init_const
Unexecuted instantiation: dict_fixup.c:talloc_init_const
Unexecuted instantiation: dict_print.c:talloc_init_const
Unexecuted instantiation: dict_test.c:talloc_init_const
Unexecuted instantiation: dict_tokenize.c:talloc_init_const
Unexecuted instantiation: dict_unknown.c:talloc_init_const
Unexecuted instantiation: dict_util.c:talloc_init_const
Unexecuted instantiation: dict_validate.c:talloc_init_const
Unexecuted instantiation: dl.c:talloc_init_const
Unexecuted instantiation: dns.c:talloc_init_const
Unexecuted instantiation: edit.c:talloc_init_const
Unexecuted instantiation: encode.c:talloc_init_const
Unexecuted instantiation: event.c:talloc_init_const
Unexecuted instantiation: timer.c:talloc_init_const
Unexecuted instantiation: ext.c:talloc_init_const
Unexecuted instantiation: fifo.c:talloc_init_const
Unexecuted instantiation: file.c:talloc_init_const
Unexecuted instantiation: fring.c:talloc_init_const
Unexecuted instantiation: hash.c:talloc_init_const
Unexecuted instantiation: heap.c:talloc_init_const
Unexecuted instantiation: hmac_md5.c:talloc_init_const
Unexecuted instantiation: hmac_sha1.c:talloc_init_const
Unexecuted instantiation: htrie.c:talloc_init_const
Unexecuted instantiation: inet.c:talloc_init_const
Unexecuted instantiation: iovec.c:talloc_init_const
Unexecuted instantiation: log.c:talloc_init_const
Unexecuted instantiation: lst.c:talloc_init_const
Unexecuted instantiation: machine.c:talloc_init_const
Unexecuted instantiation: md4.c:talloc_init_const
Unexecuted instantiation: md5.c:talloc_init_const
Unexecuted instantiation: minmax_heap.c:talloc_init_const
Unexecuted instantiation: misc.c:talloc_init_const
Unexecuted instantiation: net.c:talloc_init_const
Unexecuted instantiation: packet.c:talloc_init_const
Unexecuted instantiation: pair.c:talloc_init_const
Unexecuted instantiation: pair_inline.c:talloc_init_const
Unexecuted instantiation: pair_legacy.c:talloc_init_const
Unexecuted instantiation: pair_print.c:talloc_init_const
Unexecuted instantiation: pair_tokenize.c:talloc_init_const
Unexecuted instantiation: perm.c:talloc_init_const
Unexecuted instantiation: print.c:talloc_init_const
Unexecuted instantiation: proto.c:talloc_init_const
Unexecuted instantiation: rand.c:talloc_init_const
Unexecuted instantiation: rb.c:talloc_init_const
Unexecuted instantiation: rb_expire.c:talloc_init_const
Unexecuted instantiation: regex.c:talloc_init_const
Unexecuted instantiation: retry.c:talloc_init_const
Unexecuted instantiation: sbuff.c:talloc_init_const
Unexecuted instantiation: sem.c:talloc_init_const
Unexecuted instantiation: semaphore.c:talloc_init_const
Unexecuted instantiation: size.c:talloc_init_const
Unexecuted instantiation: skip.c:talloc_init_const
Unexecuted instantiation: socket.c:talloc_init_const
Unexecuted instantiation: stats.c:talloc_init_const
Unexecuted instantiation: strerror.c:talloc_init_const
Unexecuted instantiation: struct.c:talloc_init_const
Unexecuted instantiation: syserror.c:talloc_init_const
Unexecuted instantiation: table.c:talloc_init_const
talloc.c:talloc_init_const
Line
Count
Source
128
72
{
129
72
  TALLOC_CTX *ctx;
130
131
72
  ctx = talloc_new(NULL);
132
72
  if (unlikely(!ctx)) return NULL;
133
134
72
  talloc_set_name_const(ctx, name);
135
136
72
  return ctx;
137
72
}
Unexecuted instantiation: time.c:talloc_init_const
Unexecuted instantiation: timeval.c:talloc_init_const
Unexecuted instantiation: token.c:talloc_init_const
Unexecuted instantiation: trie.c:talloc_init_const
Unexecuted instantiation: types.c:talloc_init_const
Unexecuted instantiation: udp.c:talloc_init_const
Unexecuted instantiation: udp_queue.c:talloc_init_const
Unexecuted instantiation: udpfromto.c:talloc_init_const
Unexecuted instantiation: uri.c:talloc_init_const
Unexecuted instantiation: value.c:talloc_init_const
Unexecuted instantiation: fuzzer.c:talloc_init_const
base.c:talloc_init_const
Line
Count
Source
128
8.04k
{
129
8.04k
  TALLOC_CTX *ctx;
130
131
8.04k
  ctx = talloc_new(NULL);
132
8.04k
  if (unlikely(!ctx)) return NULL;
133
134
8.04k
  talloc_set_name_const(ctx, name);
135
136
8.04k
  return ctx;
137
8.04k
}
Unexecuted instantiation: list.c:talloc_init_const
Unexecuted instantiation: tcp.c:talloc_init_const
Unexecuted instantiation: abinary.c:talloc_init_const
Unexecuted instantiation: raw.c:talloc_init_const
Unexecuted instantiation: vmps.c:talloc_init_const
Unexecuted instantiation: bio.c:talloc_init_const
Unexecuted instantiation: cache.c:talloc_init_const
Unexecuted instantiation: cert.c:talloc_init_const
Unexecuted instantiation: conf.c:talloc_init_const
Unexecuted instantiation: connection.c:talloc_init_const
Unexecuted instantiation: ctx.c:talloc_init_const
Unexecuted instantiation: pairs.c:talloc_init_const
Unexecuted instantiation: session.c:talloc_init_const
Unexecuted instantiation: utils.c:talloc_init_const
Unexecuted instantiation: verify.c:talloc_init_const
Unexecuted instantiation: version.c:talloc_init_const
Unexecuted instantiation: virtual_server.c:talloc_init_const
Unexecuted instantiation: auth.c:talloc_init_const
Unexecuted instantiation: cf_file.c:talloc_init_const
Unexecuted instantiation: cf_parse.c:talloc_init_const
Unexecuted instantiation: cf_util.c:talloc_init_const
Unexecuted instantiation: client.c:talloc_init_const
Unexecuted instantiation: command.c:talloc_init_const
Unexecuted instantiation: dependency.c:talloc_init_const
Unexecuted instantiation: dl_module.c:talloc_init_const
Unexecuted instantiation: exec.c:talloc_init_const
Unexecuted instantiation: exec_legacy.c:talloc_init_const
Unexecuted instantiation: exfile.c:talloc_init_const
Unexecuted instantiation: global_lib.c:talloc_init_const
Unexecuted instantiation: main_config.c:talloc_init_const
Unexecuted instantiation: main_loop.c:talloc_init_const
Unexecuted instantiation: map.c:talloc_init_const
Unexecuted instantiation: map_proc.c:talloc_init_const
Unexecuted instantiation: module.c:talloc_init_const
Unexecuted instantiation: module_method.c:talloc_init_const
Unexecuted instantiation: module_rlm.c:talloc_init_const
Unexecuted instantiation: paircmp.c:talloc_init_const
Unexecuted instantiation: pairmove.c:talloc_init_const
Unexecuted instantiation: password.c:talloc_init_const
Unexecuted instantiation: pool.c:talloc_init_const
Unexecuted instantiation: regex.c:talloc_init_const
Unexecuted instantiation: request.c:talloc_init_const
Unexecuted instantiation: request_data.c:talloc_init_const
Unexecuted instantiation: section.c:talloc_init_const
Unexecuted instantiation: snmp.c:talloc_init_const
Unexecuted instantiation: state.c:talloc_init_const
Unexecuted instantiation: tmpl_dcursor.c:talloc_init_const
Unexecuted instantiation: tmpl_eval.c:talloc_init_const
Unexecuted instantiation: tmpl_tokenize.c:talloc_init_const
Unexecuted instantiation: time_tracking.c:talloc_init_const
Unexecuted instantiation: trigger.c:talloc_init_const
Unexecuted instantiation: trunk.c:talloc_init_const
Unexecuted instantiation: users_file.c:talloc_init_const
Unexecuted instantiation: util.c:talloc_init_const
Unexecuted instantiation: virtual_servers.c:talloc_init_const
Unexecuted instantiation: call.c:talloc_init_const
Unexecuted instantiation: call_env.c:talloc_init_const
Unexecuted instantiation: caller.c:talloc_init_const
Unexecuted instantiation: catch.c:talloc_init_const
Unexecuted instantiation: child_request.c:talloc_init_const
Unexecuted instantiation: compile.c:talloc_init_const
Unexecuted instantiation: condition.c:talloc_init_const
Unexecuted instantiation: detach.c:talloc_init_const
Unexecuted instantiation: finally.c:talloc_init_const
Unexecuted instantiation: foreach.c:talloc_init_const
Unexecuted instantiation: function.c:talloc_init_const
Unexecuted instantiation: group.c:talloc_init_const
Unexecuted instantiation: interpret.c:talloc_init_const
Unexecuted instantiation: interpret_synchronous.c:talloc_init_const
Unexecuted instantiation: io.c:talloc_init_const
Unexecuted instantiation: limit.c:talloc_init_const
Unexecuted instantiation: load_balance.c:talloc_init_const
Unexecuted instantiation: map_builtin.c:talloc_init_const
Unexecuted instantiation: mod_action.c:talloc_init_const
Unexecuted instantiation: parallel.c:talloc_init_const
Unexecuted instantiation: return.c:talloc_init_const
Unexecuted instantiation: subrequest.c:talloc_init_const
Unexecuted instantiation: switch.c:talloc_init_const
Unexecuted instantiation: timeout.c:talloc_init_const
Unexecuted instantiation: tmpl.c:talloc_init_const
Unexecuted instantiation: try.c:talloc_init_const
Unexecuted instantiation: transaction.c:talloc_init_const
Unexecuted instantiation: xlat.c:talloc_init_const
Unexecuted instantiation: xlat_alloc.c:talloc_init_const
Unexecuted instantiation: xlat_builtin.c:talloc_init_const
Unexecuted instantiation: xlat_eval.c:talloc_init_const
Unexecuted instantiation: xlat_expr.c:talloc_init_const
Unexecuted instantiation: xlat_func.c:talloc_init_const
Unexecuted instantiation: xlat_inst.c:talloc_init_const
Unexecuted instantiation: xlat_pair.c:talloc_init_const
Unexecuted instantiation: xlat_profiling.c:talloc_init_const
Unexecuted instantiation: xlat_purify.c:talloc_init_const
Unexecuted instantiation: xlat_redundant.c:talloc_init_const
Unexecuted instantiation: xlat_tokenize.c:talloc_init_const
Unexecuted instantiation: json.c:talloc_init_const
Unexecuted instantiation: jpath.c:talloc_init_const
Unexecuted instantiation: app_io.c:talloc_init_const
Unexecuted instantiation: atomic_queue.c:talloc_init_const
Unexecuted instantiation: channel.c:talloc_init_const
Unexecuted instantiation: control.c:talloc_init_const
Unexecuted instantiation: coord.c:talloc_init_const
Unexecuted instantiation: coord_pair.c:talloc_init_const
Unexecuted instantiation: load.c:talloc_init_const
Unexecuted instantiation: master.c:talloc_init_const
Unexecuted instantiation: message.c:talloc_init_const
Unexecuted instantiation: network.c:talloc_init_const
Unexecuted instantiation: queue.c:talloc_init_const
Unexecuted instantiation: ring_buffer.c:talloc_init_const
Unexecuted instantiation: schedule.c:talloc_init_const
Unexecuted instantiation: thread.c:talloc_init_const
Unexecuted instantiation: worker.c:talloc_init_const
138
139
/** Returns the length of a talloc array containing a string
140
 *
141
 * @param[in] s to return the length of.
142
 */
143
static inline size_t talloc_strlen(char const *s)
144
24.4M
{
145
//  char const *our_s = talloc_get_type_abort_const(s, char);
146
24.4M
  char const *our_s = s;
147
24.4M
  return talloc_array_length(our_s) - 1;
148
24.4M
}
Unexecuted instantiation: fuzzer_dhcpv6.c:talloc_strlen
Unexecuted instantiation: common.c:talloc_strlen
Unexecuted instantiation: fuzzer_util.c:talloc_strlen
Unexecuted instantiation: fuzzer_dhcpv4.c:talloc_strlen
Unexecuted instantiation: fuzzer_cf.c:talloc_strlen
Unexecuted instantiation: fuzzer_base16_32_64.c:talloc_strlen
Unexecuted instantiation: fuzzer_cbor.c:talloc_strlen
Unexecuted instantiation: fuzzer_xlat.c:talloc_strlen
Unexecuted instantiation: fuzzer_der.c:talloc_strlen
Unexecuted instantiation: fuzzer_dns.c:talloc_strlen
Unexecuted instantiation: fuzzer_tacacs.c:talloc_strlen
fuzzer_json.c:talloc_strlen
Line
Count
Source
144
3.12k
{
145
//  char const *our_s = talloc_get_type_abort_const(s, char);
146
3.12k
  char const *our_s = s;
147
  return talloc_array_length(our_s) - 1;
148
3.12k
}
Unexecuted instantiation: fuzzer_bfd.c:talloc_strlen
Unexecuted instantiation: fuzzer_radius.c:talloc_strlen
Unexecuted instantiation: fuzzer_tmpl.c:talloc_strlen
Unexecuted instantiation: fuzzer_tftp.c:talloc_strlen
Unexecuted instantiation: fuzzer_value.c:talloc_strlen
Unexecuted instantiation: fuzzer_arp.c:talloc_strlen
Unexecuted instantiation: fuzzer_vmps.c:talloc_strlen
Unexecuted instantiation: atexit.c:talloc_strlen
Unexecuted instantiation: backtrace.c:talloc_strlen
Unexecuted instantiation: base16.c:talloc_strlen
Unexecuted instantiation: base32.c:talloc_strlen
Unexecuted instantiation: base64.c:talloc_strlen
Unexecuted instantiation: calc.c:talloc_strlen
Unexecuted instantiation: cbor.c:talloc_strlen
Unexecuted instantiation: dbuff.c:talloc_strlen
Unexecuted instantiation: debug.c:talloc_strlen
Unexecuted instantiation: dict_ext.c:talloc_strlen
dict_fixup.c:talloc_strlen
Line
Count
Source
144
96
{
145
//  char const *our_s = talloc_get_type_abort_const(s, char);
146
96
  char const *our_s = s;
147
  return talloc_array_length(our_s) - 1;
148
96
}
Unexecuted instantiation: dict_print.c:talloc_strlen
Unexecuted instantiation: dict_test.c:talloc_strlen
Unexecuted instantiation: dict_tokenize.c:talloc_strlen
Unexecuted instantiation: dict_unknown.c:talloc_strlen
dict_util.c:talloc_strlen
Line
Count
Source
144
198
{
145
//  char const *our_s = talloc_get_type_abort_const(s, char);
146
198
  char const *our_s = s;
147
  return talloc_array_length(our_s) - 1;
148
198
}
Unexecuted instantiation: dict_validate.c:talloc_strlen
Unexecuted instantiation: dl.c:talloc_strlen
Unexecuted instantiation: dns.c:talloc_strlen
Unexecuted instantiation: edit.c:talloc_strlen
Unexecuted instantiation: encode.c:talloc_strlen
Unexecuted instantiation: event.c:talloc_strlen
Unexecuted instantiation: timer.c:talloc_strlen
Unexecuted instantiation: ext.c:talloc_strlen
Unexecuted instantiation: fifo.c:talloc_strlen
Unexecuted instantiation: file.c:talloc_strlen
Unexecuted instantiation: fring.c:talloc_strlen
Unexecuted instantiation: hash.c:talloc_strlen
Unexecuted instantiation: heap.c:talloc_strlen
Unexecuted instantiation: hmac_md5.c:talloc_strlen
Unexecuted instantiation: hmac_sha1.c:talloc_strlen
Unexecuted instantiation: htrie.c:talloc_strlen
Unexecuted instantiation: inet.c:talloc_strlen
Unexecuted instantiation: iovec.c:talloc_strlen
Unexecuted instantiation: log.c:talloc_strlen
Unexecuted instantiation: lst.c:talloc_strlen
Unexecuted instantiation: machine.c:talloc_strlen
Unexecuted instantiation: md4.c:talloc_strlen
Unexecuted instantiation: md5.c:talloc_strlen
Unexecuted instantiation: minmax_heap.c:talloc_strlen
Unexecuted instantiation: misc.c:talloc_strlen
Unexecuted instantiation: net.c:talloc_strlen
Unexecuted instantiation: packet.c:talloc_strlen
pair.c:talloc_strlen
Line
Count
Source
144
335k
{
145
//  char const *our_s = talloc_get_type_abort_const(s, char);
146
335k
  char const *our_s = s;
147
  return talloc_array_length(our_s) - 1;
148
335k
}
Unexecuted instantiation: pair_inline.c:talloc_strlen
Unexecuted instantiation: pair_legacy.c:talloc_strlen
Unexecuted instantiation: pair_print.c:talloc_strlen
Unexecuted instantiation: pair_tokenize.c:talloc_strlen
Unexecuted instantiation: perm.c:talloc_strlen
Unexecuted instantiation: print.c:talloc_strlen
Unexecuted instantiation: proto.c:talloc_strlen
Unexecuted instantiation: rand.c:talloc_strlen
Unexecuted instantiation: rb.c:talloc_strlen
Unexecuted instantiation: rb_expire.c:talloc_strlen
Unexecuted instantiation: regex.c:talloc_strlen
Unexecuted instantiation: retry.c:talloc_strlen
sbuff.c:talloc_strlen
Line
Count
Source
144
24.0M
{
145
//  char const *our_s = talloc_get_type_abort_const(s, char);
146
24.0M
  char const *our_s = s;
147
  return talloc_array_length(our_s) - 1;
148
24.0M
}
Unexecuted instantiation: sem.c:talloc_strlen
Unexecuted instantiation: semaphore.c:talloc_strlen
Unexecuted instantiation: size.c:talloc_strlen
Unexecuted instantiation: skip.c:talloc_strlen
Unexecuted instantiation: socket.c:talloc_strlen
Unexecuted instantiation: stats.c:talloc_strlen
Unexecuted instantiation: strerror.c:talloc_strlen
Unexecuted instantiation: struct.c:talloc_strlen
Unexecuted instantiation: syserror.c:talloc_strlen
Unexecuted instantiation: table.c:talloc_strlen
Unexecuted instantiation: talloc.c:talloc_strlen
Unexecuted instantiation: time.c:talloc_strlen
Unexecuted instantiation: timeval.c:talloc_strlen
Unexecuted instantiation: token.c:talloc_strlen
Unexecuted instantiation: trie.c:talloc_strlen
Unexecuted instantiation: types.c:talloc_strlen
Unexecuted instantiation: udp.c:talloc_strlen
Unexecuted instantiation: udp_queue.c:talloc_strlen
Unexecuted instantiation: udpfromto.c:talloc_strlen
Unexecuted instantiation: uri.c:talloc_strlen
value.c:talloc_strlen
Line
Count
Source
144
15.3k
{
145
//  char const *our_s = talloc_get_type_abort_const(s, char);
146
15.3k
  char const *our_s = s;
147
  return talloc_array_length(our_s) - 1;
148
15.3k
}
Unexecuted instantiation: fuzzer.c:talloc_strlen
Unexecuted instantiation: base.c:talloc_strlen
decode.c:talloc_strlen
Line
Count
Source
144
11.5k
{
145
//  char const *our_s = talloc_get_type_abort_const(s, char);
146
11.5k
  char const *our_s = s;
147
  return talloc_array_length(our_s) - 1;
148
11.5k
}
Unexecuted instantiation: list.c:talloc_strlen
Unexecuted instantiation: tcp.c:talloc_strlen
Unexecuted instantiation: abinary.c:talloc_strlen
Unexecuted instantiation: raw.c:talloc_strlen
Unexecuted instantiation: vmps.c:talloc_strlen
Unexecuted instantiation: bio.c:talloc_strlen
Unexecuted instantiation: cache.c:talloc_strlen
Unexecuted instantiation: cert.c:talloc_strlen
Unexecuted instantiation: conf.c:talloc_strlen
Unexecuted instantiation: connection.c:talloc_strlen
Unexecuted instantiation: ctx.c:talloc_strlen
Unexecuted instantiation: pairs.c:talloc_strlen
Unexecuted instantiation: session.c:talloc_strlen
Unexecuted instantiation: utils.c:talloc_strlen
Unexecuted instantiation: verify.c:talloc_strlen
Unexecuted instantiation: version.c:talloc_strlen
Unexecuted instantiation: virtual_server.c:talloc_strlen
Unexecuted instantiation: auth.c:talloc_strlen
cf_file.c:talloc_strlen
Line
Count
Source
144
111
{
145
//  char const *our_s = talloc_get_type_abort_const(s, char);
146
111
  char const *our_s = s;
147
  return talloc_array_length(our_s) - 1;
148
111
}
Unexecuted instantiation: cf_parse.c:talloc_strlen
cf_util.c:talloc_strlen
Line
Count
Source
144
13
{
145
//  char const *our_s = talloc_get_type_abort_const(s, char);
146
13
  char const *our_s = s;
147
  return talloc_array_length(our_s) - 1;
148
13
}
Unexecuted instantiation: client.c:talloc_strlen
Unexecuted instantiation: command.c:talloc_strlen
Unexecuted instantiation: dependency.c:talloc_strlen
Unexecuted instantiation: dl_module.c:talloc_strlen
Unexecuted instantiation: exec.c:talloc_strlen
Unexecuted instantiation: exec_legacy.c:talloc_strlen
Unexecuted instantiation: exfile.c:talloc_strlen
Unexecuted instantiation: global_lib.c:talloc_strlen
Unexecuted instantiation: main_config.c:talloc_strlen
Unexecuted instantiation: main_loop.c:talloc_strlen
Unexecuted instantiation: map.c:talloc_strlen
Unexecuted instantiation: map_proc.c:talloc_strlen
Unexecuted instantiation: module.c:talloc_strlen
Unexecuted instantiation: module_method.c:talloc_strlen
Unexecuted instantiation: module_rlm.c:talloc_strlen
Unexecuted instantiation: paircmp.c:talloc_strlen
Unexecuted instantiation: pairmove.c:talloc_strlen
Unexecuted instantiation: password.c:talloc_strlen
Unexecuted instantiation: pool.c:talloc_strlen
Unexecuted instantiation: request.c:talloc_strlen
Unexecuted instantiation: request_data.c:talloc_strlen
Unexecuted instantiation: section.c:talloc_strlen
Unexecuted instantiation: snmp.c:talloc_strlen
Unexecuted instantiation: state.c:talloc_strlen
Unexecuted instantiation: tmpl_dcursor.c:talloc_strlen
Unexecuted instantiation: tmpl_eval.c:talloc_strlen
tmpl_tokenize.c:talloc_strlen
Line
Count
Source
144
31.6k
{
145
//  char const *our_s = talloc_get_type_abort_const(s, char);
146
31.6k
  char const *our_s = s;
147
  return talloc_array_length(our_s) - 1;
148
31.6k
}
Unexecuted instantiation: time_tracking.c:talloc_strlen
Unexecuted instantiation: trigger.c:talloc_strlen
Unexecuted instantiation: trunk.c:talloc_strlen
Unexecuted instantiation: users_file.c:talloc_strlen
Unexecuted instantiation: util.c:talloc_strlen
Unexecuted instantiation: virtual_servers.c:talloc_strlen
Unexecuted instantiation: call.c:talloc_strlen
Unexecuted instantiation: call_env.c:talloc_strlen
Unexecuted instantiation: caller.c:talloc_strlen
Unexecuted instantiation: catch.c:talloc_strlen
Unexecuted instantiation: child_request.c:talloc_strlen
Unexecuted instantiation: compile.c:talloc_strlen
Unexecuted instantiation: condition.c:talloc_strlen
Unexecuted instantiation: detach.c:talloc_strlen
Unexecuted instantiation: finally.c:talloc_strlen
Unexecuted instantiation: foreach.c:talloc_strlen
Unexecuted instantiation: function.c:talloc_strlen
Unexecuted instantiation: group.c:talloc_strlen
Unexecuted instantiation: interpret.c:talloc_strlen
Unexecuted instantiation: interpret_synchronous.c:talloc_strlen
Unexecuted instantiation: io.c:talloc_strlen
Unexecuted instantiation: limit.c:talloc_strlen
Unexecuted instantiation: load_balance.c:talloc_strlen
Unexecuted instantiation: map_builtin.c:talloc_strlen
Unexecuted instantiation: mod_action.c:talloc_strlen
Unexecuted instantiation: parallel.c:talloc_strlen
Unexecuted instantiation: return.c:talloc_strlen
Unexecuted instantiation: subrequest.c:talloc_strlen
Unexecuted instantiation: switch.c:talloc_strlen
Unexecuted instantiation: timeout.c:talloc_strlen
Unexecuted instantiation: tmpl.c:talloc_strlen
Unexecuted instantiation: try.c:talloc_strlen
Unexecuted instantiation: transaction.c:talloc_strlen
Unexecuted instantiation: xlat.c:talloc_strlen
Unexecuted instantiation: xlat_alloc.c:talloc_strlen
Unexecuted instantiation: xlat_builtin.c:talloc_strlen
Unexecuted instantiation: xlat_eval.c:talloc_strlen
Unexecuted instantiation: xlat_expr.c:talloc_strlen
Unexecuted instantiation: xlat_func.c:talloc_strlen
Unexecuted instantiation: xlat_inst.c:talloc_strlen
Unexecuted instantiation: xlat_pair.c:talloc_strlen
Unexecuted instantiation: xlat_profiling.c:talloc_strlen
Unexecuted instantiation: xlat_purify.c:talloc_strlen
Unexecuted instantiation: xlat_redundant.c:talloc_strlen
xlat_tokenize.c:talloc_strlen
Line
Count
Source
144
26.0k
{
145
//  char const *our_s = talloc_get_type_abort_const(s, char);
146
26.0k
  char const *our_s = s;
147
  return talloc_array_length(our_s) - 1;
148
26.0k
}
Unexecuted instantiation: json.c:talloc_strlen
Unexecuted instantiation: jpath.c:talloc_strlen
Unexecuted instantiation: app_io.c:talloc_strlen
Unexecuted instantiation: atomic_queue.c:talloc_strlen
Unexecuted instantiation: channel.c:talloc_strlen
Unexecuted instantiation: control.c:talloc_strlen
Unexecuted instantiation: coord.c:talloc_strlen
Unexecuted instantiation: coord_pair.c:talloc_strlen
Unexecuted instantiation: load.c:talloc_strlen
Unexecuted instantiation: master.c:talloc_strlen
Unexecuted instantiation: message.c:talloc_strlen
Unexecuted instantiation: network.c:talloc_strlen
Unexecuted instantiation: queue.c:talloc_strlen
Unexecuted instantiation: ring_buffer.c:talloc_strlen
Unexecuted instantiation: schedule.c:talloc_strlen
Unexecuted instantiation: thread.c:talloc_strlen
Unexecuted instantiation: worker.c:talloc_strlen
149
24.5M
#define talloc_strdup(_ctx, _str)  talloc_typed_strdup((TALLOC_CTX *) (_ctx), _str)
150
13.3k
#define talloc_strndup(_ctx, _str, _len) talloc_typed_strndup((TALLOC_CTX *) (_ctx), _str, _len)
151
166
#define talloc_asprintf   talloc_typed_asprintf
152
153
/** Convert a talloced string to lowercase
154
 *
155
 * @param[in] str to convert.
156
 */
157
static inline void talloc_bstr_tolower(char *str)
158
132
{
159
132
  char *p, *end;
160
161
132
  end = str + talloc_strlen(str);
162
163
3.75k
  for (p = str; p < end; p++) *p = tolower((uint8_t) *p);
164
132
}
Unexecuted instantiation: fuzzer_dhcpv6.c:talloc_bstr_tolower
Unexecuted instantiation: common.c:talloc_bstr_tolower
Unexecuted instantiation: fuzzer_util.c:talloc_bstr_tolower
Unexecuted instantiation: fuzzer_dhcpv4.c:talloc_bstr_tolower
Unexecuted instantiation: fuzzer_cf.c:talloc_bstr_tolower
Unexecuted instantiation: fuzzer_base16_32_64.c:talloc_bstr_tolower
Unexecuted instantiation: fuzzer_cbor.c:talloc_bstr_tolower
Unexecuted instantiation: fuzzer_xlat.c:talloc_bstr_tolower
Unexecuted instantiation: fuzzer_der.c:talloc_bstr_tolower
Unexecuted instantiation: fuzzer_dns.c:talloc_bstr_tolower
Unexecuted instantiation: fuzzer_tacacs.c:talloc_bstr_tolower
Unexecuted instantiation: fuzzer_json.c:talloc_bstr_tolower
Unexecuted instantiation: fuzzer_bfd.c:talloc_bstr_tolower
Unexecuted instantiation: fuzzer_radius.c:talloc_bstr_tolower
Unexecuted instantiation: fuzzer_tmpl.c:talloc_bstr_tolower
Unexecuted instantiation: fuzzer_tftp.c:talloc_bstr_tolower
Unexecuted instantiation: fuzzer_value.c:talloc_bstr_tolower
Unexecuted instantiation: fuzzer_arp.c:talloc_bstr_tolower
Unexecuted instantiation: fuzzer_vmps.c:talloc_bstr_tolower
Unexecuted instantiation: atexit.c:talloc_bstr_tolower
Unexecuted instantiation: backtrace.c:talloc_bstr_tolower
Unexecuted instantiation: base16.c:talloc_bstr_tolower
Unexecuted instantiation: base32.c:talloc_bstr_tolower
Unexecuted instantiation: base64.c:talloc_bstr_tolower
Unexecuted instantiation: calc.c:talloc_bstr_tolower
Unexecuted instantiation: cbor.c:talloc_bstr_tolower
Unexecuted instantiation: dbuff.c:talloc_bstr_tolower
Unexecuted instantiation: debug.c:talloc_bstr_tolower
Unexecuted instantiation: decode.c:talloc_bstr_tolower
Unexecuted instantiation: dict_ext.c:talloc_bstr_tolower
Unexecuted instantiation: dict_fixup.c:talloc_bstr_tolower
Unexecuted instantiation: dict_print.c:talloc_bstr_tolower
Unexecuted instantiation: dict_test.c:talloc_bstr_tolower
Unexecuted instantiation: dict_tokenize.c:talloc_bstr_tolower
Unexecuted instantiation: dict_unknown.c:talloc_bstr_tolower
dict_util.c:talloc_bstr_tolower
Line
Count
Source
158
132
{
159
132
  char *p, *end;
160
161
132
  end = str + talloc_strlen(str);
162
163
3.75k
  for (p = str; p < end; p++) *p = tolower((uint8_t) *p);
164
132
}
Unexecuted instantiation: dict_validate.c:talloc_bstr_tolower
Unexecuted instantiation: dl.c:talloc_bstr_tolower
Unexecuted instantiation: dns.c:talloc_bstr_tolower
Unexecuted instantiation: edit.c:talloc_bstr_tolower
Unexecuted instantiation: encode.c:talloc_bstr_tolower
Unexecuted instantiation: event.c:talloc_bstr_tolower
Unexecuted instantiation: timer.c:talloc_bstr_tolower
Unexecuted instantiation: ext.c:talloc_bstr_tolower
Unexecuted instantiation: fifo.c:talloc_bstr_tolower
Unexecuted instantiation: file.c:talloc_bstr_tolower
Unexecuted instantiation: fring.c:talloc_bstr_tolower
Unexecuted instantiation: hash.c:talloc_bstr_tolower
Unexecuted instantiation: heap.c:talloc_bstr_tolower
Unexecuted instantiation: hmac_md5.c:talloc_bstr_tolower
Unexecuted instantiation: hmac_sha1.c:talloc_bstr_tolower
Unexecuted instantiation: htrie.c:talloc_bstr_tolower
Unexecuted instantiation: inet.c:talloc_bstr_tolower
Unexecuted instantiation: iovec.c:talloc_bstr_tolower
Unexecuted instantiation: log.c:talloc_bstr_tolower
Unexecuted instantiation: lst.c:talloc_bstr_tolower
Unexecuted instantiation: machine.c:talloc_bstr_tolower
Unexecuted instantiation: md4.c:talloc_bstr_tolower
Unexecuted instantiation: md5.c:talloc_bstr_tolower
Unexecuted instantiation: minmax_heap.c:talloc_bstr_tolower
Unexecuted instantiation: misc.c:talloc_bstr_tolower
Unexecuted instantiation: net.c:talloc_bstr_tolower
Unexecuted instantiation: packet.c:talloc_bstr_tolower
Unexecuted instantiation: pair.c:talloc_bstr_tolower
Unexecuted instantiation: pair_inline.c:talloc_bstr_tolower
Unexecuted instantiation: pair_legacy.c:talloc_bstr_tolower
Unexecuted instantiation: pair_print.c:talloc_bstr_tolower
Unexecuted instantiation: pair_tokenize.c:talloc_bstr_tolower
Unexecuted instantiation: perm.c:talloc_bstr_tolower
Unexecuted instantiation: print.c:talloc_bstr_tolower
Unexecuted instantiation: proto.c:talloc_bstr_tolower
Unexecuted instantiation: rand.c:talloc_bstr_tolower
Unexecuted instantiation: rb.c:talloc_bstr_tolower
Unexecuted instantiation: rb_expire.c:talloc_bstr_tolower
Unexecuted instantiation: regex.c:talloc_bstr_tolower
Unexecuted instantiation: retry.c:talloc_bstr_tolower
Unexecuted instantiation: sbuff.c:talloc_bstr_tolower
Unexecuted instantiation: sem.c:talloc_bstr_tolower
Unexecuted instantiation: semaphore.c:talloc_bstr_tolower
Unexecuted instantiation: size.c:talloc_bstr_tolower
Unexecuted instantiation: skip.c:talloc_bstr_tolower
Unexecuted instantiation: socket.c:talloc_bstr_tolower
Unexecuted instantiation: stats.c:talloc_bstr_tolower
Unexecuted instantiation: strerror.c:talloc_bstr_tolower
Unexecuted instantiation: struct.c:talloc_bstr_tolower
Unexecuted instantiation: syserror.c:talloc_bstr_tolower
Unexecuted instantiation: table.c:talloc_bstr_tolower
Unexecuted instantiation: talloc.c:talloc_bstr_tolower
Unexecuted instantiation: time.c:talloc_bstr_tolower
Unexecuted instantiation: timeval.c:talloc_bstr_tolower
Unexecuted instantiation: token.c:talloc_bstr_tolower
Unexecuted instantiation: trie.c:talloc_bstr_tolower
Unexecuted instantiation: types.c:talloc_bstr_tolower
Unexecuted instantiation: udp.c:talloc_bstr_tolower
Unexecuted instantiation: udp_queue.c:talloc_bstr_tolower
Unexecuted instantiation: udpfromto.c:talloc_bstr_tolower
Unexecuted instantiation: uri.c:talloc_bstr_tolower
Unexecuted instantiation: value.c:talloc_bstr_tolower
Unexecuted instantiation: fuzzer.c:talloc_bstr_tolower
Unexecuted instantiation: base.c:talloc_bstr_tolower
Unexecuted instantiation: list.c:talloc_bstr_tolower
Unexecuted instantiation: tcp.c:talloc_bstr_tolower
Unexecuted instantiation: abinary.c:talloc_bstr_tolower
Unexecuted instantiation: raw.c:talloc_bstr_tolower
Unexecuted instantiation: vmps.c:talloc_bstr_tolower
Unexecuted instantiation: bio.c:talloc_bstr_tolower
Unexecuted instantiation: cache.c:talloc_bstr_tolower
Unexecuted instantiation: cert.c:talloc_bstr_tolower
Unexecuted instantiation: conf.c:talloc_bstr_tolower
Unexecuted instantiation: connection.c:talloc_bstr_tolower
Unexecuted instantiation: ctx.c:talloc_bstr_tolower
Unexecuted instantiation: pairs.c:talloc_bstr_tolower
Unexecuted instantiation: session.c:talloc_bstr_tolower
Unexecuted instantiation: utils.c:talloc_bstr_tolower
Unexecuted instantiation: verify.c:talloc_bstr_tolower
Unexecuted instantiation: version.c:talloc_bstr_tolower
Unexecuted instantiation: virtual_server.c:talloc_bstr_tolower
Unexecuted instantiation: auth.c:talloc_bstr_tolower
Unexecuted instantiation: cf_file.c:talloc_bstr_tolower
Unexecuted instantiation: cf_parse.c:talloc_bstr_tolower
Unexecuted instantiation: cf_util.c:talloc_bstr_tolower
Unexecuted instantiation: client.c:talloc_bstr_tolower
Unexecuted instantiation: command.c:talloc_bstr_tolower
Unexecuted instantiation: dependency.c:talloc_bstr_tolower
Unexecuted instantiation: dl_module.c:talloc_bstr_tolower
Unexecuted instantiation: exec.c:talloc_bstr_tolower
Unexecuted instantiation: exec_legacy.c:talloc_bstr_tolower
Unexecuted instantiation: exfile.c:talloc_bstr_tolower
Unexecuted instantiation: global_lib.c:talloc_bstr_tolower
Unexecuted instantiation: main_config.c:talloc_bstr_tolower
Unexecuted instantiation: main_loop.c:talloc_bstr_tolower
Unexecuted instantiation: map.c:talloc_bstr_tolower
Unexecuted instantiation: map_proc.c:talloc_bstr_tolower
Unexecuted instantiation: module.c:talloc_bstr_tolower
Unexecuted instantiation: module_method.c:talloc_bstr_tolower
Unexecuted instantiation: module_rlm.c:talloc_bstr_tolower
Unexecuted instantiation: paircmp.c:talloc_bstr_tolower
Unexecuted instantiation: pairmove.c:talloc_bstr_tolower
Unexecuted instantiation: password.c:talloc_bstr_tolower
Unexecuted instantiation: pool.c:talloc_bstr_tolower
Unexecuted instantiation: request.c:talloc_bstr_tolower
Unexecuted instantiation: request_data.c:talloc_bstr_tolower
Unexecuted instantiation: section.c:talloc_bstr_tolower
Unexecuted instantiation: snmp.c:talloc_bstr_tolower
Unexecuted instantiation: state.c:talloc_bstr_tolower
Unexecuted instantiation: tmpl_dcursor.c:talloc_bstr_tolower
Unexecuted instantiation: tmpl_eval.c:talloc_bstr_tolower
Unexecuted instantiation: tmpl_tokenize.c:talloc_bstr_tolower
Unexecuted instantiation: time_tracking.c:talloc_bstr_tolower
Unexecuted instantiation: trigger.c:talloc_bstr_tolower
Unexecuted instantiation: trunk.c:talloc_bstr_tolower
Unexecuted instantiation: users_file.c:talloc_bstr_tolower
Unexecuted instantiation: util.c:talloc_bstr_tolower
Unexecuted instantiation: virtual_servers.c:talloc_bstr_tolower
Unexecuted instantiation: call.c:talloc_bstr_tolower
Unexecuted instantiation: call_env.c:talloc_bstr_tolower
Unexecuted instantiation: caller.c:talloc_bstr_tolower
Unexecuted instantiation: catch.c:talloc_bstr_tolower
Unexecuted instantiation: child_request.c:talloc_bstr_tolower
Unexecuted instantiation: compile.c:talloc_bstr_tolower
Unexecuted instantiation: condition.c:talloc_bstr_tolower
Unexecuted instantiation: detach.c:talloc_bstr_tolower
Unexecuted instantiation: finally.c:talloc_bstr_tolower
Unexecuted instantiation: foreach.c:talloc_bstr_tolower
Unexecuted instantiation: function.c:talloc_bstr_tolower
Unexecuted instantiation: group.c:talloc_bstr_tolower
Unexecuted instantiation: interpret.c:talloc_bstr_tolower
Unexecuted instantiation: interpret_synchronous.c:talloc_bstr_tolower
Unexecuted instantiation: io.c:talloc_bstr_tolower
Unexecuted instantiation: limit.c:talloc_bstr_tolower
Unexecuted instantiation: load_balance.c:talloc_bstr_tolower
Unexecuted instantiation: map_builtin.c:talloc_bstr_tolower
Unexecuted instantiation: mod_action.c:talloc_bstr_tolower
Unexecuted instantiation: parallel.c:talloc_bstr_tolower
Unexecuted instantiation: return.c:talloc_bstr_tolower
Unexecuted instantiation: subrequest.c:talloc_bstr_tolower
Unexecuted instantiation: switch.c:talloc_bstr_tolower
Unexecuted instantiation: timeout.c:talloc_bstr_tolower
Unexecuted instantiation: tmpl.c:talloc_bstr_tolower
Unexecuted instantiation: try.c:talloc_bstr_tolower
Unexecuted instantiation: transaction.c:talloc_bstr_tolower
Unexecuted instantiation: xlat.c:talloc_bstr_tolower
Unexecuted instantiation: xlat_alloc.c:talloc_bstr_tolower
Unexecuted instantiation: xlat_builtin.c:talloc_bstr_tolower
Unexecuted instantiation: xlat_eval.c:talloc_bstr_tolower
Unexecuted instantiation: xlat_expr.c:talloc_bstr_tolower
Unexecuted instantiation: xlat_func.c:talloc_bstr_tolower
Unexecuted instantiation: xlat_inst.c:talloc_bstr_tolower
Unexecuted instantiation: xlat_pair.c:talloc_bstr_tolower
Unexecuted instantiation: xlat_profiling.c:talloc_bstr_tolower
Unexecuted instantiation: xlat_purify.c:talloc_bstr_tolower
Unexecuted instantiation: xlat_redundant.c:talloc_bstr_tolower
Unexecuted instantiation: xlat_tokenize.c:talloc_bstr_tolower
Unexecuted instantiation: json.c:talloc_bstr_tolower
Unexecuted instantiation: jpath.c:talloc_bstr_tolower
Unexecuted instantiation: app_io.c:talloc_bstr_tolower
Unexecuted instantiation: atomic_queue.c:talloc_bstr_tolower
Unexecuted instantiation: channel.c:talloc_bstr_tolower
Unexecuted instantiation: control.c:talloc_bstr_tolower
Unexecuted instantiation: coord.c:talloc_bstr_tolower
Unexecuted instantiation: coord_pair.c:talloc_bstr_tolower
Unexecuted instantiation: load.c:talloc_bstr_tolower
Unexecuted instantiation: master.c:talloc_bstr_tolower
Unexecuted instantiation: message.c:talloc_bstr_tolower
Unexecuted instantiation: network.c:talloc_bstr_tolower
Unexecuted instantiation: queue.c:talloc_bstr_tolower
Unexecuted instantiation: ring_buffer.c:talloc_bstr_tolower
Unexecuted instantiation: schedule.c:talloc_bstr_tolower
Unexecuted instantiation: thread.c:talloc_bstr_tolower
Unexecuted instantiation: worker.c:talloc_bstr_tolower
165
166
void    talloc_free_data(void *data);
167
168
void    *talloc_null_ctx(void);
169
170
fr_talloc_destructor_t *talloc_destructor_add(TALLOC_CTX *fire_ctx, TALLOC_CTX *disarm_ctx,
171
                fr_talloc_free_func_t func, void const *uctx);
172
173
void    talloc_destructor_disarm(fr_talloc_destructor_t *d);
174
175
int   talloc_link_ctx(TALLOC_CTX *parent, TALLOC_CTX *child);
176
177
ssize_t   talloc_hdr_size(void);
178
TALLOC_CTX  *talloc_page_aligned_pool(TALLOC_CTX *ctx, void **start, size_t *end_len, unsigned int headers, size_t size);
179
TALLOC_CTX  *talloc_aligned_array(TALLOC_CTX *ctx, void **start, size_t alignment, size_t size);
180
181
/*
182
 *  Add variant that zeroes out newly allocated memory
183
 */
184
#if defined(HAVE__TALLOC_POOLED_OBJECT) && defined(talloc_pooled_object)
185
#  define HAVE_TALLOC_ZERO_POOLED_OBJECT  1
186
#  define HAVE_TALLOC_POOLED_OBJECT   1
187
188
#  define talloc_zero_pooled_object(_ctx, _type, _num_subobjects, _total_subobjects_size) \
189
0
    (_type *)_talloc_zero_pooled_object((_ctx), sizeof(_type), #_type, \
190
0
                (_num_subobjects), (_total_subobjects_size))
191
192
static inline TALLOC_CTX *_talloc_zero_pooled_object(const void *ctx,
193
                 size_t type_size,
194
                 const char *type_name,
195
                 unsigned num_subobjects,
196
                 size_t total_subobjects_size)
197
166k
{
198
166k
  TALLOC_CTX *new;
199
166k
  new = _talloc_pooled_object(ctx, type_size, type_name, num_subobjects, total_subobjects_size);
200
166k
  if (unlikely(!new)) return NULL;
201
166k
  memset(new, 0, type_size);
202
166k
  return new;
203
166k
}
Unexecuted instantiation: fuzzer_dhcpv6.c:_talloc_zero_pooled_object
Unexecuted instantiation: common.c:_talloc_zero_pooled_object
Unexecuted instantiation: fuzzer_util.c:_talloc_zero_pooled_object
Unexecuted instantiation: fuzzer_dhcpv4.c:_talloc_zero_pooled_object
Unexecuted instantiation: fuzzer_cf.c:_talloc_zero_pooled_object
Unexecuted instantiation: fuzzer_base16_32_64.c:_talloc_zero_pooled_object
Unexecuted instantiation: fuzzer_cbor.c:_talloc_zero_pooled_object
Unexecuted instantiation: fuzzer_xlat.c:_talloc_zero_pooled_object
Unexecuted instantiation: fuzzer_der.c:_talloc_zero_pooled_object
Unexecuted instantiation: fuzzer_dns.c:_talloc_zero_pooled_object
Unexecuted instantiation: fuzzer_tacacs.c:_talloc_zero_pooled_object
Unexecuted instantiation: fuzzer_json.c:_talloc_zero_pooled_object
Unexecuted instantiation: fuzzer_bfd.c:_talloc_zero_pooled_object
Unexecuted instantiation: fuzzer_radius.c:_talloc_zero_pooled_object
Unexecuted instantiation: fuzzer_tmpl.c:_talloc_zero_pooled_object
Unexecuted instantiation: fuzzer_tftp.c:_talloc_zero_pooled_object
Unexecuted instantiation: fuzzer_value.c:_talloc_zero_pooled_object
Unexecuted instantiation: fuzzer_arp.c:_talloc_zero_pooled_object
Unexecuted instantiation: fuzzer_vmps.c:_talloc_zero_pooled_object
Unexecuted instantiation: atexit.c:_talloc_zero_pooled_object
Unexecuted instantiation: backtrace.c:_talloc_zero_pooled_object
Unexecuted instantiation: base16.c:_talloc_zero_pooled_object
Unexecuted instantiation: base32.c:_talloc_zero_pooled_object
Unexecuted instantiation: base64.c:_talloc_zero_pooled_object
Unexecuted instantiation: calc.c:_talloc_zero_pooled_object
Unexecuted instantiation: cbor.c:_talloc_zero_pooled_object
Unexecuted instantiation: dbuff.c:_talloc_zero_pooled_object
Unexecuted instantiation: debug.c:_talloc_zero_pooled_object
Unexecuted instantiation: decode.c:_talloc_zero_pooled_object
Unexecuted instantiation: dict_ext.c:_talloc_zero_pooled_object
Unexecuted instantiation: dict_fixup.c:_talloc_zero_pooled_object
Unexecuted instantiation: dict_print.c:_talloc_zero_pooled_object
Unexecuted instantiation: dict_test.c:_talloc_zero_pooled_object
Unexecuted instantiation: dict_tokenize.c:_talloc_zero_pooled_object
Unexecuted instantiation: dict_unknown.c:_talloc_zero_pooled_object
Unexecuted instantiation: dict_util.c:_talloc_zero_pooled_object
Unexecuted instantiation: dict_validate.c:_talloc_zero_pooled_object
Unexecuted instantiation: dl.c:_talloc_zero_pooled_object
Unexecuted instantiation: dns.c:_talloc_zero_pooled_object
Unexecuted instantiation: edit.c:_talloc_zero_pooled_object
Unexecuted instantiation: encode.c:_talloc_zero_pooled_object
Unexecuted instantiation: event.c:_talloc_zero_pooled_object
Unexecuted instantiation: timer.c:_talloc_zero_pooled_object
Unexecuted instantiation: ext.c:_talloc_zero_pooled_object
Unexecuted instantiation: fifo.c:_talloc_zero_pooled_object
Unexecuted instantiation: file.c:_talloc_zero_pooled_object
Unexecuted instantiation: fring.c:_talloc_zero_pooled_object
Unexecuted instantiation: hash.c:_talloc_zero_pooled_object
Unexecuted instantiation: heap.c:_talloc_zero_pooled_object
Unexecuted instantiation: hmac_md5.c:_talloc_zero_pooled_object
Unexecuted instantiation: hmac_sha1.c:_talloc_zero_pooled_object
Unexecuted instantiation: htrie.c:_talloc_zero_pooled_object
Unexecuted instantiation: inet.c:_talloc_zero_pooled_object
Unexecuted instantiation: iovec.c:_talloc_zero_pooled_object
Unexecuted instantiation: log.c:_talloc_zero_pooled_object
Unexecuted instantiation: lst.c:_talloc_zero_pooled_object
Unexecuted instantiation: machine.c:_talloc_zero_pooled_object
Unexecuted instantiation: md4.c:_talloc_zero_pooled_object
Unexecuted instantiation: md5.c:_talloc_zero_pooled_object
Unexecuted instantiation: minmax_heap.c:_talloc_zero_pooled_object
Unexecuted instantiation: misc.c:_talloc_zero_pooled_object
Unexecuted instantiation: net.c:_talloc_zero_pooled_object
Unexecuted instantiation: packet.c:_talloc_zero_pooled_object
Unexecuted instantiation: pair.c:_talloc_zero_pooled_object
Unexecuted instantiation: pair_inline.c:_talloc_zero_pooled_object
Unexecuted instantiation: pair_legacy.c:_talloc_zero_pooled_object
Unexecuted instantiation: pair_print.c:_talloc_zero_pooled_object
Unexecuted instantiation: pair_tokenize.c:_talloc_zero_pooled_object
Unexecuted instantiation: perm.c:_talloc_zero_pooled_object
Unexecuted instantiation: print.c:_talloc_zero_pooled_object
Unexecuted instantiation: proto.c:_talloc_zero_pooled_object
Unexecuted instantiation: rand.c:_talloc_zero_pooled_object
Unexecuted instantiation: rb.c:_talloc_zero_pooled_object
Unexecuted instantiation: rb_expire.c:_talloc_zero_pooled_object
Unexecuted instantiation: regex.c:_talloc_zero_pooled_object
Unexecuted instantiation: retry.c:_talloc_zero_pooled_object
Unexecuted instantiation: sbuff.c:_talloc_zero_pooled_object
Unexecuted instantiation: sem.c:_talloc_zero_pooled_object
Unexecuted instantiation: semaphore.c:_talloc_zero_pooled_object
Unexecuted instantiation: size.c:_talloc_zero_pooled_object
Unexecuted instantiation: skip.c:_talloc_zero_pooled_object
Unexecuted instantiation: socket.c:_talloc_zero_pooled_object
Unexecuted instantiation: stats.c:_talloc_zero_pooled_object
Unexecuted instantiation: strerror.c:_talloc_zero_pooled_object
Unexecuted instantiation: struct.c:_talloc_zero_pooled_object
Unexecuted instantiation: syserror.c:_talloc_zero_pooled_object
Unexecuted instantiation: table.c:_talloc_zero_pooled_object
Unexecuted instantiation: talloc.c:_talloc_zero_pooled_object
Unexecuted instantiation: time.c:_talloc_zero_pooled_object
Unexecuted instantiation: timeval.c:_talloc_zero_pooled_object
Unexecuted instantiation: token.c:_talloc_zero_pooled_object
Unexecuted instantiation: trie.c:_talloc_zero_pooled_object
Unexecuted instantiation: types.c:_talloc_zero_pooled_object
Unexecuted instantiation: udp.c:_talloc_zero_pooled_object
Unexecuted instantiation: udp_queue.c:_talloc_zero_pooled_object
Unexecuted instantiation: udpfromto.c:_talloc_zero_pooled_object
Unexecuted instantiation: uri.c:_talloc_zero_pooled_object
Unexecuted instantiation: value.c:_talloc_zero_pooled_object
Unexecuted instantiation: fuzzer.c:_talloc_zero_pooled_object
Unexecuted instantiation: base.c:_talloc_zero_pooled_object
Unexecuted instantiation: list.c:_talloc_zero_pooled_object
Unexecuted instantiation: tcp.c:_talloc_zero_pooled_object
Unexecuted instantiation: abinary.c:_talloc_zero_pooled_object
Unexecuted instantiation: raw.c:_talloc_zero_pooled_object
Unexecuted instantiation: vmps.c:_talloc_zero_pooled_object
Unexecuted instantiation: bio.c:_talloc_zero_pooled_object
Unexecuted instantiation: cache.c:_talloc_zero_pooled_object
Unexecuted instantiation: cert.c:_talloc_zero_pooled_object
Unexecuted instantiation: conf.c:_talloc_zero_pooled_object
Unexecuted instantiation: connection.c:_talloc_zero_pooled_object
Unexecuted instantiation: ctx.c:_talloc_zero_pooled_object
Unexecuted instantiation: pairs.c:_talloc_zero_pooled_object
Unexecuted instantiation: session.c:_talloc_zero_pooled_object
Unexecuted instantiation: utils.c:_talloc_zero_pooled_object
Unexecuted instantiation: verify.c:_talloc_zero_pooled_object
Unexecuted instantiation: version.c:_talloc_zero_pooled_object
Unexecuted instantiation: virtual_server.c:_talloc_zero_pooled_object
Unexecuted instantiation: auth.c:_talloc_zero_pooled_object
Unexecuted instantiation: cf_file.c:_talloc_zero_pooled_object
Unexecuted instantiation: cf_parse.c:_talloc_zero_pooled_object
Unexecuted instantiation: cf_util.c:_talloc_zero_pooled_object
Unexecuted instantiation: client.c:_talloc_zero_pooled_object
Unexecuted instantiation: command.c:_talloc_zero_pooled_object
Unexecuted instantiation: dependency.c:_talloc_zero_pooled_object
Unexecuted instantiation: dl_module.c:_talloc_zero_pooled_object
Unexecuted instantiation: exec.c:_talloc_zero_pooled_object
Unexecuted instantiation: exec_legacy.c:_talloc_zero_pooled_object
Unexecuted instantiation: exfile.c:_talloc_zero_pooled_object
Unexecuted instantiation: global_lib.c:_talloc_zero_pooled_object
Unexecuted instantiation: main_config.c:_talloc_zero_pooled_object
Unexecuted instantiation: main_loop.c:_talloc_zero_pooled_object
Unexecuted instantiation: map.c:_talloc_zero_pooled_object
Unexecuted instantiation: map_proc.c:_talloc_zero_pooled_object
Unexecuted instantiation: module.c:_talloc_zero_pooled_object
Unexecuted instantiation: module_method.c:_talloc_zero_pooled_object
Unexecuted instantiation: module_rlm.c:_talloc_zero_pooled_object
Unexecuted instantiation: paircmp.c:_talloc_zero_pooled_object
Unexecuted instantiation: pairmove.c:_talloc_zero_pooled_object
Unexecuted instantiation: password.c:_talloc_zero_pooled_object
Unexecuted instantiation: pool.c:_talloc_zero_pooled_object
Unexecuted instantiation: regex.c:_talloc_zero_pooled_object
Unexecuted instantiation: request.c:_talloc_zero_pooled_object
Unexecuted instantiation: request_data.c:_talloc_zero_pooled_object
Unexecuted instantiation: section.c:_talloc_zero_pooled_object
Unexecuted instantiation: snmp.c:_talloc_zero_pooled_object
Unexecuted instantiation: state.c:_talloc_zero_pooled_object
Unexecuted instantiation: tmpl_dcursor.c:_talloc_zero_pooled_object
Unexecuted instantiation: tmpl_eval.c:_talloc_zero_pooled_object
Unexecuted instantiation: tmpl_tokenize.c:_talloc_zero_pooled_object
Unexecuted instantiation: time_tracking.c:_talloc_zero_pooled_object
Unexecuted instantiation: trigger.c:_talloc_zero_pooled_object
Unexecuted instantiation: trunk.c:_talloc_zero_pooled_object
Unexecuted instantiation: users_file.c:_talloc_zero_pooled_object
Unexecuted instantiation: util.c:_talloc_zero_pooled_object
Unexecuted instantiation: virtual_servers.c:_talloc_zero_pooled_object
Unexecuted instantiation: call.c:_talloc_zero_pooled_object
Unexecuted instantiation: call_env.c:_talloc_zero_pooled_object
Unexecuted instantiation: caller.c:_talloc_zero_pooled_object
Unexecuted instantiation: catch.c:_talloc_zero_pooled_object
Unexecuted instantiation: child_request.c:_talloc_zero_pooled_object
Unexecuted instantiation: compile.c:_talloc_zero_pooled_object
Unexecuted instantiation: condition.c:_talloc_zero_pooled_object
Unexecuted instantiation: detach.c:_talloc_zero_pooled_object
Unexecuted instantiation: edit.c:_talloc_zero_pooled_object
Unexecuted instantiation: finally.c:_talloc_zero_pooled_object
Unexecuted instantiation: foreach.c:_talloc_zero_pooled_object
Unexecuted instantiation: function.c:_talloc_zero_pooled_object
Unexecuted instantiation: group.c:_talloc_zero_pooled_object
Unexecuted instantiation: interpret.c:_talloc_zero_pooled_object
Unexecuted instantiation: interpret_synchronous.c:_talloc_zero_pooled_object
Unexecuted instantiation: io.c:_talloc_zero_pooled_object
Unexecuted instantiation: limit.c:_talloc_zero_pooled_object
Unexecuted instantiation: load_balance.c:_talloc_zero_pooled_object
Unexecuted instantiation: map_builtin.c:_talloc_zero_pooled_object
Unexecuted instantiation: mod_action.c:_talloc_zero_pooled_object
Unexecuted instantiation: parallel.c:_talloc_zero_pooled_object
Unexecuted instantiation: return.c:_talloc_zero_pooled_object
Unexecuted instantiation: subrequest.c:_talloc_zero_pooled_object
Unexecuted instantiation: switch.c:_talloc_zero_pooled_object
Unexecuted instantiation: timeout.c:_talloc_zero_pooled_object
Unexecuted instantiation: tmpl.c:_talloc_zero_pooled_object
Unexecuted instantiation: try.c:_talloc_zero_pooled_object
Unexecuted instantiation: transaction.c:_talloc_zero_pooled_object
Unexecuted instantiation: xlat.c:_talloc_zero_pooled_object
xlat_alloc.c:_talloc_zero_pooled_object
Line
Count
Source
197
166k
{
198
166k
  TALLOC_CTX *new;
199
166k
  new = _talloc_pooled_object(ctx, type_size, type_name, num_subobjects, total_subobjects_size);
200
166k
  if (unlikely(!new)) return NULL;
201
166k
  memset(new, 0, type_size);
202
166k
  return new;
203
166k
}
Unexecuted instantiation: xlat_builtin.c:_talloc_zero_pooled_object
Unexecuted instantiation: xlat_eval.c:_talloc_zero_pooled_object
Unexecuted instantiation: xlat_expr.c:_talloc_zero_pooled_object
Unexecuted instantiation: xlat_func.c:_talloc_zero_pooled_object
xlat_inst.c:_talloc_zero_pooled_object
Line
Count
Source
197
373
{
198
373
  TALLOC_CTX *new;
199
373
  new = _talloc_pooled_object(ctx, type_size, type_name, num_subobjects, total_subobjects_size);
200
373
  if (unlikely(!new)) return NULL;
201
373
  memset(new, 0, type_size);
202
373
  return new;
203
373
}
Unexecuted instantiation: xlat_pair.c:_talloc_zero_pooled_object
Unexecuted instantiation: xlat_profiling.c:_talloc_zero_pooled_object
Unexecuted instantiation: xlat_purify.c:_talloc_zero_pooled_object
Unexecuted instantiation: xlat_redundant.c:_talloc_zero_pooled_object
Unexecuted instantiation: xlat_tokenize.c:_talloc_zero_pooled_object
Unexecuted instantiation: json.c:_talloc_zero_pooled_object
Unexecuted instantiation: jpath.c:_talloc_zero_pooled_object
Unexecuted instantiation: app_io.c:_talloc_zero_pooled_object
Unexecuted instantiation: atomic_queue.c:_talloc_zero_pooled_object
Unexecuted instantiation: channel.c:_talloc_zero_pooled_object
Unexecuted instantiation: control.c:_talloc_zero_pooled_object
Unexecuted instantiation: coord.c:_talloc_zero_pooled_object
Unexecuted instantiation: coord_pair.c:_talloc_zero_pooled_object
Unexecuted instantiation: load.c:_talloc_zero_pooled_object
Unexecuted instantiation: master.c:_talloc_zero_pooled_object
Unexecuted instantiation: message.c:_talloc_zero_pooled_object
Unexecuted instantiation: network.c:_talloc_zero_pooled_object
Unexecuted instantiation: queue.c:_talloc_zero_pooled_object
Unexecuted instantiation: ring_buffer.c:_talloc_zero_pooled_object
Unexecuted instantiation: schedule.c:_talloc_zero_pooled_object
Unexecuted instantiation: thread.c:_talloc_zero_pooled_object
Unexecuted instantiation: worker.c:_talloc_zero_pooled_object
204
/*
205
 *  Fall back to non-pooled variants
206
 */
207
#else
208
#  define talloc_zero_pooled_object(_ctx, _type, _num_subobjects, _total_subobjects_size) \
209
    talloc_zero(_ctx, _type)
210
#undef talloc_pooled_object
211
#  define talloc_pooled_object(_ctx, _type, _num_subobjects, _total_subobjects_size) \
212
    talloc(_ctx, _type)
213
#endif
214
215
void    *_talloc_realloc_zero(const void *ctx, void *ptr, size_t elem_size, unsigned count, const char *name);
216
217
#undef talloc_realloc_zero
218
#define talloc_realloc_zero(_ctx, _ptr, _type, _count) \
219
    (_type *)_talloc_realloc_zero((_ctx), (_ptr), sizeof(_type), _count, #_type)
220
221
/** @hidecallergraph */
222
char    *talloc_typed_strdup(TALLOC_CTX *ctx, char const *p);
223
224
char    *talloc_typed_strdup_buffer(TALLOC_CTX *ctx, char const *p);
225
226
char    *talloc_typed_strndup(TALLOC_CTX *ctx, char const *p, size_t len);
227
228
char    *talloc_typed_asprintf(TALLOC_CTX *ctx, char const *fmt, ...) CC_HINT(format (printf, 2, 3));
229
230
char    *talloc_typed_vasprintf(TALLOC_CTX *ctx, char const *fmt, va_list ap) CC_HINT(format (printf, 2, 0)) CC_HINT(nonnull (2));
231
232
uint8_t   *talloc_typed_memdup(TALLOC_CTX *ctx, uint8_t const *in, size_t inlen);
233
234
char    *talloc_bstrdup(TALLOC_CTX *ctx, char const *in);
235
236
char    *talloc_bstrndup(TALLOC_CTX *ctx, char const *in, size_t inlen);
237
238
char    *talloc_bstr_append(TALLOC_CTX *ctx, char *to, char const *from, size_t from_len);
239
240
char    *talloc_bstr_realloc(TALLOC_CTX *ctx, char *in, size_t inlen);
241
242
char    *talloc_buffer_append_variadic_buffer(TALLOC_CTX *ctx, char *to, int argc, ...);
243
244
int   talloc_memcmp_bstr(char const *a, char const *b);
245
246
int   talloc_decrease_ref_count(void const *ptr);
247
248
void    **talloc_array_null_terminate(void **array);
249
250
/** A NULL terminated array of strings with an append cursor
251
 *
252
 */
253
typedef struct {
254
  char const  **strings;  //!< NULL terminated array of strings.
255
  char const  **p;    //!< Where the next appended string is written.
256
  char const  **end;    //!< Final element, reserved for the NULL terminator.
257
} talloc_str_list_t;
258
259
talloc_str_list_t *talloc_str_list_alloc(TALLOC_CTX *ctx, size_t num, size_t strings_len);
260
261
int     talloc_str_list_realloc(talloc_str_list_t *list, size_t extra);
262
263
char const    *talloc_str_list_append(talloc_str_list_t *list, char const *str, size_t len);
264
265
/** Return the number of strings in a string list
266
 *
267
 */
268
static inline size_t talloc_str_list_num(talloc_str_list_t const *list)
269
0
{
270
0
  return (size_t)(list->p - list->strings);
271
0
}
Unexecuted instantiation: fuzzer_dhcpv6.c:talloc_str_list_num
Unexecuted instantiation: common.c:talloc_str_list_num
Unexecuted instantiation: fuzzer_util.c:talloc_str_list_num
Unexecuted instantiation: fuzzer_dhcpv4.c:talloc_str_list_num
Unexecuted instantiation: fuzzer_cf.c:talloc_str_list_num
Unexecuted instantiation: fuzzer_base16_32_64.c:talloc_str_list_num
Unexecuted instantiation: fuzzer_cbor.c:talloc_str_list_num
Unexecuted instantiation: fuzzer_xlat.c:talloc_str_list_num
Unexecuted instantiation: fuzzer_der.c:talloc_str_list_num
Unexecuted instantiation: fuzzer_dns.c:talloc_str_list_num
Unexecuted instantiation: fuzzer_tacacs.c:talloc_str_list_num
Unexecuted instantiation: fuzzer_json.c:talloc_str_list_num
Unexecuted instantiation: fuzzer_bfd.c:talloc_str_list_num
Unexecuted instantiation: fuzzer_radius.c:talloc_str_list_num
Unexecuted instantiation: fuzzer_tmpl.c:talloc_str_list_num
Unexecuted instantiation: fuzzer_tftp.c:talloc_str_list_num
Unexecuted instantiation: fuzzer_value.c:talloc_str_list_num
Unexecuted instantiation: fuzzer_arp.c:talloc_str_list_num
Unexecuted instantiation: fuzzer_vmps.c:talloc_str_list_num
Unexecuted instantiation: atexit.c:talloc_str_list_num
Unexecuted instantiation: backtrace.c:talloc_str_list_num
Unexecuted instantiation: base16.c:talloc_str_list_num
Unexecuted instantiation: base32.c:talloc_str_list_num
Unexecuted instantiation: base64.c:talloc_str_list_num
Unexecuted instantiation: calc.c:talloc_str_list_num
Unexecuted instantiation: cbor.c:talloc_str_list_num
Unexecuted instantiation: dbuff.c:talloc_str_list_num
Unexecuted instantiation: debug.c:talloc_str_list_num
Unexecuted instantiation: decode.c:talloc_str_list_num
Unexecuted instantiation: dict_ext.c:talloc_str_list_num
Unexecuted instantiation: dict_fixup.c:talloc_str_list_num
Unexecuted instantiation: dict_print.c:talloc_str_list_num
Unexecuted instantiation: dict_test.c:talloc_str_list_num
Unexecuted instantiation: dict_tokenize.c:talloc_str_list_num
Unexecuted instantiation: dict_unknown.c:talloc_str_list_num
Unexecuted instantiation: dict_util.c:talloc_str_list_num
Unexecuted instantiation: dict_validate.c:talloc_str_list_num
Unexecuted instantiation: dl.c:talloc_str_list_num
Unexecuted instantiation: dns.c:talloc_str_list_num
Unexecuted instantiation: edit.c:talloc_str_list_num
Unexecuted instantiation: encode.c:talloc_str_list_num
Unexecuted instantiation: event.c:talloc_str_list_num
Unexecuted instantiation: timer.c:talloc_str_list_num
Unexecuted instantiation: ext.c:talloc_str_list_num
Unexecuted instantiation: fifo.c:talloc_str_list_num
Unexecuted instantiation: file.c:talloc_str_list_num
Unexecuted instantiation: fring.c:talloc_str_list_num
Unexecuted instantiation: hash.c:talloc_str_list_num
Unexecuted instantiation: heap.c:talloc_str_list_num
Unexecuted instantiation: hmac_md5.c:talloc_str_list_num
Unexecuted instantiation: hmac_sha1.c:talloc_str_list_num
Unexecuted instantiation: htrie.c:talloc_str_list_num
Unexecuted instantiation: inet.c:talloc_str_list_num
Unexecuted instantiation: iovec.c:talloc_str_list_num
Unexecuted instantiation: log.c:talloc_str_list_num
Unexecuted instantiation: lst.c:talloc_str_list_num
Unexecuted instantiation: machine.c:talloc_str_list_num
Unexecuted instantiation: md4.c:talloc_str_list_num
Unexecuted instantiation: md5.c:talloc_str_list_num
Unexecuted instantiation: minmax_heap.c:talloc_str_list_num
Unexecuted instantiation: misc.c:talloc_str_list_num
Unexecuted instantiation: net.c:talloc_str_list_num
Unexecuted instantiation: packet.c:talloc_str_list_num
Unexecuted instantiation: pair.c:talloc_str_list_num
Unexecuted instantiation: pair_inline.c:talloc_str_list_num
Unexecuted instantiation: pair_legacy.c:talloc_str_list_num
Unexecuted instantiation: pair_print.c:talloc_str_list_num
Unexecuted instantiation: pair_tokenize.c:talloc_str_list_num
Unexecuted instantiation: perm.c:talloc_str_list_num
Unexecuted instantiation: print.c:talloc_str_list_num
Unexecuted instantiation: proto.c:talloc_str_list_num
Unexecuted instantiation: rand.c:talloc_str_list_num
Unexecuted instantiation: rb.c:talloc_str_list_num
Unexecuted instantiation: rb_expire.c:talloc_str_list_num
Unexecuted instantiation: regex.c:talloc_str_list_num
Unexecuted instantiation: retry.c:talloc_str_list_num
Unexecuted instantiation: sbuff.c:talloc_str_list_num
Unexecuted instantiation: sem.c:talloc_str_list_num
Unexecuted instantiation: semaphore.c:talloc_str_list_num
Unexecuted instantiation: size.c:talloc_str_list_num
Unexecuted instantiation: skip.c:talloc_str_list_num
Unexecuted instantiation: socket.c:talloc_str_list_num
Unexecuted instantiation: stats.c:talloc_str_list_num
Unexecuted instantiation: strerror.c:talloc_str_list_num
Unexecuted instantiation: struct.c:talloc_str_list_num
Unexecuted instantiation: syserror.c:talloc_str_list_num
Unexecuted instantiation: table.c:talloc_str_list_num
Unexecuted instantiation: talloc.c:talloc_str_list_num
Unexecuted instantiation: time.c:talloc_str_list_num
Unexecuted instantiation: timeval.c:talloc_str_list_num
Unexecuted instantiation: token.c:talloc_str_list_num
Unexecuted instantiation: trie.c:talloc_str_list_num
Unexecuted instantiation: types.c:talloc_str_list_num
Unexecuted instantiation: udp.c:talloc_str_list_num
Unexecuted instantiation: udp_queue.c:talloc_str_list_num
Unexecuted instantiation: udpfromto.c:talloc_str_list_num
Unexecuted instantiation: uri.c:talloc_str_list_num
Unexecuted instantiation: value.c:talloc_str_list_num
Unexecuted instantiation: fuzzer.c:talloc_str_list_num
Unexecuted instantiation: base.c:talloc_str_list_num
Unexecuted instantiation: list.c:talloc_str_list_num
Unexecuted instantiation: tcp.c:talloc_str_list_num
Unexecuted instantiation: abinary.c:talloc_str_list_num
Unexecuted instantiation: raw.c:talloc_str_list_num
Unexecuted instantiation: vmps.c:talloc_str_list_num
Unexecuted instantiation: bio.c:talloc_str_list_num
Unexecuted instantiation: cache.c:talloc_str_list_num
Unexecuted instantiation: cert.c:talloc_str_list_num
Unexecuted instantiation: conf.c:talloc_str_list_num
Unexecuted instantiation: connection.c:talloc_str_list_num
Unexecuted instantiation: ctx.c:talloc_str_list_num
Unexecuted instantiation: pairs.c:talloc_str_list_num
Unexecuted instantiation: session.c:talloc_str_list_num
Unexecuted instantiation: utils.c:talloc_str_list_num
Unexecuted instantiation: verify.c:talloc_str_list_num
Unexecuted instantiation: version.c:talloc_str_list_num
Unexecuted instantiation: virtual_server.c:talloc_str_list_num
Unexecuted instantiation: auth.c:talloc_str_list_num
Unexecuted instantiation: cf_file.c:talloc_str_list_num
Unexecuted instantiation: cf_parse.c:talloc_str_list_num
Unexecuted instantiation: cf_util.c:talloc_str_list_num
Unexecuted instantiation: client.c:talloc_str_list_num
Unexecuted instantiation: command.c:talloc_str_list_num
Unexecuted instantiation: dependency.c:talloc_str_list_num
Unexecuted instantiation: dl_module.c:talloc_str_list_num
Unexecuted instantiation: exec.c:talloc_str_list_num
Unexecuted instantiation: exec_legacy.c:talloc_str_list_num
Unexecuted instantiation: exfile.c:talloc_str_list_num
Unexecuted instantiation: global_lib.c:talloc_str_list_num
Unexecuted instantiation: main_config.c:talloc_str_list_num
Unexecuted instantiation: main_loop.c:talloc_str_list_num
Unexecuted instantiation: map.c:talloc_str_list_num
Unexecuted instantiation: map_proc.c:talloc_str_list_num
Unexecuted instantiation: module.c:talloc_str_list_num
Unexecuted instantiation: module_method.c:talloc_str_list_num
Unexecuted instantiation: module_rlm.c:talloc_str_list_num
Unexecuted instantiation: paircmp.c:talloc_str_list_num
Unexecuted instantiation: pairmove.c:talloc_str_list_num
Unexecuted instantiation: password.c:talloc_str_list_num
Unexecuted instantiation: pool.c:talloc_str_list_num
Unexecuted instantiation: request.c:talloc_str_list_num
Unexecuted instantiation: request_data.c:talloc_str_list_num
Unexecuted instantiation: section.c:talloc_str_list_num
Unexecuted instantiation: snmp.c:talloc_str_list_num
Unexecuted instantiation: state.c:talloc_str_list_num
Unexecuted instantiation: tmpl_dcursor.c:talloc_str_list_num
Unexecuted instantiation: tmpl_eval.c:talloc_str_list_num
Unexecuted instantiation: tmpl_tokenize.c:talloc_str_list_num
Unexecuted instantiation: time_tracking.c:talloc_str_list_num
Unexecuted instantiation: trigger.c:talloc_str_list_num
Unexecuted instantiation: trunk.c:talloc_str_list_num
Unexecuted instantiation: users_file.c:talloc_str_list_num
Unexecuted instantiation: util.c:talloc_str_list_num
Unexecuted instantiation: virtual_servers.c:talloc_str_list_num
Unexecuted instantiation: call.c:talloc_str_list_num
Unexecuted instantiation: call_env.c:talloc_str_list_num
Unexecuted instantiation: caller.c:talloc_str_list_num
Unexecuted instantiation: catch.c:talloc_str_list_num
Unexecuted instantiation: child_request.c:talloc_str_list_num
Unexecuted instantiation: compile.c:talloc_str_list_num
Unexecuted instantiation: condition.c:talloc_str_list_num
Unexecuted instantiation: detach.c:talloc_str_list_num
Unexecuted instantiation: finally.c:talloc_str_list_num
Unexecuted instantiation: foreach.c:talloc_str_list_num
Unexecuted instantiation: function.c:talloc_str_list_num
Unexecuted instantiation: group.c:talloc_str_list_num
Unexecuted instantiation: interpret.c:talloc_str_list_num
Unexecuted instantiation: interpret_synchronous.c:talloc_str_list_num
Unexecuted instantiation: io.c:talloc_str_list_num
Unexecuted instantiation: limit.c:talloc_str_list_num
Unexecuted instantiation: load_balance.c:talloc_str_list_num
Unexecuted instantiation: map_builtin.c:talloc_str_list_num
Unexecuted instantiation: mod_action.c:talloc_str_list_num
Unexecuted instantiation: parallel.c:talloc_str_list_num
Unexecuted instantiation: return.c:talloc_str_list_num
Unexecuted instantiation: subrequest.c:talloc_str_list_num
Unexecuted instantiation: switch.c:talloc_str_list_num
Unexecuted instantiation: timeout.c:talloc_str_list_num
Unexecuted instantiation: tmpl.c:talloc_str_list_num
Unexecuted instantiation: try.c:talloc_str_list_num
Unexecuted instantiation: transaction.c:talloc_str_list_num
Unexecuted instantiation: xlat.c:talloc_str_list_num
Unexecuted instantiation: xlat_alloc.c:talloc_str_list_num
Unexecuted instantiation: xlat_builtin.c:talloc_str_list_num
Unexecuted instantiation: xlat_eval.c:talloc_str_list_num
Unexecuted instantiation: xlat_expr.c:talloc_str_list_num
Unexecuted instantiation: xlat_func.c:talloc_str_list_num
Unexecuted instantiation: xlat_inst.c:talloc_str_list_num
Unexecuted instantiation: xlat_pair.c:talloc_str_list_num
Unexecuted instantiation: xlat_profiling.c:talloc_str_list_num
Unexecuted instantiation: xlat_purify.c:talloc_str_list_num
Unexecuted instantiation: xlat_redundant.c:talloc_str_list_num
Unexecuted instantiation: xlat_tokenize.c:talloc_str_list_num
Unexecuted instantiation: json.c:talloc_str_list_num
Unexecuted instantiation: jpath.c:talloc_str_list_num
Unexecuted instantiation: app_io.c:talloc_str_list_num
Unexecuted instantiation: atomic_queue.c:talloc_str_list_num
Unexecuted instantiation: channel.c:talloc_str_list_num
Unexecuted instantiation: control.c:talloc_str_list_num
Unexecuted instantiation: coord.c:talloc_str_list_num
Unexecuted instantiation: coord_pair.c:talloc_str_list_num
Unexecuted instantiation: load.c:talloc_str_list_num
Unexecuted instantiation: master.c:talloc_str_list_num
Unexecuted instantiation: message.c:talloc_str_list_num
Unexecuted instantiation: network.c:talloc_str_list_num
Unexecuted instantiation: queue.c:talloc_str_list_num
Unexecuted instantiation: ring_buffer.c:talloc_str_list_num
Unexecuted instantiation: schedule.c:talloc_str_list_num
Unexecuted instantiation: thread.c:talloc_str_list_num
Unexecuted instantiation: worker.c:talloc_str_list_num
272
273
/** Return the number of strings a NULL terminated string array was sized for
274
 *
275
 * Reads the talloc array length of the strings array, excluding the
276
 * slot reserved for the NULL terminator.  Slots not yet filled by
277
 * talloc_str_list_append are NULL.
278
 */
279
static inline size_t talloc_str_array_len(char const * const *strings)
280
0
{
281
0
  return talloc_array_length(strings) - 1;
282
0
}
Unexecuted instantiation: fuzzer_dhcpv6.c:talloc_str_array_len
Unexecuted instantiation: common.c:talloc_str_array_len
Unexecuted instantiation: fuzzer_util.c:talloc_str_array_len
Unexecuted instantiation: fuzzer_dhcpv4.c:talloc_str_array_len
Unexecuted instantiation: fuzzer_cf.c:talloc_str_array_len
Unexecuted instantiation: fuzzer_base16_32_64.c:talloc_str_array_len
Unexecuted instantiation: fuzzer_cbor.c:talloc_str_array_len
Unexecuted instantiation: fuzzer_xlat.c:talloc_str_array_len
Unexecuted instantiation: fuzzer_der.c:talloc_str_array_len
Unexecuted instantiation: fuzzer_dns.c:talloc_str_array_len
Unexecuted instantiation: fuzzer_tacacs.c:talloc_str_array_len
Unexecuted instantiation: fuzzer_json.c:talloc_str_array_len
Unexecuted instantiation: fuzzer_bfd.c:talloc_str_array_len
Unexecuted instantiation: fuzzer_radius.c:talloc_str_array_len
Unexecuted instantiation: fuzzer_tmpl.c:talloc_str_array_len
Unexecuted instantiation: fuzzer_tftp.c:talloc_str_array_len
Unexecuted instantiation: fuzzer_value.c:talloc_str_array_len
Unexecuted instantiation: fuzzer_arp.c:talloc_str_array_len
Unexecuted instantiation: fuzzer_vmps.c:talloc_str_array_len
Unexecuted instantiation: atexit.c:talloc_str_array_len
Unexecuted instantiation: backtrace.c:talloc_str_array_len
Unexecuted instantiation: base16.c:talloc_str_array_len
Unexecuted instantiation: base32.c:talloc_str_array_len
Unexecuted instantiation: base64.c:talloc_str_array_len
Unexecuted instantiation: calc.c:talloc_str_array_len
Unexecuted instantiation: cbor.c:talloc_str_array_len
Unexecuted instantiation: dbuff.c:talloc_str_array_len
Unexecuted instantiation: debug.c:talloc_str_array_len
Unexecuted instantiation: decode.c:talloc_str_array_len
Unexecuted instantiation: dict_ext.c:talloc_str_array_len
Unexecuted instantiation: dict_fixup.c:talloc_str_array_len
Unexecuted instantiation: dict_print.c:talloc_str_array_len
Unexecuted instantiation: dict_test.c:talloc_str_array_len
Unexecuted instantiation: dict_tokenize.c:talloc_str_array_len
Unexecuted instantiation: dict_unknown.c:talloc_str_array_len
Unexecuted instantiation: dict_util.c:talloc_str_array_len
Unexecuted instantiation: dict_validate.c:talloc_str_array_len
Unexecuted instantiation: dl.c:talloc_str_array_len
Unexecuted instantiation: dns.c:talloc_str_array_len
Unexecuted instantiation: edit.c:talloc_str_array_len
Unexecuted instantiation: encode.c:talloc_str_array_len
Unexecuted instantiation: event.c:talloc_str_array_len
Unexecuted instantiation: timer.c:talloc_str_array_len
Unexecuted instantiation: ext.c:talloc_str_array_len
Unexecuted instantiation: fifo.c:talloc_str_array_len
Unexecuted instantiation: file.c:talloc_str_array_len
Unexecuted instantiation: fring.c:talloc_str_array_len
Unexecuted instantiation: hash.c:talloc_str_array_len
Unexecuted instantiation: heap.c:talloc_str_array_len
Unexecuted instantiation: hmac_md5.c:talloc_str_array_len
Unexecuted instantiation: hmac_sha1.c:talloc_str_array_len
Unexecuted instantiation: htrie.c:talloc_str_array_len
Unexecuted instantiation: inet.c:talloc_str_array_len
Unexecuted instantiation: iovec.c:talloc_str_array_len
Unexecuted instantiation: log.c:talloc_str_array_len
Unexecuted instantiation: lst.c:talloc_str_array_len
Unexecuted instantiation: machine.c:talloc_str_array_len
Unexecuted instantiation: md4.c:talloc_str_array_len
Unexecuted instantiation: md5.c:talloc_str_array_len
Unexecuted instantiation: minmax_heap.c:talloc_str_array_len
Unexecuted instantiation: misc.c:talloc_str_array_len
Unexecuted instantiation: net.c:talloc_str_array_len
Unexecuted instantiation: packet.c:talloc_str_array_len
Unexecuted instantiation: pair.c:talloc_str_array_len
Unexecuted instantiation: pair_inline.c:talloc_str_array_len
Unexecuted instantiation: pair_legacy.c:talloc_str_array_len
Unexecuted instantiation: pair_print.c:talloc_str_array_len
Unexecuted instantiation: pair_tokenize.c:talloc_str_array_len
Unexecuted instantiation: perm.c:talloc_str_array_len
Unexecuted instantiation: print.c:talloc_str_array_len
Unexecuted instantiation: proto.c:talloc_str_array_len
Unexecuted instantiation: rand.c:talloc_str_array_len
Unexecuted instantiation: rb.c:talloc_str_array_len
Unexecuted instantiation: rb_expire.c:talloc_str_array_len
Unexecuted instantiation: regex.c:talloc_str_array_len
Unexecuted instantiation: retry.c:talloc_str_array_len
Unexecuted instantiation: sbuff.c:talloc_str_array_len
Unexecuted instantiation: sem.c:talloc_str_array_len
Unexecuted instantiation: semaphore.c:talloc_str_array_len
Unexecuted instantiation: size.c:talloc_str_array_len
Unexecuted instantiation: skip.c:talloc_str_array_len
Unexecuted instantiation: socket.c:talloc_str_array_len
Unexecuted instantiation: stats.c:talloc_str_array_len
Unexecuted instantiation: strerror.c:talloc_str_array_len
Unexecuted instantiation: struct.c:talloc_str_array_len
Unexecuted instantiation: syserror.c:talloc_str_array_len
Unexecuted instantiation: table.c:talloc_str_array_len
Unexecuted instantiation: talloc.c:talloc_str_array_len
Unexecuted instantiation: time.c:talloc_str_array_len
Unexecuted instantiation: timeval.c:talloc_str_array_len
Unexecuted instantiation: token.c:talloc_str_array_len
Unexecuted instantiation: trie.c:talloc_str_array_len
Unexecuted instantiation: types.c:talloc_str_array_len
Unexecuted instantiation: udp.c:talloc_str_array_len
Unexecuted instantiation: udp_queue.c:talloc_str_array_len
Unexecuted instantiation: udpfromto.c:talloc_str_array_len
Unexecuted instantiation: uri.c:talloc_str_array_len
Unexecuted instantiation: value.c:talloc_str_array_len
Unexecuted instantiation: fuzzer.c:talloc_str_array_len
Unexecuted instantiation: base.c:talloc_str_array_len
Unexecuted instantiation: list.c:talloc_str_array_len
Unexecuted instantiation: tcp.c:talloc_str_array_len
Unexecuted instantiation: abinary.c:talloc_str_array_len
Unexecuted instantiation: raw.c:talloc_str_array_len
Unexecuted instantiation: vmps.c:talloc_str_array_len
Unexecuted instantiation: bio.c:talloc_str_array_len
Unexecuted instantiation: cache.c:talloc_str_array_len
Unexecuted instantiation: cert.c:talloc_str_array_len
Unexecuted instantiation: conf.c:talloc_str_array_len
Unexecuted instantiation: connection.c:talloc_str_array_len
Unexecuted instantiation: ctx.c:talloc_str_array_len
Unexecuted instantiation: pairs.c:talloc_str_array_len
Unexecuted instantiation: session.c:talloc_str_array_len
Unexecuted instantiation: utils.c:talloc_str_array_len
Unexecuted instantiation: verify.c:talloc_str_array_len
Unexecuted instantiation: version.c:talloc_str_array_len
Unexecuted instantiation: virtual_server.c:talloc_str_array_len
Unexecuted instantiation: auth.c:talloc_str_array_len
Unexecuted instantiation: cf_file.c:talloc_str_array_len
Unexecuted instantiation: cf_parse.c:talloc_str_array_len
Unexecuted instantiation: cf_util.c:talloc_str_array_len
Unexecuted instantiation: client.c:talloc_str_array_len
Unexecuted instantiation: command.c:talloc_str_array_len
Unexecuted instantiation: dependency.c:talloc_str_array_len
Unexecuted instantiation: dl_module.c:talloc_str_array_len
Unexecuted instantiation: exec.c:talloc_str_array_len
Unexecuted instantiation: exec_legacy.c:talloc_str_array_len
Unexecuted instantiation: exfile.c:talloc_str_array_len
Unexecuted instantiation: global_lib.c:talloc_str_array_len
Unexecuted instantiation: main_config.c:talloc_str_array_len
Unexecuted instantiation: main_loop.c:talloc_str_array_len
Unexecuted instantiation: map.c:talloc_str_array_len
Unexecuted instantiation: map_proc.c:talloc_str_array_len
Unexecuted instantiation: module.c:talloc_str_array_len
Unexecuted instantiation: module_method.c:talloc_str_array_len
Unexecuted instantiation: module_rlm.c:talloc_str_array_len
Unexecuted instantiation: paircmp.c:talloc_str_array_len
Unexecuted instantiation: pairmove.c:talloc_str_array_len
Unexecuted instantiation: password.c:talloc_str_array_len
Unexecuted instantiation: pool.c:talloc_str_array_len
Unexecuted instantiation: request.c:talloc_str_array_len
Unexecuted instantiation: request_data.c:talloc_str_array_len
Unexecuted instantiation: section.c:talloc_str_array_len
Unexecuted instantiation: snmp.c:talloc_str_array_len
Unexecuted instantiation: state.c:talloc_str_array_len
Unexecuted instantiation: tmpl_dcursor.c:talloc_str_array_len
Unexecuted instantiation: tmpl_eval.c:talloc_str_array_len
Unexecuted instantiation: tmpl_tokenize.c:talloc_str_array_len
Unexecuted instantiation: time_tracking.c:talloc_str_array_len
Unexecuted instantiation: trigger.c:talloc_str_array_len
Unexecuted instantiation: trunk.c:talloc_str_array_len
Unexecuted instantiation: users_file.c:talloc_str_array_len
Unexecuted instantiation: util.c:talloc_str_array_len
Unexecuted instantiation: virtual_servers.c:talloc_str_array_len
Unexecuted instantiation: call.c:talloc_str_array_len
Unexecuted instantiation: call_env.c:talloc_str_array_len
Unexecuted instantiation: caller.c:talloc_str_array_len
Unexecuted instantiation: catch.c:talloc_str_array_len
Unexecuted instantiation: child_request.c:talloc_str_array_len
Unexecuted instantiation: compile.c:talloc_str_array_len
Unexecuted instantiation: condition.c:talloc_str_array_len
Unexecuted instantiation: detach.c:talloc_str_array_len
Unexecuted instantiation: finally.c:talloc_str_array_len
Unexecuted instantiation: foreach.c:talloc_str_array_len
Unexecuted instantiation: function.c:talloc_str_array_len
Unexecuted instantiation: group.c:talloc_str_array_len
Unexecuted instantiation: interpret.c:talloc_str_array_len
Unexecuted instantiation: interpret_synchronous.c:talloc_str_array_len
Unexecuted instantiation: io.c:talloc_str_array_len
Unexecuted instantiation: limit.c:talloc_str_array_len
Unexecuted instantiation: load_balance.c:talloc_str_array_len
Unexecuted instantiation: map_builtin.c:talloc_str_array_len
Unexecuted instantiation: mod_action.c:talloc_str_array_len
Unexecuted instantiation: parallel.c:talloc_str_array_len
Unexecuted instantiation: return.c:talloc_str_array_len
Unexecuted instantiation: subrequest.c:talloc_str_array_len
Unexecuted instantiation: switch.c:talloc_str_array_len
Unexecuted instantiation: timeout.c:talloc_str_array_len
Unexecuted instantiation: tmpl.c:talloc_str_array_len
Unexecuted instantiation: try.c:talloc_str_array_len
Unexecuted instantiation: transaction.c:talloc_str_array_len
Unexecuted instantiation: xlat.c:talloc_str_array_len
Unexecuted instantiation: xlat_alloc.c:talloc_str_array_len
Unexecuted instantiation: xlat_builtin.c:talloc_str_array_len
Unexecuted instantiation: xlat_eval.c:talloc_str_array_len
Unexecuted instantiation: xlat_expr.c:talloc_str_array_len
Unexecuted instantiation: xlat_func.c:talloc_str_array_len
Unexecuted instantiation: xlat_inst.c:talloc_str_array_len
Unexecuted instantiation: xlat_pair.c:talloc_str_array_len
Unexecuted instantiation: xlat_profiling.c:talloc_str_array_len
Unexecuted instantiation: xlat_purify.c:talloc_str_array_len
Unexecuted instantiation: xlat_redundant.c:talloc_str_array_len
Unexecuted instantiation: xlat_tokenize.c:talloc_str_array_len
Unexecuted instantiation: json.c:talloc_str_array_len
Unexecuted instantiation: jpath.c:talloc_str_array_len
Unexecuted instantiation: app_io.c:talloc_str_array_len
Unexecuted instantiation: atomic_queue.c:talloc_str_array_len
Unexecuted instantiation: channel.c:talloc_str_array_len
Unexecuted instantiation: control.c:talloc_str_array_len
Unexecuted instantiation: coord.c:talloc_str_array_len
Unexecuted instantiation: coord_pair.c:talloc_str_array_len
Unexecuted instantiation: load.c:talloc_str_array_len
Unexecuted instantiation: master.c:talloc_str_array_len
Unexecuted instantiation: message.c:talloc_str_array_len
Unexecuted instantiation: network.c:talloc_str_array_len
Unexecuted instantiation: queue.c:talloc_str_array_len
Unexecuted instantiation: ring_buffer.c:talloc_str_array_len
Unexecuted instantiation: schedule.c:talloc_str_array_len
Unexecuted instantiation: thread.c:talloc_str_array_len
Unexecuted instantiation: worker.c:talloc_str_array_len
283
284
/** Free const'd memory
285
 *
286
 * @param[in] ptr to free.
287
 */
288
static inline int talloc_const_free(void const *ptr)
289
268k
{
290
268k
  if (!ptr) return 0;
291
292
233k
  return talloc_free(UNCONST(void *, ptr));
293
268k
}
Unexecuted instantiation: fuzzer_dhcpv6.c:talloc_const_free
Unexecuted instantiation: common.c:talloc_const_free
Unexecuted instantiation: fuzzer_util.c:talloc_const_free
Unexecuted instantiation: fuzzer_dhcpv4.c:talloc_const_free
Unexecuted instantiation: fuzzer_cf.c:talloc_const_free
Unexecuted instantiation: fuzzer_base16_32_64.c:talloc_const_free
Unexecuted instantiation: fuzzer_cbor.c:talloc_const_free
Unexecuted instantiation: fuzzer_xlat.c:talloc_const_free
Unexecuted instantiation: fuzzer_der.c:talloc_const_free
Unexecuted instantiation: fuzzer_dns.c:talloc_const_free
Unexecuted instantiation: fuzzer_tacacs.c:talloc_const_free
Unexecuted instantiation: fuzzer_json.c:talloc_const_free
Unexecuted instantiation: fuzzer_bfd.c:talloc_const_free
Unexecuted instantiation: fuzzer_radius.c:talloc_const_free
Unexecuted instantiation: fuzzer_tmpl.c:talloc_const_free
Unexecuted instantiation: fuzzer_tftp.c:talloc_const_free
Unexecuted instantiation: fuzzer_value.c:talloc_const_free
Unexecuted instantiation: fuzzer_arp.c:talloc_const_free
Unexecuted instantiation: fuzzer_vmps.c:talloc_const_free
Unexecuted instantiation: atexit.c:talloc_const_free
Unexecuted instantiation: backtrace.c:talloc_const_free
Unexecuted instantiation: base16.c:talloc_const_free
Unexecuted instantiation: base32.c:talloc_const_free
Unexecuted instantiation: base64.c:talloc_const_free
Unexecuted instantiation: calc.c:talloc_const_free
Unexecuted instantiation: cbor.c:talloc_const_free
Unexecuted instantiation: dbuff.c:talloc_const_free
Unexecuted instantiation: debug.c:talloc_const_free
Unexecuted instantiation: dict_ext.c:talloc_const_free
Unexecuted instantiation: dict_fixup.c:talloc_const_free
Unexecuted instantiation: dict_print.c:talloc_const_free
Unexecuted instantiation: dict_test.c:talloc_const_free
Unexecuted instantiation: dict_tokenize.c:talloc_const_free
dict_unknown.c:talloc_const_free
Line
Count
Source
289
188k
{
290
188k
  if (!ptr) return 0;
291
292
188k
  return talloc_free(UNCONST(void *, ptr));
293
188k
}
Unexecuted instantiation: dict_util.c:talloc_const_free
Unexecuted instantiation: dict_validate.c:talloc_const_free
Unexecuted instantiation: dl.c:talloc_const_free
Unexecuted instantiation: dns.c:talloc_const_free
Unexecuted instantiation: edit.c:talloc_const_free
Unexecuted instantiation: encode.c:talloc_const_free
Unexecuted instantiation: event.c:talloc_const_free
Unexecuted instantiation: timer.c:talloc_const_free
Unexecuted instantiation: ext.c:talloc_const_free
Unexecuted instantiation: fifo.c:talloc_const_free
Unexecuted instantiation: file.c:talloc_const_free
Unexecuted instantiation: fring.c:talloc_const_free
Unexecuted instantiation: hash.c:talloc_const_free
Unexecuted instantiation: heap.c:talloc_const_free
Unexecuted instantiation: hmac_md5.c:talloc_const_free
Unexecuted instantiation: hmac_sha1.c:talloc_const_free
Unexecuted instantiation: htrie.c:talloc_const_free
Unexecuted instantiation: inet.c:talloc_const_free
Unexecuted instantiation: iovec.c:talloc_const_free
Unexecuted instantiation: log.c:talloc_const_free
Unexecuted instantiation: lst.c:talloc_const_free
Unexecuted instantiation: machine.c:talloc_const_free
Unexecuted instantiation: md4.c:talloc_const_free
Unexecuted instantiation: md5.c:talloc_const_free
Unexecuted instantiation: minmax_heap.c:talloc_const_free
Unexecuted instantiation: misc.c:talloc_const_free
Unexecuted instantiation: net.c:talloc_const_free
Unexecuted instantiation: packet.c:talloc_const_free
Unexecuted instantiation: pair.c:talloc_const_free
Unexecuted instantiation: pair_inline.c:talloc_const_free
Unexecuted instantiation: pair_legacy.c:talloc_const_free
Unexecuted instantiation: pair_print.c:talloc_const_free
Unexecuted instantiation: pair_tokenize.c:talloc_const_free
Unexecuted instantiation: perm.c:talloc_const_free
Unexecuted instantiation: print.c:talloc_const_free
Unexecuted instantiation: proto.c:talloc_const_free
Unexecuted instantiation: rand.c:talloc_const_free
Unexecuted instantiation: rb.c:talloc_const_free
Unexecuted instantiation: rb_expire.c:talloc_const_free
Unexecuted instantiation: regex.c:talloc_const_free
Unexecuted instantiation: retry.c:talloc_const_free
Unexecuted instantiation: sbuff.c:talloc_const_free
Unexecuted instantiation: sem.c:talloc_const_free
Unexecuted instantiation: semaphore.c:talloc_const_free
Unexecuted instantiation: size.c:talloc_const_free
Unexecuted instantiation: skip.c:talloc_const_free
Unexecuted instantiation: socket.c:talloc_const_free
Unexecuted instantiation: stats.c:talloc_const_free
Unexecuted instantiation: strerror.c:talloc_const_free
Unexecuted instantiation: struct.c:talloc_const_free
Unexecuted instantiation: syserror.c:talloc_const_free
Unexecuted instantiation: table.c:talloc_const_free
Unexecuted instantiation: talloc.c:talloc_const_free
Unexecuted instantiation: time.c:talloc_const_free
Unexecuted instantiation: timeval.c:talloc_const_free
Unexecuted instantiation: token.c:talloc_const_free
Unexecuted instantiation: trie.c:talloc_const_free
Unexecuted instantiation: types.c:talloc_const_free
Unexecuted instantiation: udp.c:talloc_const_free
Unexecuted instantiation: udp_queue.c:talloc_const_free
Unexecuted instantiation: udpfromto.c:talloc_const_free
Unexecuted instantiation: uri.c:talloc_const_free
Unexecuted instantiation: value.c:talloc_const_free
Unexecuted instantiation: fuzzer.c:talloc_const_free
Unexecuted instantiation: base.c:talloc_const_free
Unexecuted instantiation: list.c:talloc_const_free
Unexecuted instantiation: tcp.c:talloc_const_free
Unexecuted instantiation: abinary.c:talloc_const_free
Unexecuted instantiation: raw.c:talloc_const_free
decode.c:talloc_const_free
Line
Count
Source
289
5.00k
{
290
5.00k
  if (!ptr) return 0;
291
292
5.00k
  return talloc_free(UNCONST(void *, ptr));
293
5.00k
}
Unexecuted instantiation: vmps.c:talloc_const_free
Unexecuted instantiation: bio.c:talloc_const_free
Unexecuted instantiation: cache.c:talloc_const_free
Unexecuted instantiation: cert.c:talloc_const_free
Unexecuted instantiation: conf.c:talloc_const_free
Unexecuted instantiation: connection.c:talloc_const_free
Unexecuted instantiation: ctx.c:talloc_const_free
Unexecuted instantiation: pairs.c:talloc_const_free
Unexecuted instantiation: session.c:talloc_const_free
Unexecuted instantiation: utils.c:talloc_const_free
Unexecuted instantiation: verify.c:talloc_const_free
Unexecuted instantiation: version.c:talloc_const_free
Unexecuted instantiation: virtual_server.c:talloc_const_free
Unexecuted instantiation: auth.c:talloc_const_free
Unexecuted instantiation: cf_file.c:talloc_const_free
Unexecuted instantiation: cf_parse.c:talloc_const_free
cf_util.c:talloc_const_free
Line
Count
Source
289
4.75k
{
290
4.75k
  if (!ptr) return 0;
291
292
1.34k
  return talloc_free(UNCONST(void *, ptr));
293
4.75k
}
Unexecuted instantiation: client.c:talloc_const_free
Unexecuted instantiation: command.c:talloc_const_free
Unexecuted instantiation: dependency.c:talloc_const_free
Unexecuted instantiation: dl_module.c:talloc_const_free
Unexecuted instantiation: exec.c:talloc_const_free
Unexecuted instantiation: exec_legacy.c:talloc_const_free
Unexecuted instantiation: exfile.c:talloc_const_free
Unexecuted instantiation: global_lib.c:talloc_const_free
Unexecuted instantiation: main_config.c:talloc_const_free
Unexecuted instantiation: main_loop.c:talloc_const_free
Unexecuted instantiation: map.c:talloc_const_free
Unexecuted instantiation: map_proc.c:talloc_const_free
Unexecuted instantiation: module.c:talloc_const_free
Unexecuted instantiation: module_method.c:talloc_const_free
Unexecuted instantiation: module_rlm.c:talloc_const_free
Unexecuted instantiation: paircmp.c:talloc_const_free
Unexecuted instantiation: pairmove.c:talloc_const_free
Unexecuted instantiation: password.c:talloc_const_free
Unexecuted instantiation: pool.c:talloc_const_free
Unexecuted instantiation: request.c:talloc_const_free
Unexecuted instantiation: request_data.c:talloc_const_free
Unexecuted instantiation: section.c:talloc_const_free
Unexecuted instantiation: snmp.c:talloc_const_free
Unexecuted instantiation: state.c:talloc_const_free
Unexecuted instantiation: tmpl_dcursor.c:talloc_const_free
Unexecuted instantiation: tmpl_eval.c:talloc_const_free
tmpl_tokenize.c:talloc_const_free
Line
Count
Source
289
31.5k
{
290
31.5k
  if (!ptr) return 0;
291
292
0
  return talloc_free(UNCONST(void *, ptr));
293
31.5k
}
Unexecuted instantiation: time_tracking.c:talloc_const_free
Unexecuted instantiation: trigger.c:talloc_const_free
Unexecuted instantiation: trunk.c:talloc_const_free
Unexecuted instantiation: users_file.c:talloc_const_free
Unexecuted instantiation: util.c:talloc_const_free
Unexecuted instantiation: virtual_servers.c:talloc_const_free
Unexecuted instantiation: call.c:talloc_const_free
Unexecuted instantiation: call_env.c:talloc_const_free
Unexecuted instantiation: caller.c:talloc_const_free
Unexecuted instantiation: catch.c:talloc_const_free
Unexecuted instantiation: child_request.c:talloc_const_free
Unexecuted instantiation: compile.c:talloc_const_free
Unexecuted instantiation: condition.c:talloc_const_free
Unexecuted instantiation: detach.c:talloc_const_free
Unexecuted instantiation: finally.c:talloc_const_free
Unexecuted instantiation: foreach.c:talloc_const_free
Unexecuted instantiation: function.c:talloc_const_free
Unexecuted instantiation: group.c:talloc_const_free
Unexecuted instantiation: interpret.c:talloc_const_free
Unexecuted instantiation: interpret_synchronous.c:talloc_const_free
Unexecuted instantiation: io.c:talloc_const_free
Unexecuted instantiation: limit.c:talloc_const_free
Unexecuted instantiation: load_balance.c:talloc_const_free
Unexecuted instantiation: map_builtin.c:talloc_const_free
Unexecuted instantiation: mod_action.c:talloc_const_free
Unexecuted instantiation: parallel.c:talloc_const_free
Unexecuted instantiation: return.c:talloc_const_free
Unexecuted instantiation: subrequest.c:talloc_const_free
Unexecuted instantiation: switch.c:talloc_const_free
Unexecuted instantiation: timeout.c:talloc_const_free
Unexecuted instantiation: tmpl.c:talloc_const_free
Unexecuted instantiation: try.c:talloc_const_free
Unexecuted instantiation: transaction.c:talloc_const_free
Unexecuted instantiation: xlat.c:talloc_const_free
xlat_alloc.c:talloc_const_free
Line
Count
Source
289
37.6k
{
290
37.6k
  if (!ptr) return 0;
291
292
37.6k
  return talloc_free(UNCONST(void *, ptr));
293
37.6k
}
Unexecuted instantiation: xlat_builtin.c:talloc_const_free
Unexecuted instantiation: xlat_eval.c:talloc_const_free
Unexecuted instantiation: xlat_expr.c:talloc_const_free
Unexecuted instantiation: xlat_func.c:talloc_const_free
Unexecuted instantiation: xlat_inst.c:talloc_const_free
Unexecuted instantiation: xlat_pair.c:talloc_const_free
Unexecuted instantiation: xlat_profiling.c:talloc_const_free
Unexecuted instantiation: xlat_purify.c:talloc_const_free
Unexecuted instantiation: xlat_redundant.c:talloc_const_free
xlat_tokenize.c:talloc_const_free
Line
Count
Source
289
1.06k
{
290
1.06k
  if (!ptr) return 0;
291
292
1.06k
  return talloc_free(UNCONST(void *, ptr));
293
1.06k
}
Unexecuted instantiation: json.c:talloc_const_free
Unexecuted instantiation: jpath.c:talloc_const_free
Unexecuted instantiation: app_io.c:talloc_const_free
Unexecuted instantiation: atomic_queue.c:talloc_const_free
Unexecuted instantiation: channel.c:talloc_const_free
Unexecuted instantiation: control.c:talloc_const_free
Unexecuted instantiation: coord.c:talloc_const_free
Unexecuted instantiation: coord_pair.c:talloc_const_free
Unexecuted instantiation: load.c:talloc_const_free
Unexecuted instantiation: master.c:talloc_const_free
Unexecuted instantiation: message.c:talloc_const_free
Unexecuted instantiation: network.c:talloc_const_free
Unexecuted instantiation: queue.c:talloc_const_free
Unexecuted instantiation: ring_buffer.c:talloc_const_free
Unexecuted instantiation: schedule.c:talloc_const_free
Unexecuted instantiation: thread.c:talloc_const_free
Unexecuted instantiation: worker.c:talloc_const_free
294
295
TALLOC_CTX    *talloc_autofree_context_global(void);
296
TALLOC_CTX    *talloc_autofree_context_thread_local(void);
297
#endif
298
299
#ifdef __cplusplus
300
}
301
#endif