/src/freeradius-server/src/freeradius-devel/util/dbuff.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 | | /** A generic data buffer structure for encoding and decoding |
19 | | * |
20 | | * Because doing manual length checks is error prone and a waste of everyone's time. |
21 | | * |
22 | | * @file src/lib/util/dbuff.h |
23 | | * |
24 | | * @copyright 2020 Arran Cudbard-Bell <a.cudbardb@freeradius.org> |
25 | | */ |
26 | | RCSIDH(dbuff_h, "$Id: d3eb3a58c12edd930c35eff1b975bab4567740ce $") |
27 | | |
28 | | # ifdef __cplusplus |
29 | | extern "C" { |
30 | | # endif |
31 | | |
32 | | #include <errno.h> |
33 | | #include <freeradius-devel/missing.h> |
34 | | #include <freeradius-devel/util/debug.h> |
35 | | #include <freeradius-devel/util/nbo.h> |
36 | | #include <limits.h> |
37 | | #include <sys/types.h> |
38 | | |
39 | | DIAG_OFF(cast-align) |
40 | | |
41 | | /** A dbuff |
42 | | * |
43 | | * dbuffs wrap an underlying buffer, maintaining 'start', 'current', and 'end' |
44 | | * position pointers. |
45 | | * |
46 | | * dbuffs also contain information on if and how the underlying buffer can be |
47 | | * extended. |
48 | | * |
49 | | * For encoding extending means reallocing the underlying buffer so that there's |
50 | | * addition space to write data to. |
51 | | * |
52 | | * For stream decoding extending means shifting out existing data and refilling |
53 | | * the underlying buffer from a data source. |
54 | | * |
55 | | * dbuffs are intended to be organised into hierarchies, with one dbuff per stack |
56 | | * frame, initialised from a parent in a higher stack frame. |
57 | | * |
58 | | * Each time a dbuff is copied (using one of the provided FR_DBUFF_BIND_CURRENT_* macros), |
59 | | * the copy's 'start' position is updated to be the 'current' position of its |
60 | | * parent. This ensures length macros report only spaced used/available in the |
61 | | * new dbuff and not its parent. |
62 | | * Other copy macros may move the 'end' position, to artificially limit the |
63 | | * amount of data available. |
64 | | */ |
65 | | typedef struct fr_dbuff_s fr_dbuff_t; |
66 | | |
67 | | /** A position marker associated with a dbuff |
68 | | * |
69 | | * Markers are used whenever the caller needs to access part of the underlying |
70 | | * buffer other than the 'start', 'current' or 'end' positions described by |
71 | | * a #fr_dbuff_t. |
72 | | * |
73 | | * Markers are needed because if a #fr_dbuff_t is extended, pointers into the |
74 | | * underlying buffer may be invalidated by a realloc or memmove. |
75 | | * |
76 | | * Markers are intended to be allocated on the stack and associated with a |
77 | | * stack-frame-local `fr_dbuff_t`. Using a stack-frame-local dbuff ensures |
78 | | * markers are automatically released when the stack frame is popped so that |
79 | | * markers are not leaked. |
80 | | */ |
81 | | typedef struct fr_dbuff_marker_s fr_dbuff_marker_t; |
82 | | |
83 | | /** dbuff extension callback |
84 | | * |
85 | | * This callback is used to extend the underlying buffer. |
86 | | * |
87 | | * - Where the buffer is being used to aggregate data, this callback will |
88 | | * usually call realloc to extend the buffer. |
89 | | * |
90 | | * - Where the buffer is being used for stream decoding, this callback will |
91 | | * usually shift the existing data in the buffer to the left, and read in more |
92 | | * data from the stream. |
93 | | * |
94 | | * After performing an operation on the underlying buffer, this callback should |
95 | | * call #fr_dbuff_update to fix position pointers in the current dbuff and its |
96 | | * parents and markers. |
97 | | * |
98 | | * Generally the caller will request the minimum amount the buffer should be |
99 | | * extended by. This callback may choose to ignore the request and extend the |
100 | | * buffer by more than the requested amount. |
101 | | * |
102 | | * @param[in] dbuff to extend. |
103 | | * @param[in] req_extension How much the caller wants to extend the buffer |
104 | | * by. |
105 | | * @return How much the buffer was extended by. |
106 | | * @see fr_dbuff_update |
107 | | */ |
108 | | typedef size_t(*fr_dbuff_extend_t)(fr_dbuff_t *dbuff, size_t req_extension); |
109 | | |
110 | | /** A position marker associated with a dbuff |
111 | | * @private |
112 | | */ |
113 | | struct fr_dbuff_marker_s { |
114 | | /** @private |
115 | | */ |
116 | | union { |
117 | | uint8_t const *p_i; //!< Immutable position pointer. |
118 | | uint8_t *p; //!< Mutable position pointer. |
119 | | }; |
120 | | fr_dbuff_marker_t *next; //!< Next marker in the list. |
121 | | fr_dbuff_t *parent; //!< Owner of the marker. |
122 | | }; |
123 | | |
124 | 0 | #define FR_DBUFF_ADV_PARENT_CURRENT 0x01 //!< Advance current position of parent. |
125 | | //!< Useful for nested encoders/decoders. |
126 | 0 | #define FR_DBUFF_ADV_PARENT_END 0x02 //!< Advance end pointer of parent. |
127 | | ///< Useful for producer/consumer |
128 | | |
129 | | /** A dbuff |
130 | | * @private |
131 | | */ |
132 | | struct fr_dbuff_s { |
133 | | /** @private |
134 | | */ |
135 | | union { |
136 | | uint8_t const *buff_i; //!< Immutable 'buffer' pointer. |
137 | | uint8_t *buff; //!< Mutable 'buffer' pointer. |
138 | | }; |
139 | | |
140 | | /** @private |
141 | | */ |
142 | | union { |
143 | | uint8_t const *start_i; //!< Immutable 'start' pointer. |
144 | | uint8_t *start; //!< Mutable 'start' pointer. |
145 | | }; |
146 | | |
147 | | /** @private |
148 | | */ |
149 | | union { |
150 | | uint8_t const *end_i; //!< Immutable 'end' pointer. |
151 | | uint8_t *end; //!< Mutable 'end' pointer. |
152 | | }; |
153 | | |
154 | | /** @private |
155 | | */ |
156 | | union { |
157 | | uint8_t const *p_i; //!< Immutable 'current' pointer. |
158 | | uint8_t *p; //!< Mutable 'current' pointer. |
159 | | }; |
160 | | |
161 | | unsigned int is_const : 1; //!< The buffer this dbuff wraps is const. |
162 | | unsigned int adv_parent : 2; //!< Whether we advance the parent |
163 | | ///< of this dbuff. |
164 | | |
165 | | size_t shifted; //!< How many bytes this sbuff has been |
166 | | ///< shifted since its creation. |
167 | | |
168 | | fr_dbuff_extend_t extend; //!< Function to re-populate or extend |
169 | | ///< the buffer. |
170 | | void *uctx; //!< Extend uctx data. |
171 | | |
172 | | fr_dbuff_t *parent; //!< The #fr_dbuff_t this #fr_dbuff_t was |
173 | | ///< created from. |
174 | | ///< This will usually be the #fr_dbuff_t |
175 | | ///< passed into a function. |
176 | | |
177 | | fr_dbuff_marker_t *m; //!< Pointers to update if the underlying |
178 | | ///< buffer changes. |
179 | | }; |
180 | | |
181 | | /** Generic wrapper macro to return if there's insufficient memory to satisfy the request on the dbuff |
182 | | * |
183 | | */ |
184 | 6.32M | #define FR_DBUFF_RETURN(_func, ...) \ |
185 | 6.32M | do { \ |
186 | 6.32M | ssize_t _slen = _func(__VA_ARGS__ ); \ |
187 | 6.32M | if (_slen < 0) return _slen; \ |
188 | 6.32M | } while (0) |
189 | | |
190 | | /** Generic wrapper to return an error and an offset from encoding. |
191 | | * |
192 | | * Some encoders return PAIR_ENCODE_FATAL_ERROR. Substracting an |
193 | | * offset from that values means it wraps be be a positive number |
194 | | * near INT64_MAX. This macro ensures that doesn't happen. |
195 | | */ |
196 | 8.47k | #define FR_DBUFF_ERROR_OFFSET(_slen, _offset) ((_slen < INT32_MAX) ? _slen : _slen - (ssize_t) _offset) |
197 | | |
198 | | /** @name Initialisers |
199 | | * @{ |
200 | | */ |
201 | | |
202 | | /** @cond */ |
203 | | |
204 | | /** Copy another fr_dbuff_t, modifying it. |
205 | | * |
206 | | * @private |
207 | | */ |
208 | 7.34M | #define _FR_DBUFF(_dbuff_or_marker, _start, _adv_parent) \ |
209 | 7.34M | ((fr_dbuff_t){ \ |
210 | 7.34M | .buff = fr_dbuff_buff(_dbuff_or_marker), \ |
211 | 7.34M | .start = (_start), \ |
212 | 7.34M | .end = fr_dbuff_end(_dbuff_or_marker), \ |
213 | 7.34M | .p = fr_dbuff_current(_dbuff_or_marker), \ |
214 | 7.34M | .is_const = fr_dbuff_ptr(_dbuff_or_marker)->is_const, \ |
215 | 7.34M | .adv_parent = (_adv_parent), \ |
216 | 7.34M | .shifted = fr_dbuff_ptr(_dbuff_or_marker)->shifted, \ |
217 | 7.34M | .extend = fr_dbuff_ptr(_dbuff_or_marker)->extend, \ |
218 | 7.34M | .uctx = fr_dbuff_ptr(_dbuff_or_marker)->uctx, \ |
219 | 7.34M | .parent = fr_dbuff_ptr(_dbuff_or_marker) \ |
220 | 7.34M | }) |
221 | | /* @endcond */ |
222 | | |
223 | | /** Create a new dbuff pointing to the same underlying buffer |
224 | | * |
225 | | * - Parent will _NOT_ be advanced by operations on its child. |
226 | | * - Child will have its `start` pointer set to the `p` pointer of the parent. |
227 | | * |
228 | | * @param[in] _dbuff_or_marker to make an ephemeral copy of. |
229 | | */ |
230 | 7.34M | #define FR_DBUFF(_dbuff_or_marker) _FR_DBUFF(_dbuff_or_marker, fr_dbuff_current(_dbuff_or_marker), 0x00) |
231 | | |
232 | | /** Create a new dbuff pointing to the same underlying buffer |
233 | | * |
234 | | * - Parent will _NOT_ be advanced by operations on its child. |
235 | | * - Child will have its `start` pointer set to the `start` pointer of the parent. |
236 | | * |
237 | | * @param[in] _dbuff_or_marker to make an ephemeral copy of. |
238 | | */ |
239 | 0 | #define FR_DBUFF_ABS(_dbuff_or_marker) _FR_DBUFF(_dbuff_or_marker, fr_dbuff_start(_dbuff_or_marker), 0x00) |
240 | | |
241 | | /** Create a new dbuff pointing to the same underlying buffer |
242 | | * |
243 | | * - Parent `p` pointer will be advanced with child's `p` pointer. |
244 | | * - Child will have its `start` pointer set to the `p` pointer of the parent. |
245 | | * |
246 | | * @param[in] _dbuff_or_marker to make an ephemeral copy of. |
247 | | */ |
248 | 0 | #define FR_DBUFF_BIND_CURRENT(_dbuff_or_marker) _FR_DBUFF(_dbuff_or_marker, fr_dbuff_current(_dbuff_or_marker), FR_DBUFF_ADV_PARENT_CURRENT) |
249 | | |
250 | | /** Create a new dbuff pointing to the same underlying buffer |
251 | | * |
252 | | * - Parent `p` pointer will be advanced with child's `p` pointer. |
253 | | * - Child will have its `start` pointer set to the `start` pointer of the parent. |
254 | | * |
255 | | * @param[in] _dbuff_or_marker to make an ephemeral copy of. |
256 | | */ |
257 | | #define FR_DBUFF_BIND_CURRENT_ABS(_dbuff_or_marker) FR_DBUFF_ABS(_dbuff_or_marker, fr_dbuff_start(_dbuff_or_marker), FR_DBUFF_ADV_PARENT_CURRENT) |
258 | | |
259 | | /** Create a new dbuff pointing to the same underlying buffer |
260 | | * |
261 | | * This is used to create the producer of a producer/consumer pairs of dbuffs. |
262 | | * |
263 | | * - Parent `end` pointer will be advanced with child's `p` pointer. |
264 | | * - Child will have its `start` pointer set to the `start` pointer of the parent. |
265 | | * |
266 | | * @param[in] _dbuff_or_marker to make an ephemeral copy of. |
267 | | */ |
268 | 0 | #define FR_DBUFF_BIND_END_ABS(_dbuff_or_marker) _FR_DBUFF(_dbuff_or_marker, fr_dbuff_start(_dbuff_or_marker), FR_DBUFF_ADV_PARENT_END) |
269 | | |
270 | | /** @cond */ |
271 | | /** Limit available bytes in the dbuff to _max when passing it to another function |
272 | | * |
273 | | * @private |
274 | | */ |
275 | 0 | #define _FR_DBUFF_MAX(_dbuff_or_marker, _max, _adv_parent) \ |
276 | 0 | ((fr_dbuff_t){ \ |
277 | 0 | .buff = fr_dbuff_buff(_dbuff_or_marker), \ |
278 | 0 | .start = fr_dbuff_current(_dbuff_or_marker), \ |
279 | 0 | .end = (((fr_dbuff_end(_dbuff_or_marker) - (_max) < fr_dbuff_current(_dbuff_or_marker))) ? fr_dbuff_end(_dbuff_or_marker) : (fr_dbuff_current(_dbuff_or_marker) + (_max))), \ |
280 | 0 | .p = fr_dbuff_current(_dbuff_or_marker), \ |
281 | 0 | .is_const = fr_dbuff_ptr(_dbuff_or_marker)->is_const, \ |
282 | 0 | .adv_parent = _adv_parent, \ |
283 | 0 | .shifted = fr_dbuff_ptr(_dbuff_or_marker)->shifted, \ |
284 | 0 | .extend = NULL, \ |
285 | 0 | .uctx = NULL, \ |
286 | 0 | .parent = fr_dbuff_ptr(_dbuff_or_marker) \ |
287 | 0 | }) |
288 | | /* @endcond */ |
289 | | |
290 | | /** Limit the maximum number of bytes available in the dbuff when passing it to another function |
291 | | * |
292 | | @code{.c} |
293 | | fr_dbuff_t tlv = FR_DBUFF_MAX(dbuff, UINT8_MAX); |
294 | | |
295 | | if (my_child_encoder(&tlv, vp) < 0) return -1; |
296 | | |
297 | | return fr_dbuff_advance(dbuff, fr_dbuff_used(tlv)) |
298 | | @endcode |
299 | | * |
300 | | * @note Do not use to re-initialise the contents of _dbuff, i.e. to |
301 | | * permanently shrink the exiting dbuff. The parent pointer will loop. |
302 | | * |
303 | | * @note Do not modify the "child" dbuff directly. Use the functions |
304 | | * supplied as part of this API. |
305 | | * |
306 | | * @param[in] _dbuff_or_marker to reserve bytes in. |
307 | | * @param[in] _max The maximum number of bytes the caller is allowed to write to. |
308 | | */ |
309 | 0 | #define FR_DBUFF_MAX(_dbuff_or_marker, _max) _FR_DBUFF_MAX(_dbuff_or_marker, _max, 0x00) |
310 | | |
311 | | /** Limit the maximum number of bytes available in the dbuff when passing it to another function |
312 | | * |
313 | | @code{.c} |
314 | | my_child_encoder(&FR_DBUFF_MAX_BIND_CURRENT(dbuff, 253), vp); |
315 | | @endcode |
316 | | * |
317 | | * @note Do not use to re-initialise the contents of _dbuff, i.e. to |
318 | | * permanently shrink the exiting dbuff. The parent pointer will loop. |
319 | | * |
320 | | * @note Do not modify the "child" dbuff directly. Use the functions |
321 | | * supplied as part of this API. |
322 | | * |
323 | | * @param[in] _dbuff_or_marker to reserve bytes in. |
324 | | * @param[in] _max The maximum number of bytes the caller is allowed to write to. |
325 | | */ |
326 | 0 | #define FR_DBUFF_MAX_BIND_CURRENT(_dbuff_or_marker, _max) _FR_DBUFF_MAX(_dbuff_or_marker, _max, FR_DBUFF_ADV_PARENT_CURRENT) |
327 | | |
328 | | /* |
329 | | * GCC is stupid and will warn about output variables |
330 | | * being unnitialised, even if they're not dereferenced. |
331 | | */ |
332 | | #if defined(__GNUC__) && __GNUC__ >= 11 |
333 | | DIAG_OFF(maybe-uninitialized) |
334 | | #endif |
335 | | /** Does the actual work of initialising a dbuff |
336 | | * @private |
337 | | */ |
338 | | static inline |
339 | | #ifndef __COVERITY__ |
340 | | CC_HINT(nonnull) |
341 | | #endif |
342 | | void _fr_dbuff_init(fr_dbuff_t *out, uint8_t const *start, uint8_t const *end, bool is_const) |
343 | 5.93k | { |
344 | 5.93k | if (unlikely(end < start)) end = start; /* Could be an assert? */ |
345 | | |
346 | 5.93k | *out = (fr_dbuff_t){ |
347 | 5.93k | .buff_i = start, |
348 | 5.93k | .start_i = start, |
349 | 5.93k | .p_i = start, |
350 | 5.93k | .end_i = end, |
351 | 5.93k | .is_const = is_const |
352 | 5.93k | }; |
353 | 5.93k | } Unexecuted instantiation: fuzzer_dhcpv6.c:_fr_dbuff_init Unexecuted instantiation: fuzzer_util.c:_fr_dbuff_init Unexecuted instantiation: fuzzer_dhcpv4.c:_fr_dbuff_init Unexecuted instantiation: fuzzer_cbor.c:_fr_dbuff_init Unexecuted instantiation: fuzzer_der.c:_fr_dbuff_init Unexecuted instantiation: fuzzer_dns.c:_fr_dbuff_init Unexecuted instantiation: fuzzer_tacacs.c:_fr_dbuff_init Unexecuted instantiation: fuzzer_bfd.c:_fr_dbuff_init Unexecuted instantiation: fuzzer_radius.c:_fr_dbuff_init Unexecuted instantiation: fuzzer_tftp.c:_fr_dbuff_init Unexecuted instantiation: fuzzer_vmps.c:_fr_dbuff_init Unexecuted instantiation: base16.c:_fr_dbuff_init Unexecuted instantiation: base32.c:_fr_dbuff_init Unexecuted instantiation: base64.c:_fr_dbuff_init Unexecuted instantiation: calc.c:_fr_dbuff_init Unexecuted instantiation: cbor.c:_fr_dbuff_init Unexecuted instantiation: dbuff.c:_fr_dbuff_init Unexecuted instantiation: dict_ext.c:_fr_dbuff_init Unexecuted instantiation: dict_fixup.c:_fr_dbuff_init Unexecuted instantiation: dict_print.c:_fr_dbuff_init Unexecuted instantiation: dict_test.c:_fr_dbuff_init Unexecuted instantiation: dict_tokenize.c:_fr_dbuff_init Unexecuted instantiation: dict_unknown.c:_fr_dbuff_init Unexecuted instantiation: dict_util.c:_fr_dbuff_init Unexecuted instantiation: dict_validate.c:_fr_dbuff_init Unexecuted instantiation: dl.c:_fr_dbuff_init Unexecuted instantiation: dns.c:_fr_dbuff_init Unexecuted instantiation: edit.c:_fr_dbuff_init Unexecuted instantiation: encode.c:_fr_dbuff_init Unexecuted instantiation: timer.c:_fr_dbuff_init Unexecuted instantiation: file.c:_fr_dbuff_init Unexecuted instantiation: inet.c:_fr_dbuff_init Unexecuted instantiation: iovec.c:_fr_dbuff_init Unexecuted instantiation: log.c:_fr_dbuff_init Unexecuted instantiation: misc.c:_fr_dbuff_init Unexecuted instantiation: packet.c:_fr_dbuff_init Unexecuted instantiation: pair.c:_fr_dbuff_init Unexecuted instantiation: pair_inline.c:_fr_dbuff_init Unexecuted instantiation: pair_legacy.c:_fr_dbuff_init Unexecuted instantiation: pair_print.c:_fr_dbuff_init Unexecuted instantiation: pair_tokenize.c:_fr_dbuff_init Unexecuted instantiation: print.c:_fr_dbuff_init Unexecuted instantiation: proto.c:_fr_dbuff_init Unexecuted instantiation: regex.c:_fr_dbuff_init Unexecuted instantiation: socket.c:_fr_dbuff_init Unexecuted instantiation: stats.c:_fr_dbuff_init Unexecuted instantiation: struct.c:_fr_dbuff_init Unexecuted instantiation: types.c:_fr_dbuff_init Unexecuted instantiation: uri.c:_fr_dbuff_init Line | Count | Source | 343 | 76 | { | 344 | 76 | if (unlikely(end < start)) end = start; /* Could be an assert? */ | 345 | | | 346 | 76 | *out = (fr_dbuff_t){ | 347 | 76 | .buff_i = start, | 348 | 76 | .start_i = start, | 349 | 76 | .p_i = start, | 350 | 76 | .end_i = end, | 351 | 76 | .is_const = is_const | 352 | 76 | }; | 353 | 76 | } |
Unexecuted instantiation: fuzzer.c:_fr_dbuff_init Unexecuted instantiation: raw.c:_fr_dbuff_init Unexecuted instantiation: udp.c:_fr_dbuff_init Line | Count | Source | 343 | 4.53k | { | 344 | 4.53k | if (unlikely(end < start)) end = start; /* Could be an assert? */ | 345 | | | 346 | 4.53k | *out = (fr_dbuff_t){ | 347 | 4.53k | .buff_i = start, | 348 | 4.53k | .start_i = start, | 349 | 4.53k | .p_i = start, | 350 | 4.53k | .end_i = end, | 351 | 4.53k | .is_const = is_const | 352 | 4.53k | }; | 353 | 4.53k | } |
Unexecuted instantiation: encode.c:_fr_dbuff_init Unexecuted instantiation: json.c:_fr_dbuff_init Unexecuted instantiation: jpath.c:_fr_dbuff_init Unexecuted instantiation: bio.c:_fr_dbuff_init Unexecuted instantiation: cache.c:_fr_dbuff_init Unexecuted instantiation: cert.c:_fr_dbuff_init Unexecuted instantiation: conf.c:_fr_dbuff_init Unexecuted instantiation: ctx.c:_fr_dbuff_init Unexecuted instantiation: engine.c:_fr_dbuff_init Unexecuted instantiation: pairs.c:_fr_dbuff_init Unexecuted instantiation: session.c:_fr_dbuff_init Unexecuted instantiation: strerror.c:_fr_dbuff_init Unexecuted instantiation: utils.c:_fr_dbuff_init Unexecuted instantiation: verify.c:_fr_dbuff_init Unexecuted instantiation: version.c:_fr_dbuff_init Unexecuted instantiation: virtual_server.c:_fr_dbuff_init Unexecuted instantiation: list.c:_fr_dbuff_init Unexecuted instantiation: tcp.c:_fr_dbuff_init Unexecuted instantiation: abinary.c:_fr_dbuff_init Unexecuted instantiation: auth.c:_fr_dbuff_init Unexecuted instantiation: cf_file.c:_fr_dbuff_init Unexecuted instantiation: cf_parse.c:_fr_dbuff_init Unexecuted instantiation: cf_util.c:_fr_dbuff_init Unexecuted instantiation: client.c:_fr_dbuff_init Unexecuted instantiation: command.c:_fr_dbuff_init Unexecuted instantiation: connection.c:_fr_dbuff_init Unexecuted instantiation: dependency.c:_fr_dbuff_init Unexecuted instantiation: dl_module.c:_fr_dbuff_init Unexecuted instantiation: exec.c:_fr_dbuff_init Unexecuted instantiation: exec_legacy.c:_fr_dbuff_init Unexecuted instantiation: exfile.c:_fr_dbuff_init Unexecuted instantiation: global_lib.c:_fr_dbuff_init Unexecuted instantiation: main_config.c:_fr_dbuff_init Unexecuted instantiation: main_loop.c:_fr_dbuff_init Unexecuted instantiation: map.c:_fr_dbuff_init Unexecuted instantiation: map_proc.c:_fr_dbuff_init Unexecuted instantiation: module.c:_fr_dbuff_init Unexecuted instantiation: module_method.c:_fr_dbuff_init Unexecuted instantiation: module_rlm.c:_fr_dbuff_init Unexecuted instantiation: paircmp.c:_fr_dbuff_init Unexecuted instantiation: pairmove.c:_fr_dbuff_init Unexecuted instantiation: password.c:_fr_dbuff_init Unexecuted instantiation: pool.c:_fr_dbuff_init Unexecuted instantiation: request.c:_fr_dbuff_init Unexecuted instantiation: request_data.c:_fr_dbuff_init Unexecuted instantiation: snmp.c:_fr_dbuff_init Unexecuted instantiation: state.c:_fr_dbuff_init Unexecuted instantiation: tmpl_dcursor.c:_fr_dbuff_init Unexecuted instantiation: tmpl_eval.c:_fr_dbuff_init Unexecuted instantiation: tmpl_tokenize.c:_fr_dbuff_init Unexecuted instantiation: trigger.c:_fr_dbuff_init Unexecuted instantiation: trunk.c:_fr_dbuff_init Unexecuted instantiation: users_file.c:_fr_dbuff_init Unexecuted instantiation: util.c:_fr_dbuff_init Unexecuted instantiation: virtual_servers.c:_fr_dbuff_init Unexecuted instantiation: call.c:_fr_dbuff_init Unexecuted instantiation: call_env.c:_fr_dbuff_init Unexecuted instantiation: caller.c:_fr_dbuff_init Unexecuted instantiation: catch.c:_fr_dbuff_init Unexecuted instantiation: child_request.c:_fr_dbuff_init Unexecuted instantiation: compile.c:_fr_dbuff_init Unexecuted instantiation: condition.c:_fr_dbuff_init Unexecuted instantiation: detach.c:_fr_dbuff_init Unexecuted instantiation: finally.c:_fr_dbuff_init Unexecuted instantiation: foreach.c:_fr_dbuff_init Unexecuted instantiation: function.c:_fr_dbuff_init Unexecuted instantiation: group.c:_fr_dbuff_init Unexecuted instantiation: interpret.c:_fr_dbuff_init Unexecuted instantiation: interpret_synchronous.c:_fr_dbuff_init Unexecuted instantiation: io.c:_fr_dbuff_init Unexecuted instantiation: limit.c:_fr_dbuff_init Unexecuted instantiation: load_balance.c:_fr_dbuff_init Unexecuted instantiation: map_builtin.c:_fr_dbuff_init Unexecuted instantiation: parallel.c:_fr_dbuff_init Unexecuted instantiation: return.c:_fr_dbuff_init Unexecuted instantiation: subrequest.c:_fr_dbuff_init Unexecuted instantiation: switch.c:_fr_dbuff_init Unexecuted instantiation: timeout.c:_fr_dbuff_init Unexecuted instantiation: tmpl.c:_fr_dbuff_init Unexecuted instantiation: try.c:_fr_dbuff_init Unexecuted instantiation: transaction.c:_fr_dbuff_init Unexecuted instantiation: xlat.c:_fr_dbuff_init Unexecuted instantiation: xlat_alloc.c:_fr_dbuff_init Unexecuted instantiation: xlat_builtin.c:_fr_dbuff_init Unexecuted instantiation: xlat_eval.c:_fr_dbuff_init Unexecuted instantiation: xlat_expr.c:_fr_dbuff_init Unexecuted instantiation: xlat_func.c:_fr_dbuff_init Unexecuted instantiation: xlat_inst.c:_fr_dbuff_init Unexecuted instantiation: xlat_pair.c:_fr_dbuff_init Unexecuted instantiation: xlat_purify.c:_fr_dbuff_init Unexecuted instantiation: xlat_redundant.c:_fr_dbuff_init Unexecuted instantiation: xlat_tokenize.c:_fr_dbuff_init Unexecuted instantiation: app_io.c:_fr_dbuff_init Unexecuted instantiation: channel.c:_fr_dbuff_init Unexecuted instantiation: coord.c:_fr_dbuff_init Unexecuted instantiation: coord_pair.c:_fr_dbuff_init Unexecuted instantiation: master.c:_fr_dbuff_init Unexecuted instantiation: network.c:_fr_dbuff_init Unexecuted instantiation: schedule.c:_fr_dbuff_init Unexecuted instantiation: thread.c:_fr_dbuff_init Unexecuted instantiation: worker.c:_fr_dbuff_init Line | Count | Source | 343 | 1.32k | { | 344 | 1.32k | if (unlikely(end < start)) end = start; /* Could be an assert? */ | 345 | | | 346 | 1.32k | *out = (fr_dbuff_t){ | 347 | 1.32k | .buff_i = start, | 348 | 1.32k | .start_i = start, | 349 | 1.32k | .p_i = start, | 350 | 1.32k | .end_i = end, | 351 | 1.32k | .is_const = is_const | 352 | 1.32k | }; | 353 | 1.32k | } |
Unexecuted instantiation: vmps.c:_fr_dbuff_init |
354 | | |
355 | | /** Initialise an dbuff for encoding or decoding |
356 | | * |
357 | | * @param[out] _out Pointer to buffer to parse |
358 | | * @param[in] _start Start of the buffer to parse. |
359 | | * @param[in] _len_or_end Either an end pointer or the length |
360 | | * of the buffer we're decoding. |
361 | | */ |
362 | 5.93k | #define fr_dbuff_init(_out, _start, _len_or_end) \ |
363 | 5.93k | _fr_dbuff_init(_out, \ |
364 | 5.93k | (uint8_t const *)(_start), \ |
365 | 5.93k | _Generic((_len_or_end), \ |
366 | 5.93k | size_t : (uint8_t const *)(_start) + (size_t)(_len_or_end), \ |
367 | 5.93k | long : (uint8_t const *)(_start) + (size_t)(_len_or_end), \ |
368 | 5.93k | int : (uint8_t const *)(_start) + (size_t)(_len_or_end), \ |
369 | 5.93k | unsigned int : (uint8_t const *)(_start) + (size_t)(_len_or_end), \ |
370 | 5.93k | uint8_t * : (uint8_t const *)(_len_or_end), \ |
371 | 5.93k | uint8_t const * : (uint8_t const *)(_len_or_end), \ |
372 | 5.93k | char * : (uint8_t const *)(_len_or_end), \ |
373 | 5.93k | char const * : (uint8_t const *)(_len_or_end) \ |
374 | 5.93k | ), \ |
375 | 5.93k | _Generic((_start), \ |
376 | 5.93k | uint8_t * : false, \ |
377 | 5.93k | uint8_t const * : true, \ |
378 | 5.93k | char * : false, \ |
379 | 5.93k | char const * : true \ |
380 | 5.93k | )) |
381 | | #if defined(__GNUC__) && __GNUC__ >= 11 |
382 | | DIAG_ON(maybe-uninitialized) |
383 | | #endif |
384 | | |
385 | 0 | #define FR_DBUFF_INIT(_out, _start, _len_or_end) do { \ |
386 | 0 | fr_dbuff_init(_out, _start, _len_or_end); \ |
387 | 0 | *(unsigned char *) _start = '\0'; \ |
388 | 0 | } while (0) |
389 | | |
390 | | size_t _fr_dbuff_extend_talloc(fr_dbuff_t *dbuff, size_t extension); |
391 | | |
392 | | int fr_dbuff_trim_talloc(fr_dbuff_t *dbuff, size_t len); |
393 | | |
394 | | int fr_dbuff_reset_talloc(fr_dbuff_t *dbuff); |
395 | | |
396 | | /** Talloc extension structure use by #fr_dbuff_init_talloc |
397 | | * @private |
398 | | * |
399 | | * Holds the data necessary for creating dynamically |
400 | | * extensible buffers. |
401 | | */ |
402 | | typedef struct { |
403 | | TALLOC_CTX *ctx; //!< Context to alloc new buffers in. |
404 | | size_t init; //!< How much to allocate initially. |
405 | | size_t max; //!< Maximum size of the buffer. |
406 | | } fr_dbuff_uctx_talloc_t; |
407 | | |
408 | | /** Initialise a special dbuff which automatically extends as additional data is written |
409 | | * |
410 | | * @param[in] ctx to allocate buffer in. |
411 | | * @param[out] dbuff to initialise. |
412 | | * @param[out] tctx to initialise. Must have a lifetime >= to the dbuff. |
413 | | * @param[in] init The length of the initial buffer. |
414 | | * @param[in] max The maximum length of the buffer. |
415 | | * @return |
416 | | * - The passed dbuff on success. |
417 | | * - NULL on failure. |
418 | | */ |
419 | | static inline fr_dbuff_t *fr_dbuff_init_talloc(TALLOC_CTX *ctx, |
420 | | fr_dbuff_t *dbuff, fr_dbuff_uctx_talloc_t *tctx, |
421 | | size_t init, size_t max) |
422 | 0 | { |
423 | 0 | uint8_t *buff; |
424 | |
|
425 | 0 | *tctx = (fr_dbuff_uctx_talloc_t){ |
426 | 0 | .ctx = ctx, |
427 | 0 | .init = init, |
428 | 0 | .max = max |
429 | 0 | }; |
430 | | |
431 | | /* |
432 | | * Allocate the initial buffer |
433 | | * |
434 | | * We always allocate a buffer so we don't trigger ubsan |
435 | | * errors by performing arithmetic on NULL pointers. |
436 | | * |
437 | | * Note that unlike sbuffs, we don't need space for a trailing '\0'. |
438 | | */ |
439 | 0 | buff = talloc_zero_array(ctx, uint8_t, init); |
440 | 0 | if (!buff) { |
441 | 0 | fr_strerror_printf("Failed allocating buffer of %zu bytes", init); |
442 | 0 | memset(dbuff, 0, sizeof(*dbuff)); /* clang scan */ |
443 | 0 | return NULL; |
444 | 0 | } |
445 | | |
446 | 0 | *dbuff = (fr_dbuff_t){ |
447 | 0 | .buff = buff, |
448 | 0 | .start = buff, |
449 | 0 | .p = buff, |
450 | 0 | .end = buff + init, |
451 | 0 | .extend = _fr_dbuff_extend_talloc, |
452 | 0 | .uctx = tctx |
453 | 0 | }; |
454 | |
|
455 | 0 | return dbuff; |
456 | 0 | } Unexecuted instantiation: fuzzer_dhcpv6.c:fr_dbuff_init_talloc Unexecuted instantiation: fuzzer_util.c:fr_dbuff_init_talloc Unexecuted instantiation: fuzzer_dhcpv4.c:fr_dbuff_init_talloc Unexecuted instantiation: fuzzer_cbor.c:fr_dbuff_init_talloc Unexecuted instantiation: fuzzer_der.c:fr_dbuff_init_talloc Unexecuted instantiation: fuzzer_dns.c:fr_dbuff_init_talloc Unexecuted instantiation: fuzzer_tacacs.c:fr_dbuff_init_talloc Unexecuted instantiation: fuzzer_bfd.c:fr_dbuff_init_talloc Unexecuted instantiation: fuzzer_radius.c:fr_dbuff_init_talloc Unexecuted instantiation: fuzzer_tftp.c:fr_dbuff_init_talloc Unexecuted instantiation: fuzzer_vmps.c:fr_dbuff_init_talloc Unexecuted instantiation: base16.c:fr_dbuff_init_talloc Unexecuted instantiation: base32.c:fr_dbuff_init_talloc Unexecuted instantiation: base64.c:fr_dbuff_init_talloc Unexecuted instantiation: calc.c:fr_dbuff_init_talloc Unexecuted instantiation: cbor.c:fr_dbuff_init_talloc Unexecuted instantiation: dbuff.c:fr_dbuff_init_talloc Unexecuted instantiation: decode.c:fr_dbuff_init_talloc Unexecuted instantiation: dict_ext.c:fr_dbuff_init_talloc Unexecuted instantiation: dict_fixup.c:fr_dbuff_init_talloc Unexecuted instantiation: dict_print.c:fr_dbuff_init_talloc Unexecuted instantiation: dict_test.c:fr_dbuff_init_talloc Unexecuted instantiation: dict_tokenize.c:fr_dbuff_init_talloc Unexecuted instantiation: dict_unknown.c:fr_dbuff_init_talloc Unexecuted instantiation: dict_util.c:fr_dbuff_init_talloc Unexecuted instantiation: dict_validate.c:fr_dbuff_init_talloc Unexecuted instantiation: dl.c:fr_dbuff_init_talloc Unexecuted instantiation: dns.c:fr_dbuff_init_talloc Unexecuted instantiation: edit.c:fr_dbuff_init_talloc Unexecuted instantiation: encode.c:fr_dbuff_init_talloc Unexecuted instantiation: timer.c:fr_dbuff_init_talloc Unexecuted instantiation: file.c:fr_dbuff_init_talloc Unexecuted instantiation: inet.c:fr_dbuff_init_talloc Unexecuted instantiation: iovec.c:fr_dbuff_init_talloc Unexecuted instantiation: log.c:fr_dbuff_init_talloc Unexecuted instantiation: misc.c:fr_dbuff_init_talloc Unexecuted instantiation: packet.c:fr_dbuff_init_talloc Unexecuted instantiation: pair.c:fr_dbuff_init_talloc Unexecuted instantiation: pair_inline.c:fr_dbuff_init_talloc Unexecuted instantiation: pair_legacy.c:fr_dbuff_init_talloc Unexecuted instantiation: pair_print.c:fr_dbuff_init_talloc Unexecuted instantiation: pair_tokenize.c:fr_dbuff_init_talloc Unexecuted instantiation: print.c:fr_dbuff_init_talloc Unexecuted instantiation: proto.c:fr_dbuff_init_talloc Unexecuted instantiation: regex.c:fr_dbuff_init_talloc Unexecuted instantiation: socket.c:fr_dbuff_init_talloc Unexecuted instantiation: stats.c:fr_dbuff_init_talloc Unexecuted instantiation: struct.c:fr_dbuff_init_talloc Unexecuted instantiation: types.c:fr_dbuff_init_talloc Unexecuted instantiation: uri.c:fr_dbuff_init_talloc Unexecuted instantiation: value.c:fr_dbuff_init_talloc Unexecuted instantiation: fuzzer.c:fr_dbuff_init_talloc Unexecuted instantiation: base.c:fr_dbuff_init_talloc Unexecuted instantiation: raw.c:fr_dbuff_init_talloc Unexecuted instantiation: udp.c:fr_dbuff_init_talloc Unexecuted instantiation: json.c:fr_dbuff_init_talloc Unexecuted instantiation: jpath.c:fr_dbuff_init_talloc Unexecuted instantiation: bio.c:fr_dbuff_init_talloc Unexecuted instantiation: cache.c:fr_dbuff_init_talloc Unexecuted instantiation: cert.c:fr_dbuff_init_talloc Unexecuted instantiation: conf.c:fr_dbuff_init_talloc Unexecuted instantiation: ctx.c:fr_dbuff_init_talloc Unexecuted instantiation: engine.c:fr_dbuff_init_talloc Unexecuted instantiation: pairs.c:fr_dbuff_init_talloc Unexecuted instantiation: session.c:fr_dbuff_init_talloc Unexecuted instantiation: strerror.c:fr_dbuff_init_talloc Unexecuted instantiation: utils.c:fr_dbuff_init_talloc Unexecuted instantiation: verify.c:fr_dbuff_init_talloc Unexecuted instantiation: version.c:fr_dbuff_init_talloc Unexecuted instantiation: virtual_server.c:fr_dbuff_init_talloc Unexecuted instantiation: list.c:fr_dbuff_init_talloc Unexecuted instantiation: tcp.c:fr_dbuff_init_talloc Unexecuted instantiation: abinary.c:fr_dbuff_init_talloc Unexecuted instantiation: auth.c:fr_dbuff_init_talloc Unexecuted instantiation: cf_file.c:fr_dbuff_init_talloc Unexecuted instantiation: cf_parse.c:fr_dbuff_init_talloc Unexecuted instantiation: cf_util.c:fr_dbuff_init_talloc Unexecuted instantiation: client.c:fr_dbuff_init_talloc Unexecuted instantiation: command.c:fr_dbuff_init_talloc Unexecuted instantiation: connection.c:fr_dbuff_init_talloc Unexecuted instantiation: dependency.c:fr_dbuff_init_talloc Unexecuted instantiation: dl_module.c:fr_dbuff_init_talloc Unexecuted instantiation: exec.c:fr_dbuff_init_talloc Unexecuted instantiation: exec_legacy.c:fr_dbuff_init_talloc Unexecuted instantiation: exfile.c:fr_dbuff_init_talloc Unexecuted instantiation: global_lib.c:fr_dbuff_init_talloc Unexecuted instantiation: main_config.c:fr_dbuff_init_talloc Unexecuted instantiation: main_loop.c:fr_dbuff_init_talloc Unexecuted instantiation: map.c:fr_dbuff_init_talloc Unexecuted instantiation: map_proc.c:fr_dbuff_init_talloc Unexecuted instantiation: module.c:fr_dbuff_init_talloc Unexecuted instantiation: module_method.c:fr_dbuff_init_talloc Unexecuted instantiation: module_rlm.c:fr_dbuff_init_talloc Unexecuted instantiation: paircmp.c:fr_dbuff_init_talloc Unexecuted instantiation: pairmove.c:fr_dbuff_init_talloc Unexecuted instantiation: password.c:fr_dbuff_init_talloc Unexecuted instantiation: pool.c:fr_dbuff_init_talloc Unexecuted instantiation: request.c:fr_dbuff_init_talloc Unexecuted instantiation: request_data.c:fr_dbuff_init_talloc Unexecuted instantiation: snmp.c:fr_dbuff_init_talloc Unexecuted instantiation: state.c:fr_dbuff_init_talloc Unexecuted instantiation: tmpl_dcursor.c:fr_dbuff_init_talloc Unexecuted instantiation: tmpl_eval.c:fr_dbuff_init_talloc Unexecuted instantiation: tmpl_tokenize.c:fr_dbuff_init_talloc Unexecuted instantiation: trigger.c:fr_dbuff_init_talloc Unexecuted instantiation: trunk.c:fr_dbuff_init_talloc Unexecuted instantiation: users_file.c:fr_dbuff_init_talloc Unexecuted instantiation: util.c:fr_dbuff_init_talloc Unexecuted instantiation: virtual_servers.c:fr_dbuff_init_talloc Unexecuted instantiation: call.c:fr_dbuff_init_talloc Unexecuted instantiation: call_env.c:fr_dbuff_init_talloc Unexecuted instantiation: caller.c:fr_dbuff_init_talloc Unexecuted instantiation: catch.c:fr_dbuff_init_talloc Unexecuted instantiation: child_request.c:fr_dbuff_init_talloc Unexecuted instantiation: compile.c:fr_dbuff_init_talloc Unexecuted instantiation: condition.c:fr_dbuff_init_talloc Unexecuted instantiation: detach.c:fr_dbuff_init_talloc Unexecuted instantiation: finally.c:fr_dbuff_init_talloc Unexecuted instantiation: foreach.c:fr_dbuff_init_talloc Unexecuted instantiation: function.c:fr_dbuff_init_talloc Unexecuted instantiation: group.c:fr_dbuff_init_talloc Unexecuted instantiation: interpret.c:fr_dbuff_init_talloc Unexecuted instantiation: interpret_synchronous.c:fr_dbuff_init_talloc Unexecuted instantiation: io.c:fr_dbuff_init_talloc Unexecuted instantiation: limit.c:fr_dbuff_init_talloc Unexecuted instantiation: load_balance.c:fr_dbuff_init_talloc Unexecuted instantiation: map_builtin.c:fr_dbuff_init_talloc Unexecuted instantiation: parallel.c:fr_dbuff_init_talloc Unexecuted instantiation: return.c:fr_dbuff_init_talloc Unexecuted instantiation: subrequest.c:fr_dbuff_init_talloc Unexecuted instantiation: switch.c:fr_dbuff_init_talloc Unexecuted instantiation: timeout.c:fr_dbuff_init_talloc Unexecuted instantiation: tmpl.c:fr_dbuff_init_talloc Unexecuted instantiation: try.c:fr_dbuff_init_talloc Unexecuted instantiation: transaction.c:fr_dbuff_init_talloc Unexecuted instantiation: xlat.c:fr_dbuff_init_talloc Unexecuted instantiation: xlat_alloc.c:fr_dbuff_init_talloc Unexecuted instantiation: xlat_builtin.c:fr_dbuff_init_talloc Unexecuted instantiation: xlat_eval.c:fr_dbuff_init_talloc Unexecuted instantiation: xlat_expr.c:fr_dbuff_init_talloc Unexecuted instantiation: xlat_func.c:fr_dbuff_init_talloc Unexecuted instantiation: xlat_inst.c:fr_dbuff_init_talloc Unexecuted instantiation: xlat_pair.c:fr_dbuff_init_talloc Unexecuted instantiation: xlat_purify.c:fr_dbuff_init_talloc Unexecuted instantiation: xlat_redundant.c:fr_dbuff_init_talloc Unexecuted instantiation: xlat_tokenize.c:fr_dbuff_init_talloc Unexecuted instantiation: app_io.c:fr_dbuff_init_talloc Unexecuted instantiation: channel.c:fr_dbuff_init_talloc Unexecuted instantiation: coord.c:fr_dbuff_init_talloc Unexecuted instantiation: coord_pair.c:fr_dbuff_init_talloc Unexecuted instantiation: master.c:fr_dbuff_init_talloc Unexecuted instantiation: network.c:fr_dbuff_init_talloc Unexecuted instantiation: schedule.c:fr_dbuff_init_talloc Unexecuted instantiation: thread.c:fr_dbuff_init_talloc Unexecuted instantiation: worker.c:fr_dbuff_init_talloc Unexecuted instantiation: vmps.c:fr_dbuff_init_talloc |
457 | | |
458 | | /** Free the talloc buffer associated with a dbuff |
459 | | * |
460 | | */ |
461 | | static inline void fr_dbuff_free_talloc(fr_dbuff_t *dbuff) |
462 | 0 | { |
463 | 0 | TALLOC_FREE(dbuff->buff); |
464 | 0 | } Unexecuted instantiation: fuzzer_dhcpv6.c:fr_dbuff_free_talloc Unexecuted instantiation: fuzzer_util.c:fr_dbuff_free_talloc Unexecuted instantiation: fuzzer_dhcpv4.c:fr_dbuff_free_talloc Unexecuted instantiation: fuzzer_cbor.c:fr_dbuff_free_talloc Unexecuted instantiation: fuzzer_der.c:fr_dbuff_free_talloc Unexecuted instantiation: fuzzer_dns.c:fr_dbuff_free_talloc Unexecuted instantiation: fuzzer_tacacs.c:fr_dbuff_free_talloc Unexecuted instantiation: fuzzer_bfd.c:fr_dbuff_free_talloc Unexecuted instantiation: fuzzer_radius.c:fr_dbuff_free_talloc Unexecuted instantiation: fuzzer_tftp.c:fr_dbuff_free_talloc Unexecuted instantiation: fuzzer_vmps.c:fr_dbuff_free_talloc Unexecuted instantiation: base16.c:fr_dbuff_free_talloc Unexecuted instantiation: base32.c:fr_dbuff_free_talloc Unexecuted instantiation: base64.c:fr_dbuff_free_talloc Unexecuted instantiation: calc.c:fr_dbuff_free_talloc Unexecuted instantiation: cbor.c:fr_dbuff_free_talloc Unexecuted instantiation: dbuff.c:fr_dbuff_free_talloc Unexecuted instantiation: decode.c:fr_dbuff_free_talloc Unexecuted instantiation: dict_ext.c:fr_dbuff_free_talloc Unexecuted instantiation: dict_fixup.c:fr_dbuff_free_talloc Unexecuted instantiation: dict_print.c:fr_dbuff_free_talloc Unexecuted instantiation: dict_test.c:fr_dbuff_free_talloc Unexecuted instantiation: dict_tokenize.c:fr_dbuff_free_talloc Unexecuted instantiation: dict_unknown.c:fr_dbuff_free_talloc Unexecuted instantiation: dict_util.c:fr_dbuff_free_talloc Unexecuted instantiation: dict_validate.c:fr_dbuff_free_talloc Unexecuted instantiation: dl.c:fr_dbuff_free_talloc Unexecuted instantiation: dns.c:fr_dbuff_free_talloc Unexecuted instantiation: edit.c:fr_dbuff_free_talloc Unexecuted instantiation: encode.c:fr_dbuff_free_talloc Unexecuted instantiation: timer.c:fr_dbuff_free_talloc Unexecuted instantiation: file.c:fr_dbuff_free_talloc Unexecuted instantiation: inet.c:fr_dbuff_free_talloc Unexecuted instantiation: iovec.c:fr_dbuff_free_talloc Unexecuted instantiation: log.c:fr_dbuff_free_talloc Unexecuted instantiation: misc.c:fr_dbuff_free_talloc Unexecuted instantiation: packet.c:fr_dbuff_free_talloc Unexecuted instantiation: pair.c:fr_dbuff_free_talloc Unexecuted instantiation: pair_inline.c:fr_dbuff_free_talloc Unexecuted instantiation: pair_legacy.c:fr_dbuff_free_talloc Unexecuted instantiation: pair_print.c:fr_dbuff_free_talloc Unexecuted instantiation: pair_tokenize.c:fr_dbuff_free_talloc Unexecuted instantiation: print.c:fr_dbuff_free_talloc Unexecuted instantiation: proto.c:fr_dbuff_free_talloc Unexecuted instantiation: regex.c:fr_dbuff_free_talloc Unexecuted instantiation: socket.c:fr_dbuff_free_talloc Unexecuted instantiation: stats.c:fr_dbuff_free_talloc Unexecuted instantiation: struct.c:fr_dbuff_free_talloc Unexecuted instantiation: types.c:fr_dbuff_free_talloc Unexecuted instantiation: uri.c:fr_dbuff_free_talloc Unexecuted instantiation: value.c:fr_dbuff_free_talloc Unexecuted instantiation: fuzzer.c:fr_dbuff_free_talloc Unexecuted instantiation: base.c:fr_dbuff_free_talloc Unexecuted instantiation: raw.c:fr_dbuff_free_talloc Unexecuted instantiation: udp.c:fr_dbuff_free_talloc Unexecuted instantiation: json.c:fr_dbuff_free_talloc Unexecuted instantiation: jpath.c:fr_dbuff_free_talloc Unexecuted instantiation: bio.c:fr_dbuff_free_talloc Unexecuted instantiation: cache.c:fr_dbuff_free_talloc Unexecuted instantiation: cert.c:fr_dbuff_free_talloc Unexecuted instantiation: conf.c:fr_dbuff_free_talloc Unexecuted instantiation: ctx.c:fr_dbuff_free_talloc Unexecuted instantiation: engine.c:fr_dbuff_free_talloc Unexecuted instantiation: pairs.c:fr_dbuff_free_talloc Unexecuted instantiation: session.c:fr_dbuff_free_talloc Unexecuted instantiation: strerror.c:fr_dbuff_free_talloc Unexecuted instantiation: utils.c:fr_dbuff_free_talloc Unexecuted instantiation: verify.c:fr_dbuff_free_talloc Unexecuted instantiation: version.c:fr_dbuff_free_talloc Unexecuted instantiation: virtual_server.c:fr_dbuff_free_talloc Unexecuted instantiation: list.c:fr_dbuff_free_talloc Unexecuted instantiation: tcp.c:fr_dbuff_free_talloc Unexecuted instantiation: abinary.c:fr_dbuff_free_talloc Unexecuted instantiation: auth.c:fr_dbuff_free_talloc Unexecuted instantiation: cf_file.c:fr_dbuff_free_talloc Unexecuted instantiation: cf_parse.c:fr_dbuff_free_talloc Unexecuted instantiation: cf_util.c:fr_dbuff_free_talloc Unexecuted instantiation: client.c:fr_dbuff_free_talloc Unexecuted instantiation: command.c:fr_dbuff_free_talloc Unexecuted instantiation: connection.c:fr_dbuff_free_talloc Unexecuted instantiation: dependency.c:fr_dbuff_free_talloc Unexecuted instantiation: dl_module.c:fr_dbuff_free_talloc Unexecuted instantiation: exec.c:fr_dbuff_free_talloc Unexecuted instantiation: exec_legacy.c:fr_dbuff_free_talloc Unexecuted instantiation: exfile.c:fr_dbuff_free_talloc Unexecuted instantiation: global_lib.c:fr_dbuff_free_talloc Unexecuted instantiation: main_config.c:fr_dbuff_free_talloc Unexecuted instantiation: main_loop.c:fr_dbuff_free_talloc Unexecuted instantiation: map.c:fr_dbuff_free_talloc Unexecuted instantiation: map_proc.c:fr_dbuff_free_talloc Unexecuted instantiation: module.c:fr_dbuff_free_talloc Unexecuted instantiation: module_method.c:fr_dbuff_free_talloc Unexecuted instantiation: module_rlm.c:fr_dbuff_free_talloc Unexecuted instantiation: paircmp.c:fr_dbuff_free_talloc Unexecuted instantiation: pairmove.c:fr_dbuff_free_talloc Unexecuted instantiation: password.c:fr_dbuff_free_talloc Unexecuted instantiation: pool.c:fr_dbuff_free_talloc Unexecuted instantiation: request.c:fr_dbuff_free_talloc Unexecuted instantiation: request_data.c:fr_dbuff_free_talloc Unexecuted instantiation: snmp.c:fr_dbuff_free_talloc Unexecuted instantiation: state.c:fr_dbuff_free_talloc Unexecuted instantiation: tmpl_dcursor.c:fr_dbuff_free_talloc Unexecuted instantiation: tmpl_eval.c:fr_dbuff_free_talloc Unexecuted instantiation: tmpl_tokenize.c:fr_dbuff_free_talloc Unexecuted instantiation: trigger.c:fr_dbuff_free_talloc Unexecuted instantiation: trunk.c:fr_dbuff_free_talloc Unexecuted instantiation: users_file.c:fr_dbuff_free_talloc Unexecuted instantiation: util.c:fr_dbuff_free_talloc Unexecuted instantiation: virtual_servers.c:fr_dbuff_free_talloc Unexecuted instantiation: call.c:fr_dbuff_free_talloc Unexecuted instantiation: call_env.c:fr_dbuff_free_talloc Unexecuted instantiation: caller.c:fr_dbuff_free_talloc Unexecuted instantiation: catch.c:fr_dbuff_free_talloc Unexecuted instantiation: child_request.c:fr_dbuff_free_talloc Unexecuted instantiation: compile.c:fr_dbuff_free_talloc Unexecuted instantiation: condition.c:fr_dbuff_free_talloc Unexecuted instantiation: detach.c:fr_dbuff_free_talloc Unexecuted instantiation: finally.c:fr_dbuff_free_talloc Unexecuted instantiation: foreach.c:fr_dbuff_free_talloc Unexecuted instantiation: function.c:fr_dbuff_free_talloc Unexecuted instantiation: group.c:fr_dbuff_free_talloc Unexecuted instantiation: interpret.c:fr_dbuff_free_talloc Unexecuted instantiation: interpret_synchronous.c:fr_dbuff_free_talloc Unexecuted instantiation: io.c:fr_dbuff_free_talloc Unexecuted instantiation: limit.c:fr_dbuff_free_talloc Unexecuted instantiation: load_balance.c:fr_dbuff_free_talloc Unexecuted instantiation: map_builtin.c:fr_dbuff_free_talloc Unexecuted instantiation: parallel.c:fr_dbuff_free_talloc Unexecuted instantiation: return.c:fr_dbuff_free_talloc Unexecuted instantiation: subrequest.c:fr_dbuff_free_talloc Unexecuted instantiation: switch.c:fr_dbuff_free_talloc Unexecuted instantiation: timeout.c:fr_dbuff_free_talloc Unexecuted instantiation: tmpl.c:fr_dbuff_free_talloc Unexecuted instantiation: try.c:fr_dbuff_free_talloc Unexecuted instantiation: transaction.c:fr_dbuff_free_talloc Unexecuted instantiation: xlat.c:fr_dbuff_free_talloc Unexecuted instantiation: xlat_alloc.c:fr_dbuff_free_talloc Unexecuted instantiation: xlat_builtin.c:fr_dbuff_free_talloc Unexecuted instantiation: xlat_eval.c:fr_dbuff_free_talloc Unexecuted instantiation: xlat_expr.c:fr_dbuff_free_talloc Unexecuted instantiation: xlat_func.c:fr_dbuff_free_talloc Unexecuted instantiation: xlat_inst.c:fr_dbuff_free_talloc Unexecuted instantiation: xlat_pair.c:fr_dbuff_free_talloc Unexecuted instantiation: xlat_purify.c:fr_dbuff_free_talloc Unexecuted instantiation: xlat_redundant.c:fr_dbuff_free_talloc Unexecuted instantiation: xlat_tokenize.c:fr_dbuff_free_talloc Unexecuted instantiation: app_io.c:fr_dbuff_free_talloc Unexecuted instantiation: channel.c:fr_dbuff_free_talloc Unexecuted instantiation: coord.c:fr_dbuff_free_talloc Unexecuted instantiation: coord_pair.c:fr_dbuff_free_talloc Unexecuted instantiation: master.c:fr_dbuff_free_talloc Unexecuted instantiation: network.c:fr_dbuff_free_talloc Unexecuted instantiation: schedule.c:fr_dbuff_free_talloc Unexecuted instantiation: thread.c:fr_dbuff_free_talloc Unexecuted instantiation: worker.c:fr_dbuff_free_talloc Unexecuted instantiation: vmps.c:fr_dbuff_free_talloc |
465 | | |
466 | | size_t _fr_dbuff_extend_fd(fr_dbuff_t *dbuff, size_t extension); |
467 | | |
468 | | /** File sbuff extension structure use by #fr_dbuff_init_fd |
469 | | * @private |
470 | | * |
471 | | * Holds the data necessary for creating dynamically |
472 | | * extensible file buffers. |
473 | | */ |
474 | | typedef struct { |
475 | | int fd; //!< fd of file we're reading from. |
476 | | uint8_t *buff_end; //!< The true end of the buffer. |
477 | | size_t max; //!< Maximum number of bytes to read. |
478 | | } fr_dbuff_uctx_fd_t; |
479 | | |
480 | | |
481 | | /** Initialise a special dbuff which automatically reads in more data as the buffer is exhausted |
482 | | * |
483 | | * @param[out] dbuff to initialise. |
484 | | * @param[out] fctx to initialise. Must have a lifetime >= to the dbuff. |
485 | | * @param[in] buff Temporary buffer to use for storing file contents. |
486 | | * @param[in] len Length of the temporary buffer. |
487 | | * @param[in] fd descriptor of an open file to read from. |
488 | | * @param[in] max The maximum length of data to read from the file. |
489 | | * @return |
490 | | * - The passed dbuff on success. |
491 | | * - NULL on failure. |
492 | | */ |
493 | | static inline fr_dbuff_t *fr_dbuff_init_fd(fr_dbuff_t *dbuff, fr_dbuff_uctx_fd_t *fctx, |
494 | | uint8_t *buff, size_t len, int fd, size_t max) |
495 | 0 | { |
496 | 0 | *fctx = (fr_dbuff_uctx_fd_t){ |
497 | 0 | .fd = fd, |
498 | 0 | .max = max, |
499 | 0 | .buff_end = buff + len //!< Store the real end |
500 | 0 | }; |
501 | 0 |
|
502 | 0 | *dbuff = (fr_dbuff_t){ |
503 | 0 | .buff = buff, |
504 | 0 | .start = buff, |
505 | 0 | .p = buff, |
506 | 0 | .end = buff, //!< Starts with 0 bytes available |
507 | 0 | .extend = _fr_dbuff_extend_fd, |
508 | 0 | .uctx = fctx |
509 | 0 | }; |
510 | 0 |
|
511 | 0 | return dbuff; |
512 | 0 | } Unexecuted instantiation: fuzzer_dhcpv6.c:fr_dbuff_init_fd Unexecuted instantiation: fuzzer_util.c:fr_dbuff_init_fd Unexecuted instantiation: fuzzer_dhcpv4.c:fr_dbuff_init_fd Unexecuted instantiation: fuzzer_cbor.c:fr_dbuff_init_fd Unexecuted instantiation: fuzzer_der.c:fr_dbuff_init_fd Unexecuted instantiation: fuzzer_dns.c:fr_dbuff_init_fd Unexecuted instantiation: fuzzer_tacacs.c:fr_dbuff_init_fd Unexecuted instantiation: fuzzer_bfd.c:fr_dbuff_init_fd Unexecuted instantiation: fuzzer_radius.c:fr_dbuff_init_fd Unexecuted instantiation: fuzzer_tftp.c:fr_dbuff_init_fd Unexecuted instantiation: fuzzer_vmps.c:fr_dbuff_init_fd Unexecuted instantiation: base16.c:fr_dbuff_init_fd Unexecuted instantiation: base32.c:fr_dbuff_init_fd Unexecuted instantiation: base64.c:fr_dbuff_init_fd Unexecuted instantiation: calc.c:fr_dbuff_init_fd Unexecuted instantiation: cbor.c:fr_dbuff_init_fd Unexecuted instantiation: dbuff.c:fr_dbuff_init_fd Unexecuted instantiation: decode.c:fr_dbuff_init_fd Unexecuted instantiation: dict_ext.c:fr_dbuff_init_fd Unexecuted instantiation: dict_fixup.c:fr_dbuff_init_fd Unexecuted instantiation: dict_print.c:fr_dbuff_init_fd Unexecuted instantiation: dict_test.c:fr_dbuff_init_fd Unexecuted instantiation: dict_tokenize.c:fr_dbuff_init_fd Unexecuted instantiation: dict_unknown.c:fr_dbuff_init_fd Unexecuted instantiation: dict_util.c:fr_dbuff_init_fd Unexecuted instantiation: dict_validate.c:fr_dbuff_init_fd Unexecuted instantiation: dl.c:fr_dbuff_init_fd Unexecuted instantiation: dns.c:fr_dbuff_init_fd Unexecuted instantiation: edit.c:fr_dbuff_init_fd Unexecuted instantiation: encode.c:fr_dbuff_init_fd Unexecuted instantiation: timer.c:fr_dbuff_init_fd Unexecuted instantiation: file.c:fr_dbuff_init_fd Unexecuted instantiation: inet.c:fr_dbuff_init_fd Unexecuted instantiation: iovec.c:fr_dbuff_init_fd Unexecuted instantiation: log.c:fr_dbuff_init_fd Unexecuted instantiation: misc.c:fr_dbuff_init_fd Unexecuted instantiation: packet.c:fr_dbuff_init_fd Unexecuted instantiation: pair.c:fr_dbuff_init_fd Unexecuted instantiation: pair_inline.c:fr_dbuff_init_fd Unexecuted instantiation: pair_legacy.c:fr_dbuff_init_fd Unexecuted instantiation: pair_print.c:fr_dbuff_init_fd Unexecuted instantiation: pair_tokenize.c:fr_dbuff_init_fd Unexecuted instantiation: print.c:fr_dbuff_init_fd Unexecuted instantiation: proto.c:fr_dbuff_init_fd Unexecuted instantiation: regex.c:fr_dbuff_init_fd Unexecuted instantiation: socket.c:fr_dbuff_init_fd Unexecuted instantiation: stats.c:fr_dbuff_init_fd Unexecuted instantiation: struct.c:fr_dbuff_init_fd Unexecuted instantiation: types.c:fr_dbuff_init_fd Unexecuted instantiation: uri.c:fr_dbuff_init_fd Unexecuted instantiation: value.c:fr_dbuff_init_fd Unexecuted instantiation: fuzzer.c:fr_dbuff_init_fd Unexecuted instantiation: base.c:fr_dbuff_init_fd Unexecuted instantiation: raw.c:fr_dbuff_init_fd Unexecuted instantiation: udp.c:fr_dbuff_init_fd Unexecuted instantiation: json.c:fr_dbuff_init_fd Unexecuted instantiation: jpath.c:fr_dbuff_init_fd Unexecuted instantiation: bio.c:fr_dbuff_init_fd Unexecuted instantiation: cache.c:fr_dbuff_init_fd Unexecuted instantiation: cert.c:fr_dbuff_init_fd Unexecuted instantiation: conf.c:fr_dbuff_init_fd Unexecuted instantiation: ctx.c:fr_dbuff_init_fd Unexecuted instantiation: engine.c:fr_dbuff_init_fd Unexecuted instantiation: pairs.c:fr_dbuff_init_fd Unexecuted instantiation: session.c:fr_dbuff_init_fd Unexecuted instantiation: strerror.c:fr_dbuff_init_fd Unexecuted instantiation: utils.c:fr_dbuff_init_fd Unexecuted instantiation: verify.c:fr_dbuff_init_fd Unexecuted instantiation: version.c:fr_dbuff_init_fd Unexecuted instantiation: virtual_server.c:fr_dbuff_init_fd Unexecuted instantiation: list.c:fr_dbuff_init_fd Unexecuted instantiation: tcp.c:fr_dbuff_init_fd Unexecuted instantiation: abinary.c:fr_dbuff_init_fd Unexecuted instantiation: auth.c:fr_dbuff_init_fd Unexecuted instantiation: cf_file.c:fr_dbuff_init_fd Unexecuted instantiation: cf_parse.c:fr_dbuff_init_fd Unexecuted instantiation: cf_util.c:fr_dbuff_init_fd Unexecuted instantiation: client.c:fr_dbuff_init_fd Unexecuted instantiation: command.c:fr_dbuff_init_fd Unexecuted instantiation: connection.c:fr_dbuff_init_fd Unexecuted instantiation: dependency.c:fr_dbuff_init_fd Unexecuted instantiation: dl_module.c:fr_dbuff_init_fd Unexecuted instantiation: exec.c:fr_dbuff_init_fd Unexecuted instantiation: exec_legacy.c:fr_dbuff_init_fd Unexecuted instantiation: exfile.c:fr_dbuff_init_fd Unexecuted instantiation: global_lib.c:fr_dbuff_init_fd Unexecuted instantiation: main_config.c:fr_dbuff_init_fd Unexecuted instantiation: main_loop.c:fr_dbuff_init_fd Unexecuted instantiation: map.c:fr_dbuff_init_fd Unexecuted instantiation: map_proc.c:fr_dbuff_init_fd Unexecuted instantiation: module.c:fr_dbuff_init_fd Unexecuted instantiation: module_method.c:fr_dbuff_init_fd Unexecuted instantiation: module_rlm.c:fr_dbuff_init_fd Unexecuted instantiation: paircmp.c:fr_dbuff_init_fd Unexecuted instantiation: pairmove.c:fr_dbuff_init_fd Unexecuted instantiation: password.c:fr_dbuff_init_fd Unexecuted instantiation: pool.c:fr_dbuff_init_fd Unexecuted instantiation: request.c:fr_dbuff_init_fd Unexecuted instantiation: request_data.c:fr_dbuff_init_fd Unexecuted instantiation: snmp.c:fr_dbuff_init_fd Unexecuted instantiation: state.c:fr_dbuff_init_fd Unexecuted instantiation: tmpl_dcursor.c:fr_dbuff_init_fd Unexecuted instantiation: tmpl_eval.c:fr_dbuff_init_fd Unexecuted instantiation: tmpl_tokenize.c:fr_dbuff_init_fd Unexecuted instantiation: trigger.c:fr_dbuff_init_fd Unexecuted instantiation: trunk.c:fr_dbuff_init_fd Unexecuted instantiation: users_file.c:fr_dbuff_init_fd Unexecuted instantiation: util.c:fr_dbuff_init_fd Unexecuted instantiation: virtual_servers.c:fr_dbuff_init_fd Unexecuted instantiation: call.c:fr_dbuff_init_fd Unexecuted instantiation: call_env.c:fr_dbuff_init_fd Unexecuted instantiation: caller.c:fr_dbuff_init_fd Unexecuted instantiation: catch.c:fr_dbuff_init_fd Unexecuted instantiation: child_request.c:fr_dbuff_init_fd Unexecuted instantiation: compile.c:fr_dbuff_init_fd Unexecuted instantiation: condition.c:fr_dbuff_init_fd Unexecuted instantiation: detach.c:fr_dbuff_init_fd Unexecuted instantiation: finally.c:fr_dbuff_init_fd Unexecuted instantiation: foreach.c:fr_dbuff_init_fd Unexecuted instantiation: function.c:fr_dbuff_init_fd Unexecuted instantiation: group.c:fr_dbuff_init_fd Unexecuted instantiation: interpret.c:fr_dbuff_init_fd Unexecuted instantiation: interpret_synchronous.c:fr_dbuff_init_fd Unexecuted instantiation: io.c:fr_dbuff_init_fd Unexecuted instantiation: limit.c:fr_dbuff_init_fd Unexecuted instantiation: load_balance.c:fr_dbuff_init_fd Unexecuted instantiation: map_builtin.c:fr_dbuff_init_fd Unexecuted instantiation: parallel.c:fr_dbuff_init_fd Unexecuted instantiation: return.c:fr_dbuff_init_fd Unexecuted instantiation: subrequest.c:fr_dbuff_init_fd Unexecuted instantiation: switch.c:fr_dbuff_init_fd Unexecuted instantiation: timeout.c:fr_dbuff_init_fd Unexecuted instantiation: tmpl.c:fr_dbuff_init_fd Unexecuted instantiation: try.c:fr_dbuff_init_fd Unexecuted instantiation: transaction.c:fr_dbuff_init_fd Unexecuted instantiation: xlat.c:fr_dbuff_init_fd Unexecuted instantiation: xlat_alloc.c:fr_dbuff_init_fd Unexecuted instantiation: xlat_builtin.c:fr_dbuff_init_fd Unexecuted instantiation: xlat_eval.c:fr_dbuff_init_fd Unexecuted instantiation: xlat_expr.c:fr_dbuff_init_fd Unexecuted instantiation: xlat_func.c:fr_dbuff_init_fd Unexecuted instantiation: xlat_inst.c:fr_dbuff_init_fd Unexecuted instantiation: xlat_pair.c:fr_dbuff_init_fd Unexecuted instantiation: xlat_purify.c:fr_dbuff_init_fd Unexecuted instantiation: xlat_redundant.c:fr_dbuff_init_fd Unexecuted instantiation: xlat_tokenize.c:fr_dbuff_init_fd Unexecuted instantiation: app_io.c:fr_dbuff_init_fd Unexecuted instantiation: channel.c:fr_dbuff_init_fd Unexecuted instantiation: coord.c:fr_dbuff_init_fd Unexecuted instantiation: coord_pair.c:fr_dbuff_init_fd Unexecuted instantiation: master.c:fr_dbuff_init_fd Unexecuted instantiation: network.c:fr_dbuff_init_fd Unexecuted instantiation: schedule.c:fr_dbuff_init_fd Unexecuted instantiation: thread.c:fr_dbuff_init_fd Unexecuted instantiation: worker.c:fr_dbuff_init_fd Unexecuted instantiation: vmps.c:fr_dbuff_init_fd |
513 | | |
514 | | /** Creates a compound literal to pass into functions which accept a dbuff |
515 | | * |
516 | | * @note The return value of the function should be used to determine how much |
517 | | * data was written to the buffer. |
518 | | * |
519 | | * @param[in] _start of the buffer. |
520 | | * @param[in] _len_or_end Length of the buffer or the end pointer. |
521 | | */ |
522 | 693k | #define FR_DBUFF_TMP(_start, _len_or_end) \ |
523 | 693k | (fr_dbuff_t){ \ |
524 | 693k | .buff_i = (uint8_t const *)(_start), \ |
525 | 693k | .start_i = (uint8_t const *)(_start), \ |
526 | 693k | .end_i = _Generic((_len_or_end), \ |
527 | 693k | size_t : (uint8_t const *)(_start) + (size_t)(_len_or_end), \ |
528 | 693k | long : (uint8_t const *)(_start) + (size_t)(_len_or_end), \ |
529 | 693k | int : (uint8_t const *)(_start) + (size_t)(_len_or_end), \ |
530 | 693k | unsigned int : (uint8_t const *)(_start) + (size_t)(_len_or_end), \ |
531 | 693k | uint8_t * : (uint8_t const *)(_len_or_end), \ |
532 | 693k | uint8_t const * : (uint8_t const *)(_len_or_end), \ |
533 | 693k | char * : (uint8_t const *)(_len_or_end), \ |
534 | 693k | char const * : (uint8_t const *)(_len_or_end) \ |
535 | 693k | ), \ |
536 | 693k | .p_i = _start, \ |
537 | 693k | .is_const = _Generic((_start), \ |
538 | 693k | uint8_t * : false, \ |
539 | 693k | uint8_t const * : true, \ |
540 | 693k | char * : false, \ |
541 | 693k | char const * : true \ |
542 | 693k | ) \ |
543 | 693k | } |
544 | | |
545 | | /** Structure to encapsulate a thread local dbuff information |
546 | | * |
547 | | */ |
548 | | typedef struct { |
549 | | fr_dbuff_t dbuff; //!< Thread local dbuff. |
550 | | fr_dbuff_uctx_talloc_t tctx; //!< Thread local tctx. |
551 | | } fr_dbuff_thread_local_t; |
552 | | |
553 | | static inline int _dbuff_thread_local_free(void *dbtl) |
554 | 0 | { |
555 | 0 | return talloc_free(dbtl); |
556 | 0 | } Unexecuted instantiation: fuzzer_dhcpv6.c:_dbuff_thread_local_free Unexecuted instantiation: fuzzer_util.c:_dbuff_thread_local_free Unexecuted instantiation: fuzzer_dhcpv4.c:_dbuff_thread_local_free Unexecuted instantiation: fuzzer_cbor.c:_dbuff_thread_local_free Unexecuted instantiation: fuzzer_der.c:_dbuff_thread_local_free Unexecuted instantiation: fuzzer_dns.c:_dbuff_thread_local_free Unexecuted instantiation: fuzzer_tacacs.c:_dbuff_thread_local_free Unexecuted instantiation: fuzzer_bfd.c:_dbuff_thread_local_free Unexecuted instantiation: fuzzer_radius.c:_dbuff_thread_local_free Unexecuted instantiation: fuzzer_tftp.c:_dbuff_thread_local_free Unexecuted instantiation: fuzzer_vmps.c:_dbuff_thread_local_free Unexecuted instantiation: base16.c:_dbuff_thread_local_free Unexecuted instantiation: base32.c:_dbuff_thread_local_free Unexecuted instantiation: base64.c:_dbuff_thread_local_free Unexecuted instantiation: calc.c:_dbuff_thread_local_free Unexecuted instantiation: cbor.c:_dbuff_thread_local_free Unexecuted instantiation: dbuff.c:_dbuff_thread_local_free Unexecuted instantiation: decode.c:_dbuff_thread_local_free Unexecuted instantiation: dict_ext.c:_dbuff_thread_local_free Unexecuted instantiation: dict_fixup.c:_dbuff_thread_local_free Unexecuted instantiation: dict_print.c:_dbuff_thread_local_free Unexecuted instantiation: dict_test.c:_dbuff_thread_local_free Unexecuted instantiation: dict_tokenize.c:_dbuff_thread_local_free Unexecuted instantiation: dict_unknown.c:_dbuff_thread_local_free Unexecuted instantiation: dict_util.c:_dbuff_thread_local_free Unexecuted instantiation: dict_validate.c:_dbuff_thread_local_free Unexecuted instantiation: dl.c:_dbuff_thread_local_free Unexecuted instantiation: dns.c:_dbuff_thread_local_free Unexecuted instantiation: edit.c:_dbuff_thread_local_free Unexecuted instantiation: encode.c:_dbuff_thread_local_free Unexecuted instantiation: timer.c:_dbuff_thread_local_free Unexecuted instantiation: file.c:_dbuff_thread_local_free Unexecuted instantiation: inet.c:_dbuff_thread_local_free Unexecuted instantiation: iovec.c:_dbuff_thread_local_free Unexecuted instantiation: log.c:_dbuff_thread_local_free Unexecuted instantiation: misc.c:_dbuff_thread_local_free Unexecuted instantiation: packet.c:_dbuff_thread_local_free Unexecuted instantiation: pair.c:_dbuff_thread_local_free Unexecuted instantiation: pair_inline.c:_dbuff_thread_local_free Unexecuted instantiation: pair_legacy.c:_dbuff_thread_local_free Unexecuted instantiation: pair_print.c:_dbuff_thread_local_free Unexecuted instantiation: pair_tokenize.c:_dbuff_thread_local_free Unexecuted instantiation: print.c:_dbuff_thread_local_free Unexecuted instantiation: proto.c:_dbuff_thread_local_free Unexecuted instantiation: regex.c:_dbuff_thread_local_free Unexecuted instantiation: socket.c:_dbuff_thread_local_free Unexecuted instantiation: stats.c:_dbuff_thread_local_free Unexecuted instantiation: struct.c:_dbuff_thread_local_free Unexecuted instantiation: types.c:_dbuff_thread_local_free Unexecuted instantiation: uri.c:_dbuff_thread_local_free Unexecuted instantiation: value.c:_dbuff_thread_local_free Unexecuted instantiation: fuzzer.c:_dbuff_thread_local_free Unexecuted instantiation: base.c:_dbuff_thread_local_free Unexecuted instantiation: raw.c:_dbuff_thread_local_free Unexecuted instantiation: udp.c:_dbuff_thread_local_free Unexecuted instantiation: json.c:_dbuff_thread_local_free Unexecuted instantiation: jpath.c:_dbuff_thread_local_free Unexecuted instantiation: bio.c:_dbuff_thread_local_free Unexecuted instantiation: cache.c:_dbuff_thread_local_free Unexecuted instantiation: cert.c:_dbuff_thread_local_free Unexecuted instantiation: conf.c:_dbuff_thread_local_free Unexecuted instantiation: ctx.c:_dbuff_thread_local_free Unexecuted instantiation: engine.c:_dbuff_thread_local_free Unexecuted instantiation: pairs.c:_dbuff_thread_local_free Unexecuted instantiation: session.c:_dbuff_thread_local_free Unexecuted instantiation: strerror.c:_dbuff_thread_local_free Unexecuted instantiation: utils.c:_dbuff_thread_local_free Unexecuted instantiation: verify.c:_dbuff_thread_local_free Unexecuted instantiation: version.c:_dbuff_thread_local_free Unexecuted instantiation: virtual_server.c:_dbuff_thread_local_free Unexecuted instantiation: list.c:_dbuff_thread_local_free Unexecuted instantiation: tcp.c:_dbuff_thread_local_free Unexecuted instantiation: abinary.c:_dbuff_thread_local_free Unexecuted instantiation: auth.c:_dbuff_thread_local_free Unexecuted instantiation: cf_file.c:_dbuff_thread_local_free Unexecuted instantiation: cf_parse.c:_dbuff_thread_local_free Unexecuted instantiation: cf_util.c:_dbuff_thread_local_free Unexecuted instantiation: client.c:_dbuff_thread_local_free Unexecuted instantiation: command.c:_dbuff_thread_local_free Unexecuted instantiation: connection.c:_dbuff_thread_local_free Unexecuted instantiation: dependency.c:_dbuff_thread_local_free Unexecuted instantiation: dl_module.c:_dbuff_thread_local_free Unexecuted instantiation: exec.c:_dbuff_thread_local_free Unexecuted instantiation: exec_legacy.c:_dbuff_thread_local_free Unexecuted instantiation: exfile.c:_dbuff_thread_local_free Unexecuted instantiation: global_lib.c:_dbuff_thread_local_free Unexecuted instantiation: main_config.c:_dbuff_thread_local_free Unexecuted instantiation: main_loop.c:_dbuff_thread_local_free Unexecuted instantiation: map.c:_dbuff_thread_local_free Unexecuted instantiation: map_proc.c:_dbuff_thread_local_free Unexecuted instantiation: module.c:_dbuff_thread_local_free Unexecuted instantiation: module_method.c:_dbuff_thread_local_free Unexecuted instantiation: module_rlm.c:_dbuff_thread_local_free Unexecuted instantiation: paircmp.c:_dbuff_thread_local_free Unexecuted instantiation: pairmove.c:_dbuff_thread_local_free Unexecuted instantiation: password.c:_dbuff_thread_local_free Unexecuted instantiation: pool.c:_dbuff_thread_local_free Unexecuted instantiation: request.c:_dbuff_thread_local_free Unexecuted instantiation: request_data.c:_dbuff_thread_local_free Unexecuted instantiation: snmp.c:_dbuff_thread_local_free Unexecuted instantiation: state.c:_dbuff_thread_local_free Unexecuted instantiation: tmpl_dcursor.c:_dbuff_thread_local_free Unexecuted instantiation: tmpl_eval.c:_dbuff_thread_local_free Unexecuted instantiation: tmpl_tokenize.c:_dbuff_thread_local_free Unexecuted instantiation: trigger.c:_dbuff_thread_local_free Unexecuted instantiation: trunk.c:_dbuff_thread_local_free Unexecuted instantiation: users_file.c:_dbuff_thread_local_free Unexecuted instantiation: util.c:_dbuff_thread_local_free Unexecuted instantiation: virtual_servers.c:_dbuff_thread_local_free Unexecuted instantiation: call.c:_dbuff_thread_local_free Unexecuted instantiation: call_env.c:_dbuff_thread_local_free Unexecuted instantiation: caller.c:_dbuff_thread_local_free Unexecuted instantiation: catch.c:_dbuff_thread_local_free Unexecuted instantiation: child_request.c:_dbuff_thread_local_free Unexecuted instantiation: compile.c:_dbuff_thread_local_free Unexecuted instantiation: condition.c:_dbuff_thread_local_free Unexecuted instantiation: detach.c:_dbuff_thread_local_free Unexecuted instantiation: finally.c:_dbuff_thread_local_free Unexecuted instantiation: foreach.c:_dbuff_thread_local_free Unexecuted instantiation: function.c:_dbuff_thread_local_free Unexecuted instantiation: group.c:_dbuff_thread_local_free Unexecuted instantiation: interpret.c:_dbuff_thread_local_free Unexecuted instantiation: interpret_synchronous.c:_dbuff_thread_local_free Unexecuted instantiation: io.c:_dbuff_thread_local_free Unexecuted instantiation: limit.c:_dbuff_thread_local_free Unexecuted instantiation: load_balance.c:_dbuff_thread_local_free Unexecuted instantiation: map_builtin.c:_dbuff_thread_local_free Unexecuted instantiation: parallel.c:_dbuff_thread_local_free Unexecuted instantiation: return.c:_dbuff_thread_local_free Unexecuted instantiation: subrequest.c:_dbuff_thread_local_free Unexecuted instantiation: switch.c:_dbuff_thread_local_free Unexecuted instantiation: timeout.c:_dbuff_thread_local_free Unexecuted instantiation: tmpl.c:_dbuff_thread_local_free Unexecuted instantiation: try.c:_dbuff_thread_local_free Unexecuted instantiation: transaction.c:_dbuff_thread_local_free Unexecuted instantiation: xlat.c:_dbuff_thread_local_free Unexecuted instantiation: xlat_alloc.c:_dbuff_thread_local_free Unexecuted instantiation: xlat_builtin.c:_dbuff_thread_local_free Unexecuted instantiation: xlat_eval.c:_dbuff_thread_local_free Unexecuted instantiation: xlat_expr.c:_dbuff_thread_local_free Unexecuted instantiation: xlat_func.c:_dbuff_thread_local_free Unexecuted instantiation: xlat_inst.c:_dbuff_thread_local_free Unexecuted instantiation: xlat_pair.c:_dbuff_thread_local_free Unexecuted instantiation: xlat_purify.c:_dbuff_thread_local_free Unexecuted instantiation: xlat_redundant.c:_dbuff_thread_local_free Unexecuted instantiation: xlat_tokenize.c:_dbuff_thread_local_free Unexecuted instantiation: app_io.c:_dbuff_thread_local_free Unexecuted instantiation: channel.c:_dbuff_thread_local_free Unexecuted instantiation: coord.c:_dbuff_thread_local_free Unexecuted instantiation: coord_pair.c:_dbuff_thread_local_free Unexecuted instantiation: master.c:_dbuff_thread_local_free Unexecuted instantiation: network.c:_dbuff_thread_local_free Unexecuted instantiation: schedule.c:_dbuff_thread_local_free Unexecuted instantiation: thread.c:_dbuff_thread_local_free Unexecuted instantiation: worker.c:_dbuff_thread_local_free Unexecuted instantiation: vmps.c:_dbuff_thread_local_free |
557 | | |
558 | | /** Create a function local and thread local extensible dbuff |
559 | | * |
560 | | * @param[out] _out Where to write a pointer to the thread local dbuff |
561 | | * @param[in] _init Initial size for the dbuff buffer. |
562 | | * @param[in] _max Maximum size of the dbuff buffer. |
563 | | */ |
564 | 0 | #define FR_DBUFF_TALLOC_THREAD_LOCAL(_out, _init, _max) \ |
565 | 0 | do { \ |
566 | 0 | static _Thread_local fr_dbuff_thread_local_t *_dbuff_t_local; \ |
567 | 0 | if (!_dbuff_t_local) { \ |
568 | 0 | fr_dbuff_thread_local_t *dbtl = talloc_zero(NULL, fr_dbuff_thread_local_t); \ |
569 | 0 | fr_dbuff_init_talloc(dbtl, &dbtl->dbuff, &dbtl->tctx, _init, _max); \ |
570 | 0 | fr_atexit_thread_local(_dbuff_t_local, _dbuff_thread_local_free, dbtl); \ |
571 | 0 | *(_out) = &_dbuff_t_local->dbuff; \ |
572 | 0 | } else { \ |
573 | 0 | fr_dbuff_reset_talloc(&_dbuff_t_local->dbuff); \ |
574 | 0 | *(_out) = &_dbuff_t_local->dbuff; \ |
575 | 0 | } \ |
576 | 0 | } while (0) |
577 | | /** @} */ |
578 | | |
579 | | /** @name Extension requests |
580 | | * |
581 | | * These functions/macros may be used to request that the underlying buffer is |
582 | | * either extended to accommodate more data, or that data is shifted out of the |
583 | | * buffer, and that the buffer is refilled. |
584 | | * |
585 | | * @{ |
586 | | */ |
587 | | |
588 | | /** Flag indicating a dbuff is extendable |
589 | | */ |
590 | 0 | #define FR_DBUFF_FLAG_EXTENDABLE 0x01 |
591 | | |
592 | | /** Flag indicating that during the last extend call the dbuff was extended |
593 | | */ |
594 | | #define FR_DBUFF_FLAG_EXTENDED 0x02 |
595 | | |
596 | | /** Whether the buffer is currently extendable and whether it was extended |
597 | | */ |
598 | | typedef enum { |
599 | | /** dbuff cannot be extended |
600 | | */ |
601 | | FR_DBUFF_NOT_EXTENDABLE = 0x00, |
602 | | |
603 | | /** dbuff can be extended |
604 | | */ |
605 | | FR_DBUFF_EXTENDABLE = FR_DBUFF_FLAG_EXTENDABLE, |
606 | | |
607 | | /** dbuff was extended in the last extend call and may be extended again |
608 | | */ |
609 | | FR_DBUFF_EXTENDABLE_EXTENDED = FR_DBUFF_FLAG_EXTENDABLE | FR_DBUFF_FLAG_EXTENDED, |
610 | | |
611 | | /** dbuff was extended in the last extend call but cannot be extended again |
612 | | */ |
613 | | FR_DBUFF_EXTENDED = FR_DBUFF_FLAG_EXTENDED |
614 | | } fr_dbuff_extend_status_t; |
615 | | |
616 | | /** Check if a dbuff can be extended again |
617 | | */ |
618 | 0 | #define fr_dbuff_is_extendable(_status) ((_status) & FR_DBUFF_FLAG_EXTENDABLE) |
619 | | |
620 | | /** Check if the dbuff was extended during the last extend call |
621 | | */ |
622 | | #define fr_dbuff_was_extended(_status) ((_status) & FR_DBUFF_FLAG_EXTENDED) |
623 | | |
624 | | /** Internal function - do not call directly |
625 | | * @private |
626 | | */ |
627 | | static inline size_t _fr_dbuff_extend_lowat(fr_dbuff_extend_status_t *status, fr_dbuff_t *in, |
628 | | size_t remaining, size_t lowat) |
629 | 11.6M | { |
630 | 11.6M | size_t extended = 0; |
631 | | |
632 | 11.6M | if (status && !fr_dbuff_is_extendable(*status)) { |
633 | 6.29k | not_extendable: |
634 | 6.29k | if (status) *status = FR_DBUFF_NOT_EXTENDABLE; |
635 | 6.29k | return remaining; |
636 | 0 | } |
637 | | |
638 | 11.6M | if (remaining >= lowat) { |
639 | 11.6M | if (status) *status = FR_DBUFF_EXTENDABLE; |
640 | 11.6M | return remaining; |
641 | 11.6M | } |
642 | | |
643 | 6.29k | if (!in->extend || !(extended = in->extend(in, lowat - remaining))) goto not_extendable; |
644 | | |
645 | 0 | if (status) *status = FR_DBUFF_EXTENDABLE_EXTENDED; |
646 | |
|
647 | 0 | return remaining + extended; |
648 | 6.29k | } Unexecuted instantiation: fuzzer_dhcpv6.c:_fr_dbuff_extend_lowat Unexecuted instantiation: fuzzer_util.c:_fr_dbuff_extend_lowat Unexecuted instantiation: fuzzer_dhcpv4.c:_fr_dbuff_extend_lowat Unexecuted instantiation: fuzzer_cbor.c:_fr_dbuff_extend_lowat Unexecuted instantiation: fuzzer_der.c:_fr_dbuff_extend_lowat Unexecuted instantiation: fuzzer_dns.c:_fr_dbuff_extend_lowat Unexecuted instantiation: fuzzer_tacacs.c:_fr_dbuff_extend_lowat Unexecuted instantiation: fuzzer_bfd.c:_fr_dbuff_extend_lowat Unexecuted instantiation: fuzzer_radius.c:_fr_dbuff_extend_lowat Unexecuted instantiation: fuzzer_tftp.c:_fr_dbuff_extend_lowat Unexecuted instantiation: fuzzer_vmps.c:_fr_dbuff_extend_lowat base16.c:_fr_dbuff_extend_lowat Line | Count | Source | 629 | 1.07M | { | 630 | 1.07M | size_t extended = 0; | 631 | | | 632 | 1.07M | if (status && !fr_dbuff_is_extendable(*status)) { | 633 | 2 | not_extendable: | 634 | 2 | if (status) *status = FR_DBUFF_NOT_EXTENDABLE; | 635 | 2 | return remaining; | 636 | 0 | } | 637 | | | 638 | 1.07M | if (remaining >= lowat) { | 639 | 1.07M | if (status) *status = FR_DBUFF_EXTENDABLE; | 640 | 1.07M | return remaining; | 641 | 1.07M | } | 642 | | | 643 | 2 | if (!in->extend || !(extended = in->extend(in, lowat - remaining))) goto not_extendable; | 644 | | | 645 | 0 | if (status) *status = FR_DBUFF_EXTENDABLE_EXTENDED; | 646 | |
| 647 | 0 | return remaining + extended; | 648 | 2 | } |
Unexecuted instantiation: base32.c:_fr_dbuff_extend_lowat Unexecuted instantiation: base64.c:_fr_dbuff_extend_lowat Unexecuted instantiation: calc.c:_fr_dbuff_extend_lowat cbor.c:_fr_dbuff_extend_lowat Line | Count | Source | 629 | 301k | { | 630 | 301k | size_t extended = 0; | 631 | | | 632 | 301k | if (status && !fr_dbuff_is_extendable(*status)) { | 633 | 509 | not_extendable: | 634 | 509 | if (status) *status = FR_DBUFF_NOT_EXTENDABLE; | 635 | 509 | return remaining; | 636 | 0 | } | 637 | | | 638 | 301k | if (remaining >= lowat) { | 639 | 301k | if (status) *status = FR_DBUFF_EXTENDABLE; | 640 | 301k | return remaining; | 641 | 301k | } | 642 | | | 643 | 509 | if (!in->extend || !(extended = in->extend(in, lowat - remaining))) goto not_extendable; | 644 | | | 645 | 0 | if (status) *status = FR_DBUFF_EXTENDABLE_EXTENDED; | 646 | |
| 647 | 0 | return remaining + extended; | 648 | 509 | } |
Unexecuted instantiation: dbuff.c:_fr_dbuff_extend_lowat Unexecuted instantiation: dict_ext.c:_fr_dbuff_extend_lowat Unexecuted instantiation: dict_fixup.c:_fr_dbuff_extend_lowat Unexecuted instantiation: dict_print.c:_fr_dbuff_extend_lowat Unexecuted instantiation: dict_test.c:_fr_dbuff_extend_lowat Unexecuted instantiation: dict_tokenize.c:_fr_dbuff_extend_lowat Unexecuted instantiation: dict_unknown.c:_fr_dbuff_extend_lowat Unexecuted instantiation: dict_util.c:_fr_dbuff_extend_lowat Unexecuted instantiation: dict_validate.c:_fr_dbuff_extend_lowat Unexecuted instantiation: dl.c:_fr_dbuff_extend_lowat Unexecuted instantiation: dns.c:_fr_dbuff_extend_lowat Unexecuted instantiation: edit.c:_fr_dbuff_extend_lowat Unexecuted instantiation: encode.c:_fr_dbuff_extend_lowat Unexecuted instantiation: timer.c:_fr_dbuff_extend_lowat Unexecuted instantiation: file.c:_fr_dbuff_extend_lowat Unexecuted instantiation: inet.c:_fr_dbuff_extend_lowat Unexecuted instantiation: iovec.c:_fr_dbuff_extend_lowat Unexecuted instantiation: log.c:_fr_dbuff_extend_lowat Unexecuted instantiation: misc.c:_fr_dbuff_extend_lowat Unexecuted instantiation: packet.c:_fr_dbuff_extend_lowat Unexecuted instantiation: pair.c:_fr_dbuff_extend_lowat Unexecuted instantiation: pair_inline.c:_fr_dbuff_extend_lowat Unexecuted instantiation: pair_legacy.c:_fr_dbuff_extend_lowat Unexecuted instantiation: pair_print.c:_fr_dbuff_extend_lowat Unexecuted instantiation: pair_tokenize.c:_fr_dbuff_extend_lowat Unexecuted instantiation: print.c:_fr_dbuff_extend_lowat Unexecuted instantiation: proto.c:_fr_dbuff_extend_lowat Unexecuted instantiation: regex.c:_fr_dbuff_extend_lowat Unexecuted instantiation: socket.c:_fr_dbuff_extend_lowat Unexecuted instantiation: stats.c:_fr_dbuff_extend_lowat Unexecuted instantiation: struct.c:_fr_dbuff_extend_lowat Unexecuted instantiation: types.c:_fr_dbuff_extend_lowat Unexecuted instantiation: uri.c:_fr_dbuff_extend_lowat value.c:_fr_dbuff_extend_lowat Line | Count | Source | 629 | 672k | { | 630 | 672k | size_t extended = 0; | 631 | | | 632 | 672k | if (status && !fr_dbuff_is_extendable(*status)) { | 633 | 1.30k | not_extendable: | 634 | 1.30k | if (status) *status = FR_DBUFF_NOT_EXTENDABLE; | 635 | 1.30k | return remaining; | 636 | 0 | } | 637 | | | 638 | 672k | if (remaining >= lowat) { | 639 | 670k | if (status) *status = FR_DBUFF_EXTENDABLE; | 640 | 670k | return remaining; | 641 | 670k | } | 642 | | | 643 | 1.30k | if (!in->extend || !(extended = in->extend(in, lowat - remaining))) goto not_extendable; | 644 | | | 645 | 0 | if (status) *status = FR_DBUFF_EXTENDABLE_EXTENDED; | 646 | |
| 647 | 0 | return remaining + extended; | 648 | 1.30k | } |
Unexecuted instantiation: fuzzer.c:_fr_dbuff_extend_lowat base.c:_fr_dbuff_extend_lowat Line | Count | Source | 629 | 63.4k | { | 630 | 63.4k | size_t extended = 0; | 631 | | | 632 | 63.4k | if (status && !fr_dbuff_is_extendable(*status)) { | 633 | 677 | not_extendable: | 634 | 677 | if (status) *status = FR_DBUFF_NOT_EXTENDABLE; | 635 | 677 | return remaining; | 636 | 0 | } | 637 | | | 638 | 63.4k | if (remaining >= lowat) { | 639 | 62.8k | if (status) *status = FR_DBUFF_EXTENDABLE; | 640 | 62.8k | return remaining; | 641 | 62.8k | } | 642 | | | 643 | 677 | if (!in->extend || !(extended = in->extend(in, lowat - remaining))) goto not_extendable; | 644 | | | 645 | 0 | if (status) *status = FR_DBUFF_EXTENDABLE_EXTENDED; | 646 | |
| 647 | 0 | return remaining + extended; | 648 | 677 | } |
Unexecuted instantiation: raw.c:_fr_dbuff_extend_lowat Unexecuted instantiation: udp.c:_fr_dbuff_extend_lowat decode.c:_fr_dbuff_extend_lowat Line | Count | Source | 629 | 9.59M | { | 630 | 9.59M | size_t extended = 0; | 631 | | | 632 | 9.59M | if (status && !fr_dbuff_is_extendable(*status)) { | 633 | 3.79k | not_extendable: | 634 | 3.79k | if (status) *status = FR_DBUFF_NOT_EXTENDABLE; | 635 | 3.79k | return remaining; | 636 | 0 | } | 637 | | | 638 | 9.59M | if (remaining >= lowat) { | 639 | 9.58M | if (status) *status = FR_DBUFF_EXTENDABLE; | 640 | 9.58M | return remaining; | 641 | 9.58M | } | 642 | | | 643 | 3.79k | if (!in->extend || !(extended = in->extend(in, lowat - remaining))) goto not_extendable; | 644 | | | 645 | 0 | if (status) *status = FR_DBUFF_EXTENDABLE_EXTENDED; | 646 | |
| 647 | 0 | return remaining + extended; | 648 | 3.79k | } |
Unexecuted instantiation: json.c:_fr_dbuff_extend_lowat Unexecuted instantiation: jpath.c:_fr_dbuff_extend_lowat Unexecuted instantiation: bio.c:_fr_dbuff_extend_lowat Unexecuted instantiation: cache.c:_fr_dbuff_extend_lowat Unexecuted instantiation: cert.c:_fr_dbuff_extend_lowat Unexecuted instantiation: conf.c:_fr_dbuff_extend_lowat Unexecuted instantiation: ctx.c:_fr_dbuff_extend_lowat Unexecuted instantiation: engine.c:_fr_dbuff_extend_lowat Unexecuted instantiation: pairs.c:_fr_dbuff_extend_lowat Unexecuted instantiation: session.c:_fr_dbuff_extend_lowat Unexecuted instantiation: strerror.c:_fr_dbuff_extend_lowat Unexecuted instantiation: utils.c:_fr_dbuff_extend_lowat Unexecuted instantiation: verify.c:_fr_dbuff_extend_lowat Unexecuted instantiation: version.c:_fr_dbuff_extend_lowat Unexecuted instantiation: virtual_server.c:_fr_dbuff_extend_lowat Unexecuted instantiation: list.c:_fr_dbuff_extend_lowat Unexecuted instantiation: tcp.c:_fr_dbuff_extend_lowat Unexecuted instantiation: abinary.c:_fr_dbuff_extend_lowat Unexecuted instantiation: auth.c:_fr_dbuff_extend_lowat Unexecuted instantiation: cf_file.c:_fr_dbuff_extend_lowat Unexecuted instantiation: cf_parse.c:_fr_dbuff_extend_lowat Unexecuted instantiation: cf_util.c:_fr_dbuff_extend_lowat Unexecuted instantiation: client.c:_fr_dbuff_extend_lowat Unexecuted instantiation: command.c:_fr_dbuff_extend_lowat Unexecuted instantiation: connection.c:_fr_dbuff_extend_lowat Unexecuted instantiation: dependency.c:_fr_dbuff_extend_lowat Unexecuted instantiation: dl_module.c:_fr_dbuff_extend_lowat Unexecuted instantiation: exec.c:_fr_dbuff_extend_lowat Unexecuted instantiation: exec_legacy.c:_fr_dbuff_extend_lowat Unexecuted instantiation: exfile.c:_fr_dbuff_extend_lowat Unexecuted instantiation: global_lib.c:_fr_dbuff_extend_lowat Unexecuted instantiation: main_config.c:_fr_dbuff_extend_lowat Unexecuted instantiation: main_loop.c:_fr_dbuff_extend_lowat Unexecuted instantiation: map.c:_fr_dbuff_extend_lowat Unexecuted instantiation: map_proc.c:_fr_dbuff_extend_lowat Unexecuted instantiation: module.c:_fr_dbuff_extend_lowat Unexecuted instantiation: module_method.c:_fr_dbuff_extend_lowat Unexecuted instantiation: module_rlm.c:_fr_dbuff_extend_lowat Unexecuted instantiation: paircmp.c:_fr_dbuff_extend_lowat Unexecuted instantiation: pairmove.c:_fr_dbuff_extend_lowat Unexecuted instantiation: password.c:_fr_dbuff_extend_lowat Unexecuted instantiation: pool.c:_fr_dbuff_extend_lowat Unexecuted instantiation: request.c:_fr_dbuff_extend_lowat Unexecuted instantiation: request_data.c:_fr_dbuff_extend_lowat Unexecuted instantiation: snmp.c:_fr_dbuff_extend_lowat Unexecuted instantiation: state.c:_fr_dbuff_extend_lowat Unexecuted instantiation: tmpl_dcursor.c:_fr_dbuff_extend_lowat Unexecuted instantiation: tmpl_eval.c:_fr_dbuff_extend_lowat Unexecuted instantiation: tmpl_tokenize.c:_fr_dbuff_extend_lowat Unexecuted instantiation: trigger.c:_fr_dbuff_extend_lowat Unexecuted instantiation: trunk.c:_fr_dbuff_extend_lowat Unexecuted instantiation: users_file.c:_fr_dbuff_extend_lowat Unexecuted instantiation: util.c:_fr_dbuff_extend_lowat Unexecuted instantiation: virtual_servers.c:_fr_dbuff_extend_lowat Unexecuted instantiation: call.c:_fr_dbuff_extend_lowat Unexecuted instantiation: call_env.c:_fr_dbuff_extend_lowat Unexecuted instantiation: caller.c:_fr_dbuff_extend_lowat Unexecuted instantiation: catch.c:_fr_dbuff_extend_lowat Unexecuted instantiation: child_request.c:_fr_dbuff_extend_lowat Unexecuted instantiation: compile.c:_fr_dbuff_extend_lowat Unexecuted instantiation: condition.c:_fr_dbuff_extend_lowat Unexecuted instantiation: detach.c:_fr_dbuff_extend_lowat Unexecuted instantiation: finally.c:_fr_dbuff_extend_lowat Unexecuted instantiation: foreach.c:_fr_dbuff_extend_lowat Unexecuted instantiation: function.c:_fr_dbuff_extend_lowat Unexecuted instantiation: group.c:_fr_dbuff_extend_lowat Unexecuted instantiation: interpret.c:_fr_dbuff_extend_lowat Unexecuted instantiation: interpret_synchronous.c:_fr_dbuff_extend_lowat Unexecuted instantiation: io.c:_fr_dbuff_extend_lowat Unexecuted instantiation: limit.c:_fr_dbuff_extend_lowat Unexecuted instantiation: load_balance.c:_fr_dbuff_extend_lowat Unexecuted instantiation: map_builtin.c:_fr_dbuff_extend_lowat Unexecuted instantiation: parallel.c:_fr_dbuff_extend_lowat Unexecuted instantiation: return.c:_fr_dbuff_extend_lowat Unexecuted instantiation: subrequest.c:_fr_dbuff_extend_lowat Unexecuted instantiation: switch.c:_fr_dbuff_extend_lowat Unexecuted instantiation: timeout.c:_fr_dbuff_extend_lowat Unexecuted instantiation: tmpl.c:_fr_dbuff_extend_lowat Unexecuted instantiation: try.c:_fr_dbuff_extend_lowat Unexecuted instantiation: transaction.c:_fr_dbuff_extend_lowat Unexecuted instantiation: xlat.c:_fr_dbuff_extend_lowat Unexecuted instantiation: xlat_alloc.c:_fr_dbuff_extend_lowat Unexecuted instantiation: xlat_builtin.c:_fr_dbuff_extend_lowat Unexecuted instantiation: xlat_eval.c:_fr_dbuff_extend_lowat Unexecuted instantiation: xlat_expr.c:_fr_dbuff_extend_lowat Unexecuted instantiation: xlat_func.c:_fr_dbuff_extend_lowat Unexecuted instantiation: xlat_inst.c:_fr_dbuff_extend_lowat Unexecuted instantiation: xlat_pair.c:_fr_dbuff_extend_lowat Unexecuted instantiation: xlat_purify.c:_fr_dbuff_extend_lowat Unexecuted instantiation: xlat_redundant.c:_fr_dbuff_extend_lowat Unexecuted instantiation: xlat_tokenize.c:_fr_dbuff_extend_lowat Unexecuted instantiation: app_io.c:_fr_dbuff_extend_lowat Unexecuted instantiation: channel.c:_fr_dbuff_extend_lowat Unexecuted instantiation: coord.c:_fr_dbuff_extend_lowat Unexecuted instantiation: coord_pair.c:_fr_dbuff_extend_lowat Unexecuted instantiation: master.c:_fr_dbuff_extend_lowat Unexecuted instantiation: network.c:_fr_dbuff_extend_lowat Unexecuted instantiation: schedule.c:_fr_dbuff_extend_lowat Unexecuted instantiation: thread.c:_fr_dbuff_extend_lowat Unexecuted instantiation: worker.c:_fr_dbuff_extend_lowat Unexecuted instantiation: encode.c:_fr_dbuff_extend_lowat Unexecuted instantiation: vmps.c:_fr_dbuff_extend_lowat |
649 | | |
650 | | /** Extend if we're below _lowat |
651 | | * |
652 | | * @param[out] _status May be NULL. If fr_dbuff_extend_lowat is used |
653 | | * in a copy loop, the caller should pass a pointer |
654 | | * to a #fr_dbuff_extend_status_t. The initial |
655 | | * value of the #fr_dbuff_extend_status_t variable |
656 | | * should be #FR_DBUFF_EXTENDABLE, and will be updated |
657 | | * to indicate whether the dbuff is extensible, |
658 | | * whether it was extended, and whether it may be |
659 | | * extended again. This information |
660 | | * is used the loop condition to prevent spurious |
661 | | * extension calls. |
662 | | * @param[in] _dbuff_or_marker to extend. |
663 | | * @param[in] _lowat If bytes remaining are below the amount, extend. |
664 | | * @return |
665 | | * - 0 if there are no bytes left in the buffer and we couldn't extend. |
666 | | * - >0 the number of bytes in the buffer after extending. |
667 | | */ |
668 | | #define fr_dbuff_extend_lowat(_status, _dbuff_or_marker, _lowat) \ |
669 | 6.95M | _fr_dbuff_extend_lowat(_status, \ |
670 | 6.95M | fr_dbuff_ptr(_dbuff_or_marker), \ |
671 | 6.95M | fr_dbuff_remaining(_dbuff_or_marker), _lowat) |
672 | | |
673 | | /** Extend if we're below _lowat and return if we can't extend above _lowat |
674 | | * |
675 | | * @param[in] _dbuff_or_marker to extend. |
676 | | * @param[in] _lowat If bytes remaining are below the amount, extend. |
677 | | * @return |
678 | | * - 0 if there are no bytes left in the buffer and we couldn't extend. |
679 | | * - >0 the number of bytes in the buffer after extending. |
680 | | */ |
681 | 2.08M | #define FR_DBUFF_EXTEND_LOWAT_OR_RETURN(_dbuff_or_marker, _lowat) \ |
682 | 2.08M | do { \ |
683 | 2.08M | size_t _remaining = fr_dbuff_extend_lowat(NULL, _dbuff_or_marker, _lowat); \ |
684 | 2.08M | if (_remaining < _lowat) return -(_lowat - _remaining); \ |
685 | 2.08M | } while (0) |
686 | | |
687 | | /** @cond */ |
688 | | /** Extend if we're below _lowat and return if we can't extend above _lowat |
689 | | * |
690 | | * @private |
691 | | * |
692 | | * @param[in,out] _pos_p the position pointer to use. |
693 | | * @param[in] _dbuff_or_marker to extend. |
694 | | * @param[in] _lowat The minimum amount the dbuff should be extended by. |
695 | | * @return The number of bytes we would need to satisfy _lowat as a negative integer. |
696 | | */ |
697 | 1.07M | #define _FR_DBUFF_EXTEND_LOWAT_POS_OR_RETURN(_pos_p, _dbuff_or_marker, _lowat) \ |
698 | 1.07M | do { \ |
699 | 1.07M | size_t _remaining = _fr_dbuff_extend_lowat(NULL, \ |
700 | 1.07M | fr_dbuff_ptr(_dbuff_or_marker), \ |
701 | 1.07M | fr_dbuff_end(_dbuff_or_marker) - (*(_pos_p)), _lowat); \ |
702 | 1.07M | if (_remaining < _lowat) return -(_lowat - _remaining); \ |
703 | 1.07M | } while (0) |
704 | | /** @endcond */ |
705 | | |
706 | | /** Extend if no space remains |
707 | | * |
708 | | * @param[in] _dbuff to extend. |
709 | | * @return |
710 | | * - 0 if there are no bytes left in the buffer and we couldn't extend. |
711 | | * - >0 the number of bytes in the buffer after extending. |
712 | | */ |
713 | 0 | #define fr_dbuff_extend(_dbuff) fr_dbuff_extend_lowat(NULL, _dbuff, 1) |
714 | | /** @} */ |
715 | | |
716 | | /** @name Extension callback helpers |
717 | | * |
718 | | * These public functions are intended to be called by extension callbacks |
719 | | * to fixup dbuffs after the underlying buffer or its contents has been altered. |
720 | | * @{ |
721 | | */ |
722 | | void fr_dbuff_update(fr_dbuff_t *dbuff, uint8_t *new_buff, size_t new_len); |
723 | | |
724 | | size_t fr_dbuff_shift(fr_dbuff_t *dbuff, size_t shift); |
725 | | /** @} */ |
726 | | |
727 | | /** @name Length checks |
728 | | * |
729 | | * These macros return the amount of data used/remaining relative to the dbuff |
730 | | * or marker's 'start', 'current', and 'end' pointers. |
731 | | * |
732 | | * In the majority of cases these macros should not be used and the extension |
733 | | * request functions should be used instead. The only exception to this is if |
734 | | * the caller is certain the #fr_dbuff_t is not extensible. |
735 | | * |
736 | | * @{ |
737 | | */ |
738 | | /** Return the number of bytes remaining between the dbuff or marker and the end of the buffer |
739 | | * |
740 | | * @note Do not use this in functions that may be used for stream decoding |
741 | | * unless you're sure you know what you're doing. |
742 | | * The value return does not reflect the number of bytes that may |
743 | | * be potentially read from the stream, only the number of bytes |
744 | | * until the end of the current chunk. |
745 | | * |
746 | | * @param[in] _dbuff_or_marker to return the number of bytes remaining for. |
747 | | * @return |
748 | | * - >0 the number of bytes remaining before we reach the end of the buffer. |
749 | | * - -0 we're at the end of the buffer. |
750 | | */ |
751 | | #define fr_dbuff_remaining(_dbuff_or_marker) \ |
752 | 8.53M | ((size_t)(fr_dbuff_end(_dbuff_or_marker) < fr_dbuff_current(_dbuff_or_marker) ? \ |
753 | 8.53M | 0 : (fr_dbuff_end(_dbuff_or_marker) - fr_dbuff_current(_dbuff_or_marker)))) |
754 | | |
755 | | /** Check if _len bytes are available in the dbuff and if not return the number of bytes we'd need |
756 | | * |
757 | | * @note Do not use this in functions that may be used for stream decoding |
758 | | * unless you're sure you know what you're doing. |
759 | | * The value return does not reflect the number of bytes that may |
760 | | * be potentially read from the stream, only the number of bytes |
761 | | * until the end of the current chunk. |
762 | | * |
763 | | * @param[in] _dbuff_or_marker to return the number of bytes remaining for. |
764 | | * @param[in] _len Minimum remaining bytes. |
765 | | * @return |
766 | | * - >0 the number of bytes remaining before we reach the end of the buffer. |
767 | | * - -0 we're at the end of the buffer. |
768 | | */ |
769 | | #define FR_DBUFF_REMAINING_RETURN(_dbuff_or_marker, _len) \ |
770 | 0 | if ((_len) > fr_dbuff_remaining(_dbuff_or_marker)) return -((_len) - fr_dbuff_remaining(_dbuff_or_marker)) |
771 | | |
772 | | /** Return the number of bytes remaining between the start of the dbuff or marker and the current position |
773 | | * |
774 | | */ |
775 | | #define fr_dbuff_used(_dbuff_or_marker) \ |
776 | 1.44k | ((size_t)(fr_dbuff_start(_dbuff_or_marker) > fr_dbuff_current(_dbuff_or_marker) ? \ |
777 | 1.44k | 0 : (fr_dbuff_current(_dbuff_or_marker) - fr_dbuff_start(_dbuff_or_marker)))) |
778 | | |
779 | | /** The length of the underlying buffer |
780 | | * |
781 | | * @param[in] _dbuff_or_marker to return the length of. |
782 | | * @return The length of the underlying buffer. |
783 | | */ |
784 | | #define fr_dbuff_len(_dbuff_or_marker) \ |
785 | 1.58M | ((size_t)(fr_dbuff_end(_dbuff_or_marker) - fr_dbuff_start(_dbuff_or_marker))) |
786 | | |
787 | | /** How many bytes the dbuff or marker is behind its parent |
788 | | * |
789 | | * @param[in] _dbuff_or_marker |
790 | | * @return |
791 | | * - 0 the dbuff or marker is ahead of its parent. |
792 | | * - >0 the number of bytes the marker is behind its parent. |
793 | | */ |
794 | | #define fr_dbuff_behind(_dbuff_or_marker) \ |
795 | | (fr_dbuff_current(_dbuff_or_marker) > fr_dbuff_current((_dbuff_or_marker)->parent) ? \ |
796 | | 0 : fr_dbuff_current((_dbuff_or_marker)->parent) - fr_dbuff_current(_dbuff_or_marker)) |
797 | | |
798 | | /** How many bytes the dbuff or marker is ahead of its parent |
799 | | * |
800 | | * @return |
801 | | * - 0 the dbuff or marker is behind its parent. |
802 | | * - >0 the number of bytes the marker is ahead of its parent. |
803 | | */ |
804 | | #define fr_dbuff_ahead(_dbuff_or_marker) \ |
805 | | (fr_dbuff_current((_dbuff_or_marker)->parent) > fr_dbuff_current(_dbuff_or_marker) ? \ |
806 | | 0 : fr_dbuff_current(_dbuff_or_marker) - fr_dbuff_current((_dbuff_or_marker)->parent)) |
807 | | /** @} */ |
808 | | |
809 | | /** @name Accessors |
810 | | * |
811 | | * Caching the pointers returned by the accessors is strongly discouraged. |
812 | | * Cached pointers can become invalidated if the #fr_dbuff_t is extended, as |
813 | | * the extensions callback may use realloc or memmove on the underlying buffer. |
814 | | * |
815 | | @code{.c} |
816 | | fr_dbuff_t dbuff; |
817 | | fr_dbuff_uctx_talloc_t tctx; |
818 | | uint8_t *p; |
819 | | |
820 | | fr_dbuff_init_talloc(NULL, &dbuff, &tctx, 512, SIZE_MAX); |
821 | | |
822 | | p = fr_dbuff_current(&dbuff); // Cache the start pointer |
823 | | fr_dbuff_extend_lowat(&dbuff, 1024); // Extension call triggers realloc |
824 | | |
825 | | printf("%s", p); // Should print an empty string but may |
826 | | // SEGV as p may now be invalid. |
827 | | @endcode |
828 | | * |
829 | | * If offsets of a #fr_dbuff_t need to be accessed, markers should be used. |
830 | | * If a dbuff is extended all markers associated with it will be updated so that the |
831 | | * content they point to remains constant. |
832 | | * |
833 | | @code{.c} |
834 | | fr_dbuff_t dbuff; |
835 | | fr_dbuff_uctx_talloc_t tctx; |
836 | | fr_dbuff_marker_t m; |
837 | | |
838 | | fr_dbuff_init_talloc(NULL, &dbuff, &tctx, 512, SIZE_MAX); |
839 | | fr_dbuff_marker(&m, &dbuff); |
840 | | |
841 | | fr_dbuff_extend_lowat(&dbuff, 1024); // Extension call triggers realloc |
842 | | |
843 | | printf("%s", fr_dbuff_current(&m)); // Marker was updated when the dbuff |
844 | | // was extended. All is well. |
845 | | @endcode |
846 | | * |
847 | | * Using offsets of the pointers returned by accessor functions is also strongly |
848 | | * discouraged as it invalidates many of the protections dbuffs give. |
849 | | * |
850 | | @code{.c} |
851 | | uint8_t buff[2]; |
852 | | fr_dbuff_t dbuff; |
853 | | |
854 | | fr_dbuff_init(&dbuff, buff, sizeof(buff)); |
855 | | fr_dbuff_current(&dbuff)[2] = 0x00; // Write to invalid memory |
856 | | @endcode |
857 | | * |
858 | | * @{ |
859 | | */ |
860 | | |
861 | | /** Return a pointer to the dbuff |
862 | | * |
863 | | * @param[in] _dbuff_or_marker to return a pointer to. |
864 | | * @return A pointer to the dbuff. |
865 | | */ |
866 | | #define fr_dbuff_ptr(_dbuff_or_marker) \ |
867 | 94.2M | _Generic((_dbuff_or_marker), \ |
868 | 94.2M | fr_dbuff_t * : ((fr_dbuff_t *)(_dbuff_or_marker)), \ |
869 | 94.2M | fr_dbuff_marker_t * : (((fr_dbuff_marker_t *)(_dbuff_or_marker))->parent) \ |
870 | 94.2M | ) |
871 | | |
872 | | /** Return a const pointer to the dbuff |
873 | | * |
874 | | * @param[in] _dbuff_or_marker to return a pointer to. |
875 | | * @return A pointer to the dbuff. |
876 | | */ |
877 | | #define fr_dbuff_ptr_const(_dbuff_or_marker) \ |
878 | | _Generic((_dbuff_or_marker), \ |
879 | | fr_dbuff_t * : ((fr_dbuff_t const *)(_dbuff_or_marker)), \ |
880 | | fr_dbuff_t const * : ((fr_dbuff_t const *)(_dbuff_or_marker)), \ |
881 | | fr_dbuff_marker_t * : (((fr_dbuff_marker_t const *)(_dbuff_or_marker))->parent), \ |
882 | | fr_dbuff_marker_t const * : (((fr_dbuff_marker_t const *)(_dbuff_or_marker))->parent) \ |
883 | | ) |
884 | | |
885 | | /** Return the underlying buffer in a dbuff or one of marker |
886 | | * |
887 | | * @param[in] _dbuff_or_marker to return the buffer for. |
888 | | * @return A pointer to the start of the buffer. |
889 | | */ |
890 | | #define fr_dbuff_buff(_dbuff_or_marker) \ |
891 | 7.34M | _Generic((_dbuff_or_marker), \ |
892 | 7.34M | fr_dbuff_t * : (((fr_dbuff_t const *)(_dbuff_or_marker))->buff), \ |
893 | 7.34M | fr_dbuff_t const * : (((fr_dbuff_t const *)(_dbuff_or_marker))->buff), \ |
894 | 7.34M | fr_dbuff_marker_t * : (((fr_dbuff_marker_t const *)(_dbuff_or_marker))->parent->buff), \ |
895 | 7.34M | fr_dbuff_marker_t const * : (((fr_dbuff_marker_t const *)(_dbuff_or_marker))->parent->buff) \ |
896 | 7.34M | ) |
897 | | |
898 | | /** Return the 'start' position of a dbuff or marker |
899 | | * |
900 | | * The start position is not necessarily the start of the buffer, and is |
901 | | * advanced every time a dbuff is copied. |
902 | | * |
903 | | * @param[in] _dbuff_or_marker to return the start position of. |
904 | | * @return A pointer to the start position of the buffer. |
905 | | */ |
906 | | #define fr_dbuff_start(_dbuff_or_marker) \ |
907 | 23.1M | (_Generic((_dbuff_or_marker), \ |
908 | 23.1M | fr_dbuff_t * : (((fr_dbuff_t const *)(_dbuff_or_marker))->start), \ |
909 | 23.1M | fr_dbuff_t const * : (((fr_dbuff_t const *)(_dbuff_or_marker))->start), \ |
910 | 23.1M | fr_dbuff_marker_t * : (((fr_dbuff_marker_t const *)(_dbuff_or_marker))->parent->start), \ |
911 | 23.1M | fr_dbuff_marker_t const * : (((fr_dbuff_marker_t const *)(_dbuff_or_marker))->parent->start) \ |
912 | 23.1M | )) |
913 | | |
914 | | /** Return the 'current' position of a dbuff or marker |
915 | | * |
916 | | * @param[in] _dbuff_or_marker to return the current position of. |
917 | | * @return A pointer to the current position of the buffer or marker. |
918 | | */ |
919 | | #define fr_dbuff_current(_dbuff_or_marker) \ |
920 | 42.0M | (_Generic((_dbuff_or_marker), \ |
921 | 42.0M | fr_dbuff_t * : (((fr_dbuff_t const *)(_dbuff_or_marker))->p), \ |
922 | 42.0M | fr_dbuff_t const * : (((fr_dbuff_t const *)(_dbuff_or_marker))->p), \ |
923 | 42.0M | fr_dbuff_marker_t * : (((fr_dbuff_marker_t const *)(_dbuff_or_marker))->p), \ |
924 | 42.0M | fr_dbuff_marker_t const * : (((fr_dbuff_marker_t const *)(_dbuff_or_marker))->p) \ |
925 | 42.0M | )) |
926 | | |
927 | | /** @cond */ |
928 | | /** Return a pointer to the 'current' position in a dbuff or marker |
929 | | * @private |
930 | | * |
931 | | * @param[in] _dbuff_or_marker to return a pointer to the position pointer for. |
932 | | * @return A pointer to the position pointer in the dbuff or marker. |
933 | | */ |
934 | | #define _fr_dbuff_current_ptr(_dbuff_or_marker) \ |
935 | 47.9M | (_Generic((_dbuff_or_marker), \ |
936 | 47.9M | fr_dbuff_t * : &(((fr_dbuff_t *)(_dbuff_or_marker))->p), \ |
937 | 47.9M | fr_dbuff_marker_t * : &(((fr_dbuff_marker_t *)(_dbuff_or_marker))->p) \ |
938 | 47.9M | )) |
939 | | /** @endcond */ |
940 | | |
941 | | /** Return the current 'end' position of a dbuff or marker |
942 | | * |
943 | | * @param[in] _dbuff_or_marker to return the end position of. |
944 | | * @return A pointer to the end position of the buffer or marker. |
945 | | */ |
946 | | #define fr_dbuff_end(_dbuff_or_marker) \ |
947 | 30.7M | (_Generic((_dbuff_or_marker), \ |
948 | 30.7M | fr_dbuff_t * : (((fr_dbuff_t const *)(_dbuff_or_marker))->end), \ |
949 | 30.7M | fr_dbuff_t const * : (((fr_dbuff_t const *)(_dbuff_or_marker))->end), \ |
950 | 30.7M | fr_dbuff_marker_t * : (((fr_dbuff_marker_t const *)(_dbuff_or_marker))->parent->end), \ |
951 | 30.7M | fr_dbuff_marker_t const * : (((fr_dbuff_marker_t const *)(_dbuff_or_marker))->parent->end) \ |
952 | 30.7M | )) |
953 | | /** @} */ |
954 | | |
955 | | /** @name Position modification (recursive) |
956 | | * |
957 | | * Modify the 'current' position pointer of a dbuff or marker. |
958 | | * @{ |
959 | | */ |
960 | | |
961 | | /** Set a new 'current' position in a dbuff or marker |
962 | | * @private |
963 | | */ |
964 | | static inline void _fr_dbuff_set_recurse(fr_dbuff_t *dbuff, uint8_t adv_parent_flags, uint8_t const *p) |
965 | 0 | { |
966 | 0 | if (adv_parent_flags & FR_DBUFF_ADV_PARENT_CURRENT) dbuff->p_i = p; |
967 | 0 | if (adv_parent_flags & FR_DBUFF_ADV_PARENT_END) dbuff->end_i = p; |
968 | |
|
969 | 0 | if (dbuff->adv_parent && dbuff->parent) _fr_dbuff_set_recurse(dbuff->parent, dbuff->adv_parent, p); |
970 | 0 | } Unexecuted instantiation: fuzzer_dhcpv6.c:_fr_dbuff_set_recurse Unexecuted instantiation: fuzzer_util.c:_fr_dbuff_set_recurse Unexecuted instantiation: fuzzer_dhcpv4.c:_fr_dbuff_set_recurse Unexecuted instantiation: fuzzer_cbor.c:_fr_dbuff_set_recurse Unexecuted instantiation: fuzzer_der.c:_fr_dbuff_set_recurse Unexecuted instantiation: fuzzer_dns.c:_fr_dbuff_set_recurse Unexecuted instantiation: fuzzer_tacacs.c:_fr_dbuff_set_recurse Unexecuted instantiation: fuzzer_bfd.c:_fr_dbuff_set_recurse Unexecuted instantiation: fuzzer_radius.c:_fr_dbuff_set_recurse Unexecuted instantiation: fuzzer_tftp.c:_fr_dbuff_set_recurse Unexecuted instantiation: fuzzer_vmps.c:_fr_dbuff_set_recurse Unexecuted instantiation: base16.c:_fr_dbuff_set_recurse Unexecuted instantiation: base32.c:_fr_dbuff_set_recurse Unexecuted instantiation: base64.c:_fr_dbuff_set_recurse Unexecuted instantiation: calc.c:_fr_dbuff_set_recurse Unexecuted instantiation: cbor.c:_fr_dbuff_set_recurse Unexecuted instantiation: dbuff.c:_fr_dbuff_set_recurse Unexecuted instantiation: decode.c:_fr_dbuff_set_recurse Unexecuted instantiation: dict_ext.c:_fr_dbuff_set_recurse Unexecuted instantiation: dict_fixup.c:_fr_dbuff_set_recurse Unexecuted instantiation: dict_print.c:_fr_dbuff_set_recurse Unexecuted instantiation: dict_test.c:_fr_dbuff_set_recurse Unexecuted instantiation: dict_tokenize.c:_fr_dbuff_set_recurse Unexecuted instantiation: dict_unknown.c:_fr_dbuff_set_recurse Unexecuted instantiation: dict_util.c:_fr_dbuff_set_recurse Unexecuted instantiation: dict_validate.c:_fr_dbuff_set_recurse Unexecuted instantiation: dl.c:_fr_dbuff_set_recurse Unexecuted instantiation: dns.c:_fr_dbuff_set_recurse Unexecuted instantiation: edit.c:_fr_dbuff_set_recurse Unexecuted instantiation: encode.c:_fr_dbuff_set_recurse Unexecuted instantiation: timer.c:_fr_dbuff_set_recurse Unexecuted instantiation: file.c:_fr_dbuff_set_recurse Unexecuted instantiation: inet.c:_fr_dbuff_set_recurse Unexecuted instantiation: iovec.c:_fr_dbuff_set_recurse Unexecuted instantiation: log.c:_fr_dbuff_set_recurse Unexecuted instantiation: misc.c:_fr_dbuff_set_recurse Unexecuted instantiation: packet.c:_fr_dbuff_set_recurse Unexecuted instantiation: pair.c:_fr_dbuff_set_recurse Unexecuted instantiation: pair_inline.c:_fr_dbuff_set_recurse Unexecuted instantiation: pair_legacy.c:_fr_dbuff_set_recurse Unexecuted instantiation: pair_print.c:_fr_dbuff_set_recurse Unexecuted instantiation: pair_tokenize.c:_fr_dbuff_set_recurse Unexecuted instantiation: print.c:_fr_dbuff_set_recurse Unexecuted instantiation: proto.c:_fr_dbuff_set_recurse Unexecuted instantiation: regex.c:_fr_dbuff_set_recurse Unexecuted instantiation: socket.c:_fr_dbuff_set_recurse Unexecuted instantiation: stats.c:_fr_dbuff_set_recurse Unexecuted instantiation: struct.c:_fr_dbuff_set_recurse Unexecuted instantiation: types.c:_fr_dbuff_set_recurse Unexecuted instantiation: uri.c:_fr_dbuff_set_recurse Unexecuted instantiation: value.c:_fr_dbuff_set_recurse Unexecuted instantiation: fuzzer.c:_fr_dbuff_set_recurse Unexecuted instantiation: base.c:_fr_dbuff_set_recurse Unexecuted instantiation: raw.c:_fr_dbuff_set_recurse Unexecuted instantiation: udp.c:_fr_dbuff_set_recurse Unexecuted instantiation: base.c:_fr_dbuff_set_recurse Unexecuted instantiation: decode.c:_fr_dbuff_set_recurse Unexecuted instantiation: json.c:_fr_dbuff_set_recurse Unexecuted instantiation: jpath.c:_fr_dbuff_set_recurse Unexecuted instantiation: bio.c:_fr_dbuff_set_recurse Unexecuted instantiation: cache.c:_fr_dbuff_set_recurse Unexecuted instantiation: cert.c:_fr_dbuff_set_recurse Unexecuted instantiation: conf.c:_fr_dbuff_set_recurse Unexecuted instantiation: ctx.c:_fr_dbuff_set_recurse Unexecuted instantiation: engine.c:_fr_dbuff_set_recurse Unexecuted instantiation: pairs.c:_fr_dbuff_set_recurse Unexecuted instantiation: session.c:_fr_dbuff_set_recurse Unexecuted instantiation: strerror.c:_fr_dbuff_set_recurse Unexecuted instantiation: utils.c:_fr_dbuff_set_recurse Unexecuted instantiation: verify.c:_fr_dbuff_set_recurse Unexecuted instantiation: version.c:_fr_dbuff_set_recurse Unexecuted instantiation: virtual_server.c:_fr_dbuff_set_recurse Unexecuted instantiation: list.c:_fr_dbuff_set_recurse Unexecuted instantiation: tcp.c:_fr_dbuff_set_recurse Unexecuted instantiation: abinary.c:_fr_dbuff_set_recurse Unexecuted instantiation: auth.c:_fr_dbuff_set_recurse Unexecuted instantiation: cf_file.c:_fr_dbuff_set_recurse Unexecuted instantiation: cf_parse.c:_fr_dbuff_set_recurse Unexecuted instantiation: cf_util.c:_fr_dbuff_set_recurse Unexecuted instantiation: client.c:_fr_dbuff_set_recurse Unexecuted instantiation: command.c:_fr_dbuff_set_recurse Unexecuted instantiation: connection.c:_fr_dbuff_set_recurse Unexecuted instantiation: dependency.c:_fr_dbuff_set_recurse Unexecuted instantiation: dl_module.c:_fr_dbuff_set_recurse Unexecuted instantiation: exec.c:_fr_dbuff_set_recurse Unexecuted instantiation: exec_legacy.c:_fr_dbuff_set_recurse Unexecuted instantiation: exfile.c:_fr_dbuff_set_recurse Unexecuted instantiation: global_lib.c:_fr_dbuff_set_recurse Unexecuted instantiation: main_config.c:_fr_dbuff_set_recurse Unexecuted instantiation: main_loop.c:_fr_dbuff_set_recurse Unexecuted instantiation: map.c:_fr_dbuff_set_recurse Unexecuted instantiation: map_proc.c:_fr_dbuff_set_recurse Unexecuted instantiation: module.c:_fr_dbuff_set_recurse Unexecuted instantiation: module_method.c:_fr_dbuff_set_recurse Unexecuted instantiation: module_rlm.c:_fr_dbuff_set_recurse Unexecuted instantiation: paircmp.c:_fr_dbuff_set_recurse Unexecuted instantiation: pairmove.c:_fr_dbuff_set_recurse Unexecuted instantiation: password.c:_fr_dbuff_set_recurse Unexecuted instantiation: pool.c:_fr_dbuff_set_recurse Unexecuted instantiation: request.c:_fr_dbuff_set_recurse Unexecuted instantiation: request_data.c:_fr_dbuff_set_recurse Unexecuted instantiation: snmp.c:_fr_dbuff_set_recurse Unexecuted instantiation: state.c:_fr_dbuff_set_recurse Unexecuted instantiation: tmpl_dcursor.c:_fr_dbuff_set_recurse Unexecuted instantiation: tmpl_eval.c:_fr_dbuff_set_recurse Unexecuted instantiation: tmpl_tokenize.c:_fr_dbuff_set_recurse Unexecuted instantiation: trigger.c:_fr_dbuff_set_recurse Unexecuted instantiation: trunk.c:_fr_dbuff_set_recurse Unexecuted instantiation: users_file.c:_fr_dbuff_set_recurse Unexecuted instantiation: util.c:_fr_dbuff_set_recurse Unexecuted instantiation: virtual_servers.c:_fr_dbuff_set_recurse Unexecuted instantiation: call.c:_fr_dbuff_set_recurse Unexecuted instantiation: call_env.c:_fr_dbuff_set_recurse Unexecuted instantiation: caller.c:_fr_dbuff_set_recurse Unexecuted instantiation: catch.c:_fr_dbuff_set_recurse Unexecuted instantiation: child_request.c:_fr_dbuff_set_recurse Unexecuted instantiation: compile.c:_fr_dbuff_set_recurse Unexecuted instantiation: condition.c:_fr_dbuff_set_recurse Unexecuted instantiation: detach.c:_fr_dbuff_set_recurse Unexecuted instantiation: finally.c:_fr_dbuff_set_recurse Unexecuted instantiation: foreach.c:_fr_dbuff_set_recurse Unexecuted instantiation: function.c:_fr_dbuff_set_recurse Unexecuted instantiation: group.c:_fr_dbuff_set_recurse Unexecuted instantiation: interpret.c:_fr_dbuff_set_recurse Unexecuted instantiation: interpret_synchronous.c:_fr_dbuff_set_recurse Unexecuted instantiation: io.c:_fr_dbuff_set_recurse Unexecuted instantiation: limit.c:_fr_dbuff_set_recurse Unexecuted instantiation: load_balance.c:_fr_dbuff_set_recurse Unexecuted instantiation: map_builtin.c:_fr_dbuff_set_recurse Unexecuted instantiation: parallel.c:_fr_dbuff_set_recurse Unexecuted instantiation: return.c:_fr_dbuff_set_recurse Unexecuted instantiation: subrequest.c:_fr_dbuff_set_recurse Unexecuted instantiation: switch.c:_fr_dbuff_set_recurse Unexecuted instantiation: timeout.c:_fr_dbuff_set_recurse Unexecuted instantiation: tmpl.c:_fr_dbuff_set_recurse Unexecuted instantiation: try.c:_fr_dbuff_set_recurse Unexecuted instantiation: transaction.c:_fr_dbuff_set_recurse Unexecuted instantiation: xlat.c:_fr_dbuff_set_recurse Unexecuted instantiation: xlat_alloc.c:_fr_dbuff_set_recurse Unexecuted instantiation: xlat_builtin.c:_fr_dbuff_set_recurse Unexecuted instantiation: xlat_eval.c:_fr_dbuff_set_recurse Unexecuted instantiation: xlat_expr.c:_fr_dbuff_set_recurse Unexecuted instantiation: xlat_func.c:_fr_dbuff_set_recurse Unexecuted instantiation: xlat_inst.c:_fr_dbuff_set_recurse Unexecuted instantiation: xlat_pair.c:_fr_dbuff_set_recurse Unexecuted instantiation: xlat_purify.c:_fr_dbuff_set_recurse Unexecuted instantiation: xlat_redundant.c:_fr_dbuff_set_recurse Unexecuted instantiation: xlat_tokenize.c:_fr_dbuff_set_recurse Unexecuted instantiation: app_io.c:_fr_dbuff_set_recurse Unexecuted instantiation: channel.c:_fr_dbuff_set_recurse Unexecuted instantiation: coord.c:_fr_dbuff_set_recurse Unexecuted instantiation: coord_pair.c:_fr_dbuff_set_recurse Unexecuted instantiation: master.c:_fr_dbuff_set_recurse Unexecuted instantiation: network.c:_fr_dbuff_set_recurse Unexecuted instantiation: schedule.c:_fr_dbuff_set_recurse Unexecuted instantiation: thread.c:_fr_dbuff_set_recurse Unexecuted instantiation: worker.c:_fr_dbuff_set_recurse Unexecuted instantiation: vmps.c:_fr_dbuff_set_recurse |
971 | | |
972 | | /** Set a new 'current' position in a dbuff or marker |
973 | | * @private |
974 | | * |
975 | | * @param[in,out] pos_p position pointer to modify. |
976 | | * @param[out] dbuff dbuff to use for constraints checks. |
977 | | * @param[in] p Position to set. |
978 | | * @return |
979 | | * - 0 not advanced (p before dbuff start) or after dbuff end. |
980 | | * - >0 the number of bytes the dbuff advanced by. |
981 | | * - <0 the number of bytes the dbuff retreated by. |
982 | | * |
983 | | */ |
984 | | static inline ssize_t _fr_dbuff_set(uint8_t **pos_p, fr_dbuff_t *dbuff, uint8_t const *p) |
985 | 14.0M | { |
986 | 14.0M | uint8_t *c; |
987 | | |
988 | 14.0M | if (unlikely(p > dbuff->end)) return -(p - dbuff->end); |
989 | 14.0M | if (unlikely(p < dbuff->start)) return 0; |
990 | | |
991 | 14.0M | c = *pos_p; |
992 | 14.0M | if (dbuff->adv_parent && dbuff->parent) _fr_dbuff_set_recurse(dbuff->parent, dbuff->adv_parent, p); |
993 | 14.0M | *pos_p = UNCONST(uint8_t *, p); |
994 | | |
995 | 14.0M | return p - c; |
996 | 14.0M | } Unexecuted instantiation: fuzzer_dhcpv6.c:_fr_dbuff_set Unexecuted instantiation: fuzzer_util.c:_fr_dbuff_set Unexecuted instantiation: fuzzer_dhcpv4.c:_fr_dbuff_set Unexecuted instantiation: fuzzer_cbor.c:_fr_dbuff_set Unexecuted instantiation: fuzzer_der.c:_fr_dbuff_set Unexecuted instantiation: fuzzer_dns.c:_fr_dbuff_set Unexecuted instantiation: fuzzer_tacacs.c:_fr_dbuff_set Unexecuted instantiation: fuzzer_bfd.c:_fr_dbuff_set Unexecuted instantiation: fuzzer_radius.c:_fr_dbuff_set Unexecuted instantiation: fuzzer_tftp.c:_fr_dbuff_set Unexecuted instantiation: fuzzer_vmps.c:_fr_dbuff_set Line | Count | Source | 985 | 1.07M | { | 986 | 1.07M | uint8_t *c; | 987 | | | 988 | 1.07M | if (unlikely(p > dbuff->end)) return -(p - dbuff->end); | 989 | 1.07M | if (unlikely(p < dbuff->start)) return 0; | 990 | | | 991 | 1.07M | c = *pos_p; | 992 | 1.07M | if (dbuff->adv_parent && dbuff->parent) _fr_dbuff_set_recurse(dbuff->parent, dbuff->adv_parent, p); | 993 | 1.07M | *pos_p = UNCONST(uint8_t *, p); | 994 | | | 995 | 1.07M | return p - c; | 996 | 1.07M | } |
Unexecuted instantiation: base32.c:_fr_dbuff_set Unexecuted instantiation: base64.c:_fr_dbuff_set Unexecuted instantiation: calc.c:_fr_dbuff_set Line | Count | Source | 985 | 437k | { | 986 | 437k | uint8_t *c; | 987 | | | 988 | 437k | if (unlikely(p > dbuff->end)) return -(p - dbuff->end); | 989 | 437k | if (unlikely(p < dbuff->start)) return 0; | 990 | | | 991 | 437k | c = *pos_p; | 992 | 437k | if (dbuff->adv_parent && dbuff->parent) _fr_dbuff_set_recurse(dbuff->parent, dbuff->adv_parent, p); | 993 | 437k | *pos_p = UNCONST(uint8_t *, p); | 994 | | | 995 | 437k | return p - c; | 996 | 437k | } |
Unexecuted instantiation: dbuff.c:_fr_dbuff_set Unexecuted instantiation: dict_ext.c:_fr_dbuff_set Unexecuted instantiation: dict_fixup.c:_fr_dbuff_set Unexecuted instantiation: dict_print.c:_fr_dbuff_set Unexecuted instantiation: dict_test.c:_fr_dbuff_set Unexecuted instantiation: dict_tokenize.c:_fr_dbuff_set Unexecuted instantiation: dict_unknown.c:_fr_dbuff_set Unexecuted instantiation: dict_util.c:_fr_dbuff_set Unexecuted instantiation: dict_validate.c:_fr_dbuff_set Unexecuted instantiation: dl.c:_fr_dbuff_set Unexecuted instantiation: dns.c:_fr_dbuff_set Unexecuted instantiation: edit.c:_fr_dbuff_set Unexecuted instantiation: encode.c:_fr_dbuff_set Unexecuted instantiation: timer.c:_fr_dbuff_set Unexecuted instantiation: file.c:_fr_dbuff_set Unexecuted instantiation: inet.c:_fr_dbuff_set Unexecuted instantiation: iovec.c:_fr_dbuff_set Unexecuted instantiation: log.c:_fr_dbuff_set Unexecuted instantiation: misc.c:_fr_dbuff_set Unexecuted instantiation: packet.c:_fr_dbuff_set Unexecuted instantiation: pair.c:_fr_dbuff_set Unexecuted instantiation: pair_inline.c:_fr_dbuff_set Unexecuted instantiation: pair_legacy.c:_fr_dbuff_set Unexecuted instantiation: pair_print.c:_fr_dbuff_set Unexecuted instantiation: pair_tokenize.c:_fr_dbuff_set Unexecuted instantiation: print.c:_fr_dbuff_set Unexecuted instantiation: proto.c:_fr_dbuff_set Unexecuted instantiation: regex.c:_fr_dbuff_set Unexecuted instantiation: socket.c:_fr_dbuff_set Unexecuted instantiation: stats.c:_fr_dbuff_set Unexecuted instantiation: struct.c:_fr_dbuff_set Unexecuted instantiation: types.c:_fr_dbuff_set Unexecuted instantiation: uri.c:_fr_dbuff_set Line | Count | Source | 985 | 2.92M | { | 986 | 2.92M | uint8_t *c; | 987 | | | 988 | 2.92M | if (unlikely(p > dbuff->end)) return -(p - dbuff->end); | 989 | 2.92M | if (unlikely(p < dbuff->start)) return 0; | 990 | | | 991 | 2.92M | c = *pos_p; | 992 | 2.92M | if (dbuff->adv_parent && dbuff->parent) _fr_dbuff_set_recurse(dbuff->parent, dbuff->adv_parent, p); | 993 | 2.92M | *pos_p = UNCONST(uint8_t *, p); | 994 | | | 995 | 2.92M | return p - c; | 996 | 2.92M | } |
Unexecuted instantiation: fuzzer.c:_fr_dbuff_set Line | Count | Source | 985 | 5.15k | { | 986 | 5.15k | uint8_t *c; | 987 | | | 988 | 5.15k | if (unlikely(p > dbuff->end)) return -(p - dbuff->end); | 989 | 5.15k | if (unlikely(p < dbuff->start)) return 0; | 990 | | | 991 | 5.15k | c = *pos_p; | 992 | 5.15k | if (dbuff->adv_parent && dbuff->parent) _fr_dbuff_set_recurse(dbuff->parent, dbuff->adv_parent, p); | 993 | 5.15k | *pos_p = UNCONST(uint8_t *, p); | 994 | | | 995 | 5.15k | return p - c; | 996 | 5.15k | } |
Unexecuted instantiation: raw.c:_fr_dbuff_set Unexecuted instantiation: udp.c:_fr_dbuff_set Line | Count | Source | 985 | 9.58M | { | 986 | 9.58M | uint8_t *c; | 987 | | | 988 | 9.58M | if (unlikely(p > dbuff->end)) return -(p - dbuff->end); | 989 | 9.58M | if (unlikely(p < dbuff->start)) return 0; | 990 | | | 991 | 9.58M | c = *pos_p; | 992 | 9.58M | if (dbuff->adv_parent && dbuff->parent) _fr_dbuff_set_recurse(dbuff->parent, dbuff->adv_parent, p); | 993 | 9.58M | *pos_p = UNCONST(uint8_t *, p); | 994 | | | 995 | 9.58M | return p - c; | 996 | 9.58M | } |
Unexecuted instantiation: json.c:_fr_dbuff_set Unexecuted instantiation: jpath.c:_fr_dbuff_set Unexecuted instantiation: bio.c:_fr_dbuff_set Unexecuted instantiation: cache.c:_fr_dbuff_set Unexecuted instantiation: cert.c:_fr_dbuff_set Unexecuted instantiation: conf.c:_fr_dbuff_set Unexecuted instantiation: ctx.c:_fr_dbuff_set Unexecuted instantiation: engine.c:_fr_dbuff_set Unexecuted instantiation: pairs.c:_fr_dbuff_set Unexecuted instantiation: session.c:_fr_dbuff_set Unexecuted instantiation: strerror.c:_fr_dbuff_set Unexecuted instantiation: utils.c:_fr_dbuff_set Unexecuted instantiation: verify.c:_fr_dbuff_set Unexecuted instantiation: version.c:_fr_dbuff_set Unexecuted instantiation: virtual_server.c:_fr_dbuff_set Unexecuted instantiation: list.c:_fr_dbuff_set Unexecuted instantiation: tcp.c:_fr_dbuff_set Unexecuted instantiation: abinary.c:_fr_dbuff_set Unexecuted instantiation: auth.c:_fr_dbuff_set Unexecuted instantiation: cf_file.c:_fr_dbuff_set Unexecuted instantiation: cf_parse.c:_fr_dbuff_set Unexecuted instantiation: cf_util.c:_fr_dbuff_set Unexecuted instantiation: client.c:_fr_dbuff_set Unexecuted instantiation: command.c:_fr_dbuff_set Unexecuted instantiation: connection.c:_fr_dbuff_set Unexecuted instantiation: dependency.c:_fr_dbuff_set Unexecuted instantiation: dl_module.c:_fr_dbuff_set Unexecuted instantiation: exec.c:_fr_dbuff_set Unexecuted instantiation: exec_legacy.c:_fr_dbuff_set Unexecuted instantiation: exfile.c:_fr_dbuff_set Unexecuted instantiation: global_lib.c:_fr_dbuff_set Unexecuted instantiation: main_config.c:_fr_dbuff_set Unexecuted instantiation: main_loop.c:_fr_dbuff_set Unexecuted instantiation: map.c:_fr_dbuff_set Unexecuted instantiation: map_proc.c:_fr_dbuff_set Unexecuted instantiation: module.c:_fr_dbuff_set Unexecuted instantiation: module_method.c:_fr_dbuff_set Unexecuted instantiation: module_rlm.c:_fr_dbuff_set Unexecuted instantiation: paircmp.c:_fr_dbuff_set Unexecuted instantiation: pairmove.c:_fr_dbuff_set Unexecuted instantiation: password.c:_fr_dbuff_set Unexecuted instantiation: pool.c:_fr_dbuff_set Unexecuted instantiation: request.c:_fr_dbuff_set Unexecuted instantiation: request_data.c:_fr_dbuff_set Unexecuted instantiation: snmp.c:_fr_dbuff_set Unexecuted instantiation: state.c:_fr_dbuff_set Unexecuted instantiation: tmpl_dcursor.c:_fr_dbuff_set Unexecuted instantiation: tmpl_eval.c:_fr_dbuff_set Unexecuted instantiation: tmpl_tokenize.c:_fr_dbuff_set Unexecuted instantiation: trigger.c:_fr_dbuff_set Unexecuted instantiation: trunk.c:_fr_dbuff_set Unexecuted instantiation: users_file.c:_fr_dbuff_set Unexecuted instantiation: util.c:_fr_dbuff_set Unexecuted instantiation: virtual_servers.c:_fr_dbuff_set Unexecuted instantiation: call.c:_fr_dbuff_set Unexecuted instantiation: call_env.c:_fr_dbuff_set Unexecuted instantiation: caller.c:_fr_dbuff_set Unexecuted instantiation: catch.c:_fr_dbuff_set Unexecuted instantiation: child_request.c:_fr_dbuff_set Unexecuted instantiation: compile.c:_fr_dbuff_set Unexecuted instantiation: condition.c:_fr_dbuff_set Unexecuted instantiation: detach.c:_fr_dbuff_set Unexecuted instantiation: finally.c:_fr_dbuff_set Unexecuted instantiation: foreach.c:_fr_dbuff_set Unexecuted instantiation: function.c:_fr_dbuff_set Unexecuted instantiation: group.c:_fr_dbuff_set Unexecuted instantiation: interpret.c:_fr_dbuff_set Unexecuted instantiation: interpret_synchronous.c:_fr_dbuff_set Unexecuted instantiation: io.c:_fr_dbuff_set Unexecuted instantiation: limit.c:_fr_dbuff_set Unexecuted instantiation: load_balance.c:_fr_dbuff_set Unexecuted instantiation: map_builtin.c:_fr_dbuff_set Unexecuted instantiation: parallel.c:_fr_dbuff_set Unexecuted instantiation: return.c:_fr_dbuff_set Unexecuted instantiation: subrequest.c:_fr_dbuff_set Unexecuted instantiation: switch.c:_fr_dbuff_set Unexecuted instantiation: timeout.c:_fr_dbuff_set Unexecuted instantiation: tmpl.c:_fr_dbuff_set Unexecuted instantiation: try.c:_fr_dbuff_set Unexecuted instantiation: transaction.c:_fr_dbuff_set Unexecuted instantiation: xlat.c:_fr_dbuff_set Unexecuted instantiation: xlat_alloc.c:_fr_dbuff_set Unexecuted instantiation: xlat_builtin.c:_fr_dbuff_set Unexecuted instantiation: xlat_eval.c:_fr_dbuff_set Unexecuted instantiation: xlat_expr.c:_fr_dbuff_set Unexecuted instantiation: xlat_func.c:_fr_dbuff_set Unexecuted instantiation: xlat_inst.c:_fr_dbuff_set Unexecuted instantiation: xlat_pair.c:_fr_dbuff_set Unexecuted instantiation: xlat_purify.c:_fr_dbuff_set Unexecuted instantiation: xlat_redundant.c:_fr_dbuff_set Unexecuted instantiation: xlat_tokenize.c:_fr_dbuff_set Unexecuted instantiation: app_io.c:_fr_dbuff_set Unexecuted instantiation: channel.c:_fr_dbuff_set Unexecuted instantiation: coord.c:_fr_dbuff_set Unexecuted instantiation: coord_pair.c:_fr_dbuff_set Unexecuted instantiation: master.c:_fr_dbuff_set Unexecuted instantiation: network.c:_fr_dbuff_set Unexecuted instantiation: schedule.c:_fr_dbuff_set Unexecuted instantiation: thread.c:_fr_dbuff_set Unexecuted instantiation: worker.c:_fr_dbuff_set Unexecuted instantiation: vmps.c:_fr_dbuff_set |
997 | | |
998 | | /** Set the 'current' position in a dbuff or marker using another dbuff or marker, a char pointer, or a length value |
999 | | * |
1000 | | * @param[in] _dst dbuff or marker to set the position for. |
1001 | | * @param[in] _src Variable to glean new position from. Behaviour here |
1002 | | * depends on the type of the variable. |
1003 | | * - dbuff, the current position of the dbuff. |
1004 | | * - marker, the current position of the marker. |
1005 | | * - pointer, the position of the pointer. |
1006 | | * - size_t, _dst->start + _src. |
1007 | | * @return |
1008 | | * - 0 not advanced. |
1009 | | * - >0 the number of bytes the dbuff was advanced by. |
1010 | | * - <0 the number of bytes required to complete the advancement |
1011 | | */ |
1012 | 7.18M | #define fr_dbuff_set(_dst, _src) \ |
1013 | 7.18M | _fr_dbuff_set(\ |
1014 | 7.18M | _fr_dbuff_current_ptr(_dst), fr_dbuff_ptr(_dst), \ |
1015 | 7.18M | _Generic((_src), \ |
1016 | 7.18M | fr_dbuff_t * : fr_dbuff_current((fr_dbuff_t const *)(_src)), \ |
1017 | 7.18M | fr_dbuff_marker_t * : fr_dbuff_current((fr_dbuff_marker_t const *)(_src)), \ |
1018 | 7.18M | uint8_t const * : (uint8_t const *)(_src), \ |
1019 | 7.18M | uint8_t * : (uint8_t const *)(_src), \ |
1020 | 7.18M | size_t : (fr_dbuff_start(_dst) + (uintptr_t)(_src)), \ |
1021 | 7.18M | long : (fr_dbuff_start(_dst) + (uintptr_t)(_src)), \ |
1022 | 7.18M | int : (fr_dbuff_start(_dst) + (uintptr_t)(_src)) \ |
1023 | 7.18M | ) \ |
1024 | 7.18M | ) |
1025 | | |
1026 | | /** Set the 'current' position in a dbuff or marker returning if _src is out of range |
1027 | | * |
1028 | | * @copydetails fr_dbuff_set |
1029 | | */ |
1030 | | #define FR_DBUFF_SET_RETURN(_dst, _src) FR_DBUFF_RETURN(fr_dbuff_set, _dst, _src) |
1031 | | |
1032 | | /** Set a new 'end' position in a dbuff or marker |
1033 | | * @private |
1034 | | * |
1035 | | * @param[out] dbuff dbuff to use for constraints checks. |
1036 | | * @param[in] p Position to set. |
1037 | | * @return |
1038 | | * - 0 not advanced (p before dbuff start) or after dbuff end. |
1039 | | * - >0 the number of bytes the dbuff was trimmed by. |
1040 | | */ |
1041 | | static inline ssize_t _fr_dbuff_set_end(fr_dbuff_t *dbuff, uint8_t const *p) |
1042 | 1.59M | { |
1043 | 1.59M | if (unlikely(p > dbuff->end)) return -(p - dbuff->end); |
1044 | 1.59M | if (unlikely(p < dbuff->start)) return 0; |
1045 | | |
1046 | 1.59M | dbuff->end = UNCONST(uint8_t *, p); |
1047 | | |
1048 | 1.59M | return dbuff->end - p; |
1049 | 1.59M | } Unexecuted instantiation: fuzzer_dhcpv6.c:_fr_dbuff_set_end Unexecuted instantiation: fuzzer_util.c:_fr_dbuff_set_end Unexecuted instantiation: fuzzer_dhcpv4.c:_fr_dbuff_set_end Unexecuted instantiation: fuzzer_cbor.c:_fr_dbuff_set_end Unexecuted instantiation: fuzzer_der.c:_fr_dbuff_set_end Unexecuted instantiation: fuzzer_dns.c:_fr_dbuff_set_end Unexecuted instantiation: fuzzer_tacacs.c:_fr_dbuff_set_end Unexecuted instantiation: fuzzer_bfd.c:_fr_dbuff_set_end Unexecuted instantiation: fuzzer_radius.c:_fr_dbuff_set_end Unexecuted instantiation: fuzzer_tftp.c:_fr_dbuff_set_end Unexecuted instantiation: fuzzer_vmps.c:_fr_dbuff_set_end Unexecuted instantiation: base16.c:_fr_dbuff_set_end Unexecuted instantiation: base32.c:_fr_dbuff_set_end Unexecuted instantiation: base64.c:_fr_dbuff_set_end Unexecuted instantiation: calc.c:_fr_dbuff_set_end Unexecuted instantiation: cbor.c:_fr_dbuff_set_end Unexecuted instantiation: dbuff.c:_fr_dbuff_set_end Unexecuted instantiation: dict_ext.c:_fr_dbuff_set_end Unexecuted instantiation: dict_fixup.c:_fr_dbuff_set_end Unexecuted instantiation: dict_print.c:_fr_dbuff_set_end Unexecuted instantiation: dict_test.c:_fr_dbuff_set_end Unexecuted instantiation: dict_tokenize.c:_fr_dbuff_set_end Unexecuted instantiation: dict_unknown.c:_fr_dbuff_set_end Unexecuted instantiation: dict_util.c:_fr_dbuff_set_end Unexecuted instantiation: dict_validate.c:_fr_dbuff_set_end Unexecuted instantiation: dl.c:_fr_dbuff_set_end Unexecuted instantiation: dns.c:_fr_dbuff_set_end Unexecuted instantiation: edit.c:_fr_dbuff_set_end Unexecuted instantiation: encode.c:_fr_dbuff_set_end Unexecuted instantiation: timer.c:_fr_dbuff_set_end Unexecuted instantiation: file.c:_fr_dbuff_set_end Unexecuted instantiation: inet.c:_fr_dbuff_set_end Unexecuted instantiation: iovec.c:_fr_dbuff_set_end Unexecuted instantiation: log.c:_fr_dbuff_set_end Unexecuted instantiation: misc.c:_fr_dbuff_set_end Unexecuted instantiation: packet.c:_fr_dbuff_set_end Unexecuted instantiation: pair.c:_fr_dbuff_set_end Unexecuted instantiation: pair_inline.c:_fr_dbuff_set_end Unexecuted instantiation: pair_legacy.c:_fr_dbuff_set_end Unexecuted instantiation: pair_print.c:_fr_dbuff_set_end Unexecuted instantiation: pair_tokenize.c:_fr_dbuff_set_end Unexecuted instantiation: print.c:_fr_dbuff_set_end Unexecuted instantiation: proto.c:_fr_dbuff_set_end Unexecuted instantiation: regex.c:_fr_dbuff_set_end Unexecuted instantiation: socket.c:_fr_dbuff_set_end Unexecuted instantiation: stats.c:_fr_dbuff_set_end Unexecuted instantiation: struct.c:_fr_dbuff_set_end Unexecuted instantiation: types.c:_fr_dbuff_set_end Unexecuted instantiation: uri.c:_fr_dbuff_set_end Unexecuted instantiation: value.c:_fr_dbuff_set_end Unexecuted instantiation: fuzzer.c:_fr_dbuff_set_end Unexecuted instantiation: base.c:_fr_dbuff_set_end Unexecuted instantiation: raw.c:_fr_dbuff_set_end Unexecuted instantiation: udp.c:_fr_dbuff_set_end decode.c:_fr_dbuff_set_end Line | Count | Source | 1042 | 1.59M | { | 1043 | 1.59M | if (unlikely(p > dbuff->end)) return -(p - dbuff->end); | 1044 | 1.59M | if (unlikely(p < dbuff->start)) return 0; | 1045 | | | 1046 | 1.59M | dbuff->end = UNCONST(uint8_t *, p); | 1047 | | | 1048 | 1.59M | return dbuff->end - p; | 1049 | 1.59M | } |
Unexecuted instantiation: encode.c:_fr_dbuff_set_end Unexecuted instantiation: json.c:_fr_dbuff_set_end Unexecuted instantiation: jpath.c:_fr_dbuff_set_end Unexecuted instantiation: bio.c:_fr_dbuff_set_end Unexecuted instantiation: cache.c:_fr_dbuff_set_end Unexecuted instantiation: cert.c:_fr_dbuff_set_end Unexecuted instantiation: conf.c:_fr_dbuff_set_end Unexecuted instantiation: ctx.c:_fr_dbuff_set_end Unexecuted instantiation: engine.c:_fr_dbuff_set_end Unexecuted instantiation: pairs.c:_fr_dbuff_set_end Unexecuted instantiation: session.c:_fr_dbuff_set_end Unexecuted instantiation: strerror.c:_fr_dbuff_set_end Unexecuted instantiation: utils.c:_fr_dbuff_set_end Unexecuted instantiation: verify.c:_fr_dbuff_set_end Unexecuted instantiation: version.c:_fr_dbuff_set_end Unexecuted instantiation: virtual_server.c:_fr_dbuff_set_end Unexecuted instantiation: list.c:_fr_dbuff_set_end Unexecuted instantiation: tcp.c:_fr_dbuff_set_end Unexecuted instantiation: abinary.c:_fr_dbuff_set_end Unexecuted instantiation: auth.c:_fr_dbuff_set_end Unexecuted instantiation: cf_file.c:_fr_dbuff_set_end Unexecuted instantiation: cf_parse.c:_fr_dbuff_set_end Unexecuted instantiation: cf_util.c:_fr_dbuff_set_end Unexecuted instantiation: client.c:_fr_dbuff_set_end Unexecuted instantiation: command.c:_fr_dbuff_set_end Unexecuted instantiation: connection.c:_fr_dbuff_set_end Unexecuted instantiation: dependency.c:_fr_dbuff_set_end Unexecuted instantiation: dl_module.c:_fr_dbuff_set_end Unexecuted instantiation: exec.c:_fr_dbuff_set_end Unexecuted instantiation: exec_legacy.c:_fr_dbuff_set_end Unexecuted instantiation: exfile.c:_fr_dbuff_set_end Unexecuted instantiation: global_lib.c:_fr_dbuff_set_end Unexecuted instantiation: main_config.c:_fr_dbuff_set_end Unexecuted instantiation: main_loop.c:_fr_dbuff_set_end Unexecuted instantiation: map.c:_fr_dbuff_set_end Unexecuted instantiation: map_proc.c:_fr_dbuff_set_end Unexecuted instantiation: module.c:_fr_dbuff_set_end Unexecuted instantiation: module_method.c:_fr_dbuff_set_end Unexecuted instantiation: module_rlm.c:_fr_dbuff_set_end Unexecuted instantiation: paircmp.c:_fr_dbuff_set_end Unexecuted instantiation: pairmove.c:_fr_dbuff_set_end Unexecuted instantiation: password.c:_fr_dbuff_set_end Unexecuted instantiation: pool.c:_fr_dbuff_set_end Unexecuted instantiation: request.c:_fr_dbuff_set_end Unexecuted instantiation: request_data.c:_fr_dbuff_set_end Unexecuted instantiation: snmp.c:_fr_dbuff_set_end Unexecuted instantiation: state.c:_fr_dbuff_set_end Unexecuted instantiation: tmpl_dcursor.c:_fr_dbuff_set_end Unexecuted instantiation: tmpl_eval.c:_fr_dbuff_set_end Unexecuted instantiation: tmpl_tokenize.c:_fr_dbuff_set_end Unexecuted instantiation: trigger.c:_fr_dbuff_set_end Unexecuted instantiation: trunk.c:_fr_dbuff_set_end Unexecuted instantiation: users_file.c:_fr_dbuff_set_end Unexecuted instantiation: util.c:_fr_dbuff_set_end Unexecuted instantiation: virtual_servers.c:_fr_dbuff_set_end Unexecuted instantiation: call.c:_fr_dbuff_set_end Unexecuted instantiation: call_env.c:_fr_dbuff_set_end Unexecuted instantiation: caller.c:_fr_dbuff_set_end Unexecuted instantiation: catch.c:_fr_dbuff_set_end Unexecuted instantiation: child_request.c:_fr_dbuff_set_end Unexecuted instantiation: compile.c:_fr_dbuff_set_end Unexecuted instantiation: condition.c:_fr_dbuff_set_end Unexecuted instantiation: detach.c:_fr_dbuff_set_end Unexecuted instantiation: finally.c:_fr_dbuff_set_end Unexecuted instantiation: foreach.c:_fr_dbuff_set_end Unexecuted instantiation: function.c:_fr_dbuff_set_end Unexecuted instantiation: group.c:_fr_dbuff_set_end Unexecuted instantiation: interpret.c:_fr_dbuff_set_end Unexecuted instantiation: interpret_synchronous.c:_fr_dbuff_set_end Unexecuted instantiation: io.c:_fr_dbuff_set_end Unexecuted instantiation: limit.c:_fr_dbuff_set_end Unexecuted instantiation: load_balance.c:_fr_dbuff_set_end Unexecuted instantiation: map_builtin.c:_fr_dbuff_set_end Unexecuted instantiation: parallel.c:_fr_dbuff_set_end Unexecuted instantiation: return.c:_fr_dbuff_set_end Unexecuted instantiation: subrequest.c:_fr_dbuff_set_end Unexecuted instantiation: switch.c:_fr_dbuff_set_end Unexecuted instantiation: timeout.c:_fr_dbuff_set_end Unexecuted instantiation: tmpl.c:_fr_dbuff_set_end Unexecuted instantiation: try.c:_fr_dbuff_set_end Unexecuted instantiation: transaction.c:_fr_dbuff_set_end Unexecuted instantiation: xlat.c:_fr_dbuff_set_end Unexecuted instantiation: xlat_alloc.c:_fr_dbuff_set_end Unexecuted instantiation: xlat_builtin.c:_fr_dbuff_set_end Unexecuted instantiation: xlat_eval.c:_fr_dbuff_set_end Unexecuted instantiation: xlat_expr.c:_fr_dbuff_set_end Unexecuted instantiation: xlat_func.c:_fr_dbuff_set_end Unexecuted instantiation: xlat_inst.c:_fr_dbuff_set_end Unexecuted instantiation: xlat_pair.c:_fr_dbuff_set_end Unexecuted instantiation: xlat_purify.c:_fr_dbuff_set_end Unexecuted instantiation: xlat_redundant.c:_fr_dbuff_set_end Unexecuted instantiation: xlat_tokenize.c:_fr_dbuff_set_end Unexecuted instantiation: app_io.c:_fr_dbuff_set_end Unexecuted instantiation: channel.c:_fr_dbuff_set_end Unexecuted instantiation: coord.c:_fr_dbuff_set_end Unexecuted instantiation: coord_pair.c:_fr_dbuff_set_end Unexecuted instantiation: master.c:_fr_dbuff_set_end Unexecuted instantiation: network.c:_fr_dbuff_set_end Unexecuted instantiation: schedule.c:_fr_dbuff_set_end Unexecuted instantiation: thread.c:_fr_dbuff_set_end Unexecuted instantiation: worker.c:_fr_dbuff_set_end Unexecuted instantiation: vmps.c:_fr_dbuff_set_end |
1050 | | |
1051 | | /** Set a new 'end' position in a dbuff or marker |
1052 | | * |
1053 | | * @param[out] _dst dbuff to use for constraints checks. |
1054 | | * @param[in] _end Position to set. |
1055 | | * @return |
1056 | | * - 0 not advanced (p before dbuff start) or after dbuff end. |
1057 | | * - >0 the number of bytes the dbuff was trimmed by. |
1058 | | */ |
1059 | 1.59M | #define fr_dbuff_set_end(_dst, _end) \ |
1060 | 1.59M | _fr_dbuff_set_end(\ |
1061 | 1.59M | fr_dbuff_ptr(_dst), \ |
1062 | 1.59M | _Generic((_end), \ |
1063 | 1.59M | fr_dbuff_t * : fr_dbuff_current((fr_dbuff_t const *)(_end)), \ |
1064 | 1.59M | fr_dbuff_marker_t * : fr_dbuff_current((fr_dbuff_marker_t const *)(_end)), \ |
1065 | 1.59M | uint8_t const * : (uint8_t const *)(_end), \ |
1066 | 1.59M | uint8_t * : (uint8_t const *)(_end) \ |
1067 | 1.59M | ) \ |
1068 | 1.59M | ) |
1069 | | |
1070 | | |
1071 | | /** Advance 'current' position in dbuff or marker by _len bytes |
1072 | | * |
1073 | | * @param[in] _dbuff_or_marker to advance. |
1074 | | * @param[in] _len How much to advance dbuff by. |
1075 | | * Must be a positive integer. |
1076 | | * @return |
1077 | | * - 0 not advanced. |
1078 | | * - >0 the number of bytes the dbuff or marker was advanced by. |
1079 | | * - <0 the number of bytes required to complete the advancement |
1080 | | */ |
1081 | | #define fr_dbuff_advance(_dbuff_or_marker, _len) \ |
1082 | 1.14k | fr_dbuff_set(_dbuff_or_marker, \ |
1083 | 1.14k | (fr_dbuff_current(_dbuff_or_marker) + \ |
1084 | 1.14k | (_Generic((_len), \ |
1085 | 1.14k | unsigned char : (size_t)(_len), \ |
1086 | 1.14k | unsigned short : (size_t)(_len), \ |
1087 | 1.14k | unsigned int : (size_t)(_len), \ |
1088 | 1.14k | unsigned long : (size_t)(_len), \ |
1089 | 1.14k | unsigned long long : (size_t)(_len), \ |
1090 | 1.14k | int : (size_t)(_len) \ |
1091 | 1.14k | )))) |
1092 | | |
1093 | | /** Advance the 'current' position in dbuff or marker by _len bytes returning if _len is out of range |
1094 | | * |
1095 | | * @copydetails fr_dbuff_advance |
1096 | | */ |
1097 | 0 | #define FR_DBUFF_ADVANCE_RETURN(_dbuff_or_marker, _len) FR_DBUFF_RETURN(fr_dbuff_advance, _dbuff_or_marker, _len) |
1098 | | |
1099 | | /** Advance a dbuff or marker potentially extending it |
1100 | | * @private |
1101 | | * |
1102 | | * @param[in,out] pos_p position pointer to modify. |
1103 | | * @param[out] dbuff dbuff to use for constraints checks. |
1104 | | * @param[in] len Number of bytes to advance by. |
1105 | | * @return |
1106 | | * - 0 not advanced, specified length would take us |
1107 | | * past the end of the buffer, and we couldn't extend |
1108 | | * by enough bytes. |
1109 | | * - >0 the number of bytes the dbuff advanced by. |
1110 | | * - <0 the number of bytes we'd need to complete the advance. |
1111 | | * |
1112 | | */ |
1113 | | static inline ssize_t _fr_dbuff_advance_extend(uint8_t **pos_p, fr_dbuff_t *dbuff, size_t len) |
1114 | 0 | { |
1115 | 0 | uint8_t *p = *pos_p + len; |
1116 | 0 |
|
1117 | 0 | if (p > dbuff->end) { |
1118 | 0 | size_t rel = p - dbuff->start; /* Get relative position to the start */ |
1119 | 0 |
|
1120 | 0 | if (!dbuff->extend) { |
1121 | 0 | oos: |
1122 | 0 | return -((dbuff->start + rel) - dbuff->end); |
1123 | 0 | } |
1124 | 0 |
|
1125 | 0 | dbuff->extend(dbuff, p - dbuff->end); /* Try and extend by the number of bytes over */ |
1126 | 0 | if ((dbuff->start + rel) > dbuff->end) goto oos; |
1127 | 0 |
|
1128 | 0 | *pos_p = dbuff->start + rel; /* Update pos_p */ |
1129 | 0 | } else { |
1130 | 0 | *pos_p += len; |
1131 | 0 | } |
1132 | 0 |
|
1133 | 0 | if (dbuff->adv_parent && dbuff->parent) _fr_dbuff_set_recurse(dbuff->parent, dbuff->adv_parent, *pos_p); |
1134 | 0 |
|
1135 | 0 | return len; |
1136 | 0 | } Unexecuted instantiation: fuzzer_dhcpv6.c:_fr_dbuff_advance_extend Unexecuted instantiation: fuzzer_util.c:_fr_dbuff_advance_extend Unexecuted instantiation: fuzzer_dhcpv4.c:_fr_dbuff_advance_extend Unexecuted instantiation: fuzzer_cbor.c:_fr_dbuff_advance_extend Unexecuted instantiation: fuzzer_der.c:_fr_dbuff_advance_extend Unexecuted instantiation: fuzzer_dns.c:_fr_dbuff_advance_extend Unexecuted instantiation: fuzzer_tacacs.c:_fr_dbuff_advance_extend Unexecuted instantiation: fuzzer_bfd.c:_fr_dbuff_advance_extend Unexecuted instantiation: fuzzer_radius.c:_fr_dbuff_advance_extend Unexecuted instantiation: fuzzer_tftp.c:_fr_dbuff_advance_extend Unexecuted instantiation: fuzzer_vmps.c:_fr_dbuff_advance_extend Unexecuted instantiation: base16.c:_fr_dbuff_advance_extend Unexecuted instantiation: base32.c:_fr_dbuff_advance_extend Unexecuted instantiation: base64.c:_fr_dbuff_advance_extend Unexecuted instantiation: calc.c:_fr_dbuff_advance_extend Unexecuted instantiation: cbor.c:_fr_dbuff_advance_extend Unexecuted instantiation: dbuff.c:_fr_dbuff_advance_extend Unexecuted instantiation: decode.c:_fr_dbuff_advance_extend Unexecuted instantiation: dict_ext.c:_fr_dbuff_advance_extend Unexecuted instantiation: dict_fixup.c:_fr_dbuff_advance_extend Unexecuted instantiation: dict_print.c:_fr_dbuff_advance_extend Unexecuted instantiation: dict_test.c:_fr_dbuff_advance_extend Unexecuted instantiation: dict_tokenize.c:_fr_dbuff_advance_extend Unexecuted instantiation: dict_unknown.c:_fr_dbuff_advance_extend Unexecuted instantiation: dict_util.c:_fr_dbuff_advance_extend Unexecuted instantiation: dict_validate.c:_fr_dbuff_advance_extend Unexecuted instantiation: dl.c:_fr_dbuff_advance_extend Unexecuted instantiation: dns.c:_fr_dbuff_advance_extend Unexecuted instantiation: edit.c:_fr_dbuff_advance_extend Unexecuted instantiation: encode.c:_fr_dbuff_advance_extend Unexecuted instantiation: timer.c:_fr_dbuff_advance_extend Unexecuted instantiation: file.c:_fr_dbuff_advance_extend Unexecuted instantiation: inet.c:_fr_dbuff_advance_extend Unexecuted instantiation: iovec.c:_fr_dbuff_advance_extend Unexecuted instantiation: log.c:_fr_dbuff_advance_extend Unexecuted instantiation: misc.c:_fr_dbuff_advance_extend Unexecuted instantiation: packet.c:_fr_dbuff_advance_extend Unexecuted instantiation: pair.c:_fr_dbuff_advance_extend Unexecuted instantiation: pair_inline.c:_fr_dbuff_advance_extend Unexecuted instantiation: pair_legacy.c:_fr_dbuff_advance_extend Unexecuted instantiation: pair_print.c:_fr_dbuff_advance_extend Unexecuted instantiation: pair_tokenize.c:_fr_dbuff_advance_extend Unexecuted instantiation: print.c:_fr_dbuff_advance_extend Unexecuted instantiation: proto.c:_fr_dbuff_advance_extend Unexecuted instantiation: regex.c:_fr_dbuff_advance_extend Unexecuted instantiation: socket.c:_fr_dbuff_advance_extend Unexecuted instantiation: stats.c:_fr_dbuff_advance_extend Unexecuted instantiation: struct.c:_fr_dbuff_advance_extend Unexecuted instantiation: types.c:_fr_dbuff_advance_extend Unexecuted instantiation: uri.c:_fr_dbuff_advance_extend Unexecuted instantiation: value.c:_fr_dbuff_advance_extend Unexecuted instantiation: fuzzer.c:_fr_dbuff_advance_extend Unexecuted instantiation: base.c:_fr_dbuff_advance_extend Unexecuted instantiation: raw.c:_fr_dbuff_advance_extend Unexecuted instantiation: udp.c:_fr_dbuff_advance_extend Unexecuted instantiation: json.c:_fr_dbuff_advance_extend Unexecuted instantiation: jpath.c:_fr_dbuff_advance_extend Unexecuted instantiation: bio.c:_fr_dbuff_advance_extend Unexecuted instantiation: cache.c:_fr_dbuff_advance_extend Unexecuted instantiation: cert.c:_fr_dbuff_advance_extend Unexecuted instantiation: conf.c:_fr_dbuff_advance_extend Unexecuted instantiation: ctx.c:_fr_dbuff_advance_extend Unexecuted instantiation: engine.c:_fr_dbuff_advance_extend Unexecuted instantiation: pairs.c:_fr_dbuff_advance_extend Unexecuted instantiation: session.c:_fr_dbuff_advance_extend Unexecuted instantiation: strerror.c:_fr_dbuff_advance_extend Unexecuted instantiation: utils.c:_fr_dbuff_advance_extend Unexecuted instantiation: verify.c:_fr_dbuff_advance_extend Unexecuted instantiation: version.c:_fr_dbuff_advance_extend Unexecuted instantiation: virtual_server.c:_fr_dbuff_advance_extend Unexecuted instantiation: list.c:_fr_dbuff_advance_extend Unexecuted instantiation: tcp.c:_fr_dbuff_advance_extend Unexecuted instantiation: abinary.c:_fr_dbuff_advance_extend Unexecuted instantiation: auth.c:_fr_dbuff_advance_extend Unexecuted instantiation: cf_file.c:_fr_dbuff_advance_extend Unexecuted instantiation: cf_parse.c:_fr_dbuff_advance_extend Unexecuted instantiation: cf_util.c:_fr_dbuff_advance_extend Unexecuted instantiation: client.c:_fr_dbuff_advance_extend Unexecuted instantiation: command.c:_fr_dbuff_advance_extend Unexecuted instantiation: connection.c:_fr_dbuff_advance_extend Unexecuted instantiation: dependency.c:_fr_dbuff_advance_extend Unexecuted instantiation: dl_module.c:_fr_dbuff_advance_extend Unexecuted instantiation: exec.c:_fr_dbuff_advance_extend Unexecuted instantiation: exec_legacy.c:_fr_dbuff_advance_extend Unexecuted instantiation: exfile.c:_fr_dbuff_advance_extend Unexecuted instantiation: global_lib.c:_fr_dbuff_advance_extend Unexecuted instantiation: main_config.c:_fr_dbuff_advance_extend Unexecuted instantiation: main_loop.c:_fr_dbuff_advance_extend Unexecuted instantiation: map.c:_fr_dbuff_advance_extend Unexecuted instantiation: map_proc.c:_fr_dbuff_advance_extend Unexecuted instantiation: module.c:_fr_dbuff_advance_extend Unexecuted instantiation: module_method.c:_fr_dbuff_advance_extend Unexecuted instantiation: module_rlm.c:_fr_dbuff_advance_extend Unexecuted instantiation: paircmp.c:_fr_dbuff_advance_extend Unexecuted instantiation: pairmove.c:_fr_dbuff_advance_extend Unexecuted instantiation: password.c:_fr_dbuff_advance_extend Unexecuted instantiation: pool.c:_fr_dbuff_advance_extend Unexecuted instantiation: request.c:_fr_dbuff_advance_extend Unexecuted instantiation: request_data.c:_fr_dbuff_advance_extend Unexecuted instantiation: snmp.c:_fr_dbuff_advance_extend Unexecuted instantiation: state.c:_fr_dbuff_advance_extend Unexecuted instantiation: tmpl_dcursor.c:_fr_dbuff_advance_extend Unexecuted instantiation: tmpl_eval.c:_fr_dbuff_advance_extend Unexecuted instantiation: tmpl_tokenize.c:_fr_dbuff_advance_extend Unexecuted instantiation: trigger.c:_fr_dbuff_advance_extend Unexecuted instantiation: trunk.c:_fr_dbuff_advance_extend Unexecuted instantiation: users_file.c:_fr_dbuff_advance_extend Unexecuted instantiation: util.c:_fr_dbuff_advance_extend Unexecuted instantiation: virtual_servers.c:_fr_dbuff_advance_extend Unexecuted instantiation: call.c:_fr_dbuff_advance_extend Unexecuted instantiation: call_env.c:_fr_dbuff_advance_extend Unexecuted instantiation: caller.c:_fr_dbuff_advance_extend Unexecuted instantiation: catch.c:_fr_dbuff_advance_extend Unexecuted instantiation: child_request.c:_fr_dbuff_advance_extend Unexecuted instantiation: compile.c:_fr_dbuff_advance_extend Unexecuted instantiation: condition.c:_fr_dbuff_advance_extend Unexecuted instantiation: detach.c:_fr_dbuff_advance_extend Unexecuted instantiation: finally.c:_fr_dbuff_advance_extend Unexecuted instantiation: foreach.c:_fr_dbuff_advance_extend Unexecuted instantiation: function.c:_fr_dbuff_advance_extend Unexecuted instantiation: group.c:_fr_dbuff_advance_extend Unexecuted instantiation: interpret.c:_fr_dbuff_advance_extend Unexecuted instantiation: interpret_synchronous.c:_fr_dbuff_advance_extend Unexecuted instantiation: io.c:_fr_dbuff_advance_extend Unexecuted instantiation: limit.c:_fr_dbuff_advance_extend Unexecuted instantiation: load_balance.c:_fr_dbuff_advance_extend Unexecuted instantiation: map_builtin.c:_fr_dbuff_advance_extend Unexecuted instantiation: parallel.c:_fr_dbuff_advance_extend Unexecuted instantiation: return.c:_fr_dbuff_advance_extend Unexecuted instantiation: subrequest.c:_fr_dbuff_advance_extend Unexecuted instantiation: switch.c:_fr_dbuff_advance_extend Unexecuted instantiation: timeout.c:_fr_dbuff_advance_extend Unexecuted instantiation: tmpl.c:_fr_dbuff_advance_extend Unexecuted instantiation: try.c:_fr_dbuff_advance_extend Unexecuted instantiation: transaction.c:_fr_dbuff_advance_extend Unexecuted instantiation: xlat.c:_fr_dbuff_advance_extend Unexecuted instantiation: xlat_alloc.c:_fr_dbuff_advance_extend Unexecuted instantiation: xlat_builtin.c:_fr_dbuff_advance_extend Unexecuted instantiation: xlat_eval.c:_fr_dbuff_advance_extend Unexecuted instantiation: xlat_expr.c:_fr_dbuff_advance_extend Unexecuted instantiation: xlat_func.c:_fr_dbuff_advance_extend Unexecuted instantiation: xlat_inst.c:_fr_dbuff_advance_extend Unexecuted instantiation: xlat_pair.c:_fr_dbuff_advance_extend Unexecuted instantiation: xlat_purify.c:_fr_dbuff_advance_extend Unexecuted instantiation: xlat_redundant.c:_fr_dbuff_advance_extend Unexecuted instantiation: xlat_tokenize.c:_fr_dbuff_advance_extend Unexecuted instantiation: app_io.c:_fr_dbuff_advance_extend Unexecuted instantiation: channel.c:_fr_dbuff_advance_extend Unexecuted instantiation: coord.c:_fr_dbuff_advance_extend Unexecuted instantiation: coord_pair.c:_fr_dbuff_advance_extend Unexecuted instantiation: master.c:_fr_dbuff_advance_extend Unexecuted instantiation: network.c:_fr_dbuff_advance_extend Unexecuted instantiation: schedule.c:_fr_dbuff_advance_extend Unexecuted instantiation: thread.c:_fr_dbuff_advance_extend Unexecuted instantiation: worker.c:_fr_dbuff_advance_extend Unexecuted instantiation: vmps.c:_fr_dbuff_advance_extend |
1137 | | |
1138 | | /** Advance current'position in dbuff or marker by _len bytes (extending if necessary) |
1139 | | * |
1140 | | * @param[in] _dbuff_or_marker to advance. |
1141 | | * @param[in] _len How much to advance dbuff by. |
1142 | | * Must be a positive integer. |
1143 | | * @return |
1144 | | * - 0 not advanced. |
1145 | | * - >0 the number of bytes the dbuff or marker was advanced by. |
1146 | | * - <0 the number of bytes we'd need to complete the advance. |
1147 | | */ |
1148 | | #define fr_dbuff_advance_extend(_dbuff_or_marker, _len) \ |
1149 | | _fr_dbuff_advance(_fr_dbuff_current_ptr(_dbuff_or_marker), fr_dbuff_ptr(_dbuff_or_marker), \ |
1150 | | (_Generic((_len), \ |
1151 | | unsigned char : (size_t)(_len), \ |
1152 | | unsigned short : (size_t)(_len), \ |
1153 | | unsigned int : (size_t)(_len), \ |
1154 | | unsigned long : (size_t)(_len), \ |
1155 | | unsigned long long : (size_t)(_len), \ |
1156 | | int : (size_t)(_len) \ |
1157 | | ))) |
1158 | | |
1159 | | #define FR_DBUFF_BIND_EXTEND_RETURN(_dbuff_or_marker, _len) FR_DBUFF_RETURN(fr_dbuff_advance_extend, _dbuff_or_marker, _len) |
1160 | | |
1161 | | /** Reset the 'current' position of the dbuff or marker to the 'start' of the buffer |
1162 | | * |
1163 | | */ |
1164 | | #define fr_dbuff_set_to_start(_dbuff_or_marker) \ |
1165 | 0 | fr_dbuff_set(_dbuff_or_marker, fr_dbuff_start(_dbuff_or_marker)) |
1166 | | |
1167 | | /** Reset the 'current' position of the dbuff or marker to the 'end' of the buffer |
1168 | | * |
1169 | | */ |
1170 | | #define fr_dbuff_set_to_end(_dbuff_or_marker) \ |
1171 | | fr_dbuff_set(_dbuff_or_marker, fr_dbuff_end(_dbuff_or_marker)) |
1172 | | /** @} */ |
1173 | | |
1174 | | /** @name Marker management |
1175 | | * |
1176 | | * Markers serve two purposes: |
1177 | | * |
1178 | | * - Markers allow the caller to track content in a dbuff as the dbuff is extended. |
1179 | | * If the caller referred to content using a pointer into the underlying buffer, |
1180 | | * that pointer may be invalidated if the buffer were extended. |
1181 | | * |
1182 | | * - Markers prevent content being shifted out of the buffer during an extension. |
1183 | | * |
1184 | | * Most operations that can be performed on an #fr_dbuff_t can also be performed |
1185 | | * on a #fr_dbuff_marker_t. |
1186 | | * |
1187 | | * It is recommended that markers be created against a stack-frame-local dbuff so |
1188 | | * that they are automatically released when the framed is popped. |
1189 | | * |
1190 | | * @see fr_dbuff_marker_t |
1191 | | * |
1192 | | * @{ |
1193 | | */ |
1194 | | |
1195 | | /** Initialises a new marker pointing to the 'current' position of the dbuff |
1196 | | * |
1197 | | * @param[out] m to initialise. |
1198 | | * @param[in] dbuff to associate marker with. |
1199 | | * @return The position the marker was set to. |
1200 | | */ |
1201 | | static inline uint8_t *fr_dbuff_marker(fr_dbuff_marker_t *m, fr_dbuff_t *dbuff) |
1202 | 4.77M | { |
1203 | 4.77M | *m = (fr_dbuff_marker_t){ |
1204 | 4.77M | .next = dbuff->m, /* Link into the head */ |
1205 | 4.77M | .p = dbuff->p, /* Set the current position in the dbuff */ |
1206 | 4.77M | .parent = dbuff /* Record which dbuff this marker was associated with */ |
1207 | 4.77M | }; |
1208 | 4.77M | dbuff->m = m; |
1209 | | |
1210 | 4.77M | return dbuff->p; |
1211 | 4.77M | } Unexecuted instantiation: fuzzer_dhcpv6.c:fr_dbuff_marker Unexecuted instantiation: fuzzer_util.c:fr_dbuff_marker Unexecuted instantiation: fuzzer_dhcpv4.c:fr_dbuff_marker Unexecuted instantiation: fuzzer_cbor.c:fr_dbuff_marker Unexecuted instantiation: fuzzer_der.c:fr_dbuff_marker Unexecuted instantiation: fuzzer_dns.c:fr_dbuff_marker Unexecuted instantiation: fuzzer_tacacs.c:fr_dbuff_marker Unexecuted instantiation: fuzzer_bfd.c:fr_dbuff_marker Unexecuted instantiation: fuzzer_radius.c:fr_dbuff_marker Unexecuted instantiation: fuzzer_tftp.c:fr_dbuff_marker Unexecuted instantiation: fuzzer_vmps.c:fr_dbuff_marker Unexecuted instantiation: base16.c:fr_dbuff_marker Unexecuted instantiation: base32.c:fr_dbuff_marker Unexecuted instantiation: base64.c:fr_dbuff_marker Unexecuted instantiation: calc.c:fr_dbuff_marker Unexecuted instantiation: cbor.c:fr_dbuff_marker Unexecuted instantiation: dbuff.c:fr_dbuff_marker Unexecuted instantiation: dict_ext.c:fr_dbuff_marker Unexecuted instantiation: dict_fixup.c:fr_dbuff_marker Unexecuted instantiation: dict_print.c:fr_dbuff_marker Unexecuted instantiation: dict_test.c:fr_dbuff_marker Unexecuted instantiation: dict_tokenize.c:fr_dbuff_marker Unexecuted instantiation: dict_unknown.c:fr_dbuff_marker Unexecuted instantiation: dict_util.c:fr_dbuff_marker Unexecuted instantiation: dict_validate.c:fr_dbuff_marker Unexecuted instantiation: dl.c:fr_dbuff_marker Unexecuted instantiation: dns.c:fr_dbuff_marker Unexecuted instantiation: edit.c:fr_dbuff_marker Unexecuted instantiation: encode.c:fr_dbuff_marker Unexecuted instantiation: timer.c:fr_dbuff_marker Unexecuted instantiation: file.c:fr_dbuff_marker Unexecuted instantiation: inet.c:fr_dbuff_marker Unexecuted instantiation: iovec.c:fr_dbuff_marker Unexecuted instantiation: log.c:fr_dbuff_marker Unexecuted instantiation: misc.c:fr_dbuff_marker Unexecuted instantiation: packet.c:fr_dbuff_marker Unexecuted instantiation: pair.c:fr_dbuff_marker Unexecuted instantiation: pair_inline.c:fr_dbuff_marker Unexecuted instantiation: pair_legacy.c:fr_dbuff_marker Unexecuted instantiation: pair_print.c:fr_dbuff_marker Unexecuted instantiation: pair_tokenize.c:fr_dbuff_marker Unexecuted instantiation: print.c:fr_dbuff_marker Unexecuted instantiation: proto.c:fr_dbuff_marker Unexecuted instantiation: regex.c:fr_dbuff_marker Unexecuted instantiation: socket.c:fr_dbuff_marker Unexecuted instantiation: stats.c:fr_dbuff_marker Unexecuted instantiation: struct.c:fr_dbuff_marker Unexecuted instantiation: types.c:fr_dbuff_marker Unexecuted instantiation: uri.c:fr_dbuff_marker Unexecuted instantiation: value.c:fr_dbuff_marker Unexecuted instantiation: fuzzer.c:fr_dbuff_marker Unexecuted instantiation: base.c:fr_dbuff_marker Unexecuted instantiation: raw.c:fr_dbuff_marker Unexecuted instantiation: udp.c:fr_dbuff_marker Line | Count | Source | 1202 | 4.77M | { | 1203 | 4.77M | *m = (fr_dbuff_marker_t){ | 1204 | 4.77M | .next = dbuff->m, /* Link into the head */ | 1205 | 4.77M | .p = dbuff->p, /* Set the current position in the dbuff */ | 1206 | 4.77M | .parent = dbuff /* Record which dbuff this marker was associated with */ | 1207 | 4.77M | }; | 1208 | 4.77M | dbuff->m = m; | 1209 | | | 1210 | 4.77M | return dbuff->p; | 1211 | 4.77M | } |
Unexecuted instantiation: json.c:fr_dbuff_marker Unexecuted instantiation: jpath.c:fr_dbuff_marker Unexecuted instantiation: bio.c:fr_dbuff_marker Unexecuted instantiation: cache.c:fr_dbuff_marker Unexecuted instantiation: cert.c:fr_dbuff_marker Unexecuted instantiation: conf.c:fr_dbuff_marker Unexecuted instantiation: ctx.c:fr_dbuff_marker Unexecuted instantiation: engine.c:fr_dbuff_marker Unexecuted instantiation: pairs.c:fr_dbuff_marker Unexecuted instantiation: session.c:fr_dbuff_marker Unexecuted instantiation: strerror.c:fr_dbuff_marker Unexecuted instantiation: utils.c:fr_dbuff_marker Unexecuted instantiation: verify.c:fr_dbuff_marker Unexecuted instantiation: version.c:fr_dbuff_marker Unexecuted instantiation: virtual_server.c:fr_dbuff_marker Unexecuted instantiation: list.c:fr_dbuff_marker Unexecuted instantiation: tcp.c:fr_dbuff_marker Unexecuted instantiation: abinary.c:fr_dbuff_marker Unexecuted instantiation: auth.c:fr_dbuff_marker Unexecuted instantiation: cf_file.c:fr_dbuff_marker Unexecuted instantiation: cf_parse.c:fr_dbuff_marker Unexecuted instantiation: cf_util.c:fr_dbuff_marker Unexecuted instantiation: client.c:fr_dbuff_marker Unexecuted instantiation: command.c:fr_dbuff_marker Unexecuted instantiation: connection.c:fr_dbuff_marker Unexecuted instantiation: dependency.c:fr_dbuff_marker Unexecuted instantiation: dl_module.c:fr_dbuff_marker Unexecuted instantiation: exec.c:fr_dbuff_marker Unexecuted instantiation: exec_legacy.c:fr_dbuff_marker Unexecuted instantiation: exfile.c:fr_dbuff_marker Unexecuted instantiation: global_lib.c:fr_dbuff_marker Unexecuted instantiation: main_config.c:fr_dbuff_marker Unexecuted instantiation: main_loop.c:fr_dbuff_marker Unexecuted instantiation: map.c:fr_dbuff_marker Unexecuted instantiation: map_proc.c:fr_dbuff_marker Unexecuted instantiation: module.c:fr_dbuff_marker Unexecuted instantiation: module_method.c:fr_dbuff_marker Unexecuted instantiation: module_rlm.c:fr_dbuff_marker Unexecuted instantiation: paircmp.c:fr_dbuff_marker Unexecuted instantiation: pairmove.c:fr_dbuff_marker Unexecuted instantiation: password.c:fr_dbuff_marker Unexecuted instantiation: pool.c:fr_dbuff_marker Unexecuted instantiation: request.c:fr_dbuff_marker Unexecuted instantiation: request_data.c:fr_dbuff_marker Unexecuted instantiation: snmp.c:fr_dbuff_marker Unexecuted instantiation: state.c:fr_dbuff_marker Unexecuted instantiation: tmpl_dcursor.c:fr_dbuff_marker Unexecuted instantiation: tmpl_eval.c:fr_dbuff_marker Unexecuted instantiation: tmpl_tokenize.c:fr_dbuff_marker Unexecuted instantiation: trigger.c:fr_dbuff_marker Unexecuted instantiation: trunk.c:fr_dbuff_marker Unexecuted instantiation: users_file.c:fr_dbuff_marker Unexecuted instantiation: util.c:fr_dbuff_marker Unexecuted instantiation: virtual_servers.c:fr_dbuff_marker Unexecuted instantiation: call.c:fr_dbuff_marker Unexecuted instantiation: call_env.c:fr_dbuff_marker Unexecuted instantiation: caller.c:fr_dbuff_marker Unexecuted instantiation: catch.c:fr_dbuff_marker Unexecuted instantiation: child_request.c:fr_dbuff_marker Unexecuted instantiation: compile.c:fr_dbuff_marker Unexecuted instantiation: condition.c:fr_dbuff_marker Unexecuted instantiation: detach.c:fr_dbuff_marker Unexecuted instantiation: finally.c:fr_dbuff_marker Unexecuted instantiation: foreach.c:fr_dbuff_marker Unexecuted instantiation: function.c:fr_dbuff_marker Unexecuted instantiation: group.c:fr_dbuff_marker Unexecuted instantiation: interpret.c:fr_dbuff_marker Unexecuted instantiation: interpret_synchronous.c:fr_dbuff_marker Unexecuted instantiation: io.c:fr_dbuff_marker Unexecuted instantiation: limit.c:fr_dbuff_marker Unexecuted instantiation: load_balance.c:fr_dbuff_marker Unexecuted instantiation: map_builtin.c:fr_dbuff_marker Unexecuted instantiation: parallel.c:fr_dbuff_marker Unexecuted instantiation: return.c:fr_dbuff_marker Unexecuted instantiation: subrequest.c:fr_dbuff_marker Unexecuted instantiation: switch.c:fr_dbuff_marker Unexecuted instantiation: timeout.c:fr_dbuff_marker Unexecuted instantiation: tmpl.c:fr_dbuff_marker Unexecuted instantiation: try.c:fr_dbuff_marker Unexecuted instantiation: transaction.c:fr_dbuff_marker Unexecuted instantiation: xlat.c:fr_dbuff_marker Unexecuted instantiation: xlat_alloc.c:fr_dbuff_marker Unexecuted instantiation: xlat_builtin.c:fr_dbuff_marker Unexecuted instantiation: xlat_eval.c:fr_dbuff_marker Unexecuted instantiation: xlat_expr.c:fr_dbuff_marker Unexecuted instantiation: xlat_func.c:fr_dbuff_marker Unexecuted instantiation: xlat_inst.c:fr_dbuff_marker Unexecuted instantiation: xlat_pair.c:fr_dbuff_marker Unexecuted instantiation: xlat_purify.c:fr_dbuff_marker Unexecuted instantiation: xlat_redundant.c:fr_dbuff_marker Unexecuted instantiation: xlat_tokenize.c:fr_dbuff_marker Unexecuted instantiation: app_io.c:fr_dbuff_marker Unexecuted instantiation: channel.c:fr_dbuff_marker Unexecuted instantiation: coord.c:fr_dbuff_marker Unexecuted instantiation: coord_pair.c:fr_dbuff_marker Unexecuted instantiation: master.c:fr_dbuff_marker Unexecuted instantiation: network.c:fr_dbuff_marker Unexecuted instantiation: schedule.c:fr_dbuff_marker Unexecuted instantiation: thread.c:fr_dbuff_marker Unexecuted instantiation: worker.c:fr_dbuff_marker Unexecuted instantiation: vmps.c:fr_dbuff_marker |
1212 | | |
1213 | | /** Releases the specified marker and any markers added before it |
1214 | | * |
1215 | | * Pointers should be released in the inverse order to allocation. |
1216 | | * |
1217 | | * @param[in] m to release. |
1218 | | */ |
1219 | | static inline void fr_dbuff_marker_release(fr_dbuff_marker_t *m) |
1220 | 0 | { |
1221 | 0 | m->parent->m = m->next; |
1222 | 0 |
|
1223 | 0 | #ifndef NDEBUG |
1224 | 0 | memset(m, 0, sizeof(*m)); /* Use after release */ |
1225 | 0 | #endif |
1226 | 0 | } Unexecuted instantiation: fuzzer_dhcpv6.c:fr_dbuff_marker_release Unexecuted instantiation: fuzzer_util.c:fr_dbuff_marker_release Unexecuted instantiation: fuzzer_dhcpv4.c:fr_dbuff_marker_release Unexecuted instantiation: fuzzer_cbor.c:fr_dbuff_marker_release Unexecuted instantiation: fuzzer_der.c:fr_dbuff_marker_release Unexecuted instantiation: fuzzer_dns.c:fr_dbuff_marker_release Unexecuted instantiation: fuzzer_tacacs.c:fr_dbuff_marker_release Unexecuted instantiation: fuzzer_bfd.c:fr_dbuff_marker_release Unexecuted instantiation: fuzzer_radius.c:fr_dbuff_marker_release Unexecuted instantiation: fuzzer_tftp.c:fr_dbuff_marker_release Unexecuted instantiation: fuzzer_vmps.c:fr_dbuff_marker_release Unexecuted instantiation: base16.c:fr_dbuff_marker_release Unexecuted instantiation: base32.c:fr_dbuff_marker_release Unexecuted instantiation: base64.c:fr_dbuff_marker_release Unexecuted instantiation: calc.c:fr_dbuff_marker_release Unexecuted instantiation: cbor.c:fr_dbuff_marker_release Unexecuted instantiation: dbuff.c:fr_dbuff_marker_release Unexecuted instantiation: decode.c:fr_dbuff_marker_release Unexecuted instantiation: dict_ext.c:fr_dbuff_marker_release Unexecuted instantiation: dict_fixup.c:fr_dbuff_marker_release Unexecuted instantiation: dict_print.c:fr_dbuff_marker_release Unexecuted instantiation: dict_test.c:fr_dbuff_marker_release Unexecuted instantiation: dict_tokenize.c:fr_dbuff_marker_release Unexecuted instantiation: dict_unknown.c:fr_dbuff_marker_release Unexecuted instantiation: dict_util.c:fr_dbuff_marker_release Unexecuted instantiation: dict_validate.c:fr_dbuff_marker_release Unexecuted instantiation: dl.c:fr_dbuff_marker_release Unexecuted instantiation: dns.c:fr_dbuff_marker_release Unexecuted instantiation: edit.c:fr_dbuff_marker_release Unexecuted instantiation: encode.c:fr_dbuff_marker_release Unexecuted instantiation: timer.c:fr_dbuff_marker_release Unexecuted instantiation: file.c:fr_dbuff_marker_release Unexecuted instantiation: inet.c:fr_dbuff_marker_release Unexecuted instantiation: iovec.c:fr_dbuff_marker_release Unexecuted instantiation: log.c:fr_dbuff_marker_release Unexecuted instantiation: misc.c:fr_dbuff_marker_release Unexecuted instantiation: packet.c:fr_dbuff_marker_release Unexecuted instantiation: pair.c:fr_dbuff_marker_release Unexecuted instantiation: pair_inline.c:fr_dbuff_marker_release Unexecuted instantiation: pair_legacy.c:fr_dbuff_marker_release Unexecuted instantiation: pair_print.c:fr_dbuff_marker_release Unexecuted instantiation: pair_tokenize.c:fr_dbuff_marker_release Unexecuted instantiation: print.c:fr_dbuff_marker_release Unexecuted instantiation: proto.c:fr_dbuff_marker_release Unexecuted instantiation: regex.c:fr_dbuff_marker_release Unexecuted instantiation: socket.c:fr_dbuff_marker_release Unexecuted instantiation: stats.c:fr_dbuff_marker_release Unexecuted instantiation: struct.c:fr_dbuff_marker_release Unexecuted instantiation: types.c:fr_dbuff_marker_release Unexecuted instantiation: uri.c:fr_dbuff_marker_release Unexecuted instantiation: value.c:fr_dbuff_marker_release Unexecuted instantiation: fuzzer.c:fr_dbuff_marker_release Unexecuted instantiation: base.c:fr_dbuff_marker_release Unexecuted instantiation: raw.c:fr_dbuff_marker_release Unexecuted instantiation: udp.c:fr_dbuff_marker_release Unexecuted instantiation: json.c:fr_dbuff_marker_release Unexecuted instantiation: jpath.c:fr_dbuff_marker_release Unexecuted instantiation: bio.c:fr_dbuff_marker_release Unexecuted instantiation: cache.c:fr_dbuff_marker_release Unexecuted instantiation: cert.c:fr_dbuff_marker_release Unexecuted instantiation: conf.c:fr_dbuff_marker_release Unexecuted instantiation: ctx.c:fr_dbuff_marker_release Unexecuted instantiation: engine.c:fr_dbuff_marker_release Unexecuted instantiation: pairs.c:fr_dbuff_marker_release Unexecuted instantiation: session.c:fr_dbuff_marker_release Unexecuted instantiation: strerror.c:fr_dbuff_marker_release Unexecuted instantiation: utils.c:fr_dbuff_marker_release Unexecuted instantiation: verify.c:fr_dbuff_marker_release Unexecuted instantiation: version.c:fr_dbuff_marker_release Unexecuted instantiation: virtual_server.c:fr_dbuff_marker_release Unexecuted instantiation: list.c:fr_dbuff_marker_release Unexecuted instantiation: tcp.c:fr_dbuff_marker_release Unexecuted instantiation: abinary.c:fr_dbuff_marker_release Unexecuted instantiation: auth.c:fr_dbuff_marker_release Unexecuted instantiation: cf_file.c:fr_dbuff_marker_release Unexecuted instantiation: cf_parse.c:fr_dbuff_marker_release Unexecuted instantiation: cf_util.c:fr_dbuff_marker_release Unexecuted instantiation: client.c:fr_dbuff_marker_release Unexecuted instantiation: command.c:fr_dbuff_marker_release Unexecuted instantiation: connection.c:fr_dbuff_marker_release Unexecuted instantiation: dependency.c:fr_dbuff_marker_release Unexecuted instantiation: dl_module.c:fr_dbuff_marker_release Unexecuted instantiation: exec.c:fr_dbuff_marker_release Unexecuted instantiation: exec_legacy.c:fr_dbuff_marker_release Unexecuted instantiation: exfile.c:fr_dbuff_marker_release Unexecuted instantiation: global_lib.c:fr_dbuff_marker_release Unexecuted instantiation: main_config.c:fr_dbuff_marker_release Unexecuted instantiation: main_loop.c:fr_dbuff_marker_release Unexecuted instantiation: map.c:fr_dbuff_marker_release Unexecuted instantiation: map_proc.c:fr_dbuff_marker_release Unexecuted instantiation: module.c:fr_dbuff_marker_release Unexecuted instantiation: module_method.c:fr_dbuff_marker_release Unexecuted instantiation: module_rlm.c:fr_dbuff_marker_release Unexecuted instantiation: paircmp.c:fr_dbuff_marker_release Unexecuted instantiation: pairmove.c:fr_dbuff_marker_release Unexecuted instantiation: password.c:fr_dbuff_marker_release Unexecuted instantiation: pool.c:fr_dbuff_marker_release Unexecuted instantiation: request.c:fr_dbuff_marker_release Unexecuted instantiation: request_data.c:fr_dbuff_marker_release Unexecuted instantiation: snmp.c:fr_dbuff_marker_release Unexecuted instantiation: state.c:fr_dbuff_marker_release Unexecuted instantiation: tmpl_dcursor.c:fr_dbuff_marker_release Unexecuted instantiation: tmpl_eval.c:fr_dbuff_marker_release Unexecuted instantiation: tmpl_tokenize.c:fr_dbuff_marker_release Unexecuted instantiation: trigger.c:fr_dbuff_marker_release Unexecuted instantiation: trunk.c:fr_dbuff_marker_release Unexecuted instantiation: users_file.c:fr_dbuff_marker_release Unexecuted instantiation: util.c:fr_dbuff_marker_release Unexecuted instantiation: virtual_servers.c:fr_dbuff_marker_release Unexecuted instantiation: call.c:fr_dbuff_marker_release Unexecuted instantiation: call_env.c:fr_dbuff_marker_release Unexecuted instantiation: caller.c:fr_dbuff_marker_release Unexecuted instantiation: catch.c:fr_dbuff_marker_release Unexecuted instantiation: child_request.c:fr_dbuff_marker_release Unexecuted instantiation: compile.c:fr_dbuff_marker_release Unexecuted instantiation: condition.c:fr_dbuff_marker_release Unexecuted instantiation: detach.c:fr_dbuff_marker_release Unexecuted instantiation: finally.c:fr_dbuff_marker_release Unexecuted instantiation: foreach.c:fr_dbuff_marker_release Unexecuted instantiation: function.c:fr_dbuff_marker_release Unexecuted instantiation: group.c:fr_dbuff_marker_release Unexecuted instantiation: interpret.c:fr_dbuff_marker_release Unexecuted instantiation: interpret_synchronous.c:fr_dbuff_marker_release Unexecuted instantiation: io.c:fr_dbuff_marker_release Unexecuted instantiation: limit.c:fr_dbuff_marker_release Unexecuted instantiation: load_balance.c:fr_dbuff_marker_release Unexecuted instantiation: map_builtin.c:fr_dbuff_marker_release Unexecuted instantiation: parallel.c:fr_dbuff_marker_release Unexecuted instantiation: return.c:fr_dbuff_marker_release Unexecuted instantiation: subrequest.c:fr_dbuff_marker_release Unexecuted instantiation: switch.c:fr_dbuff_marker_release Unexecuted instantiation: timeout.c:fr_dbuff_marker_release Unexecuted instantiation: tmpl.c:fr_dbuff_marker_release Unexecuted instantiation: try.c:fr_dbuff_marker_release Unexecuted instantiation: transaction.c:fr_dbuff_marker_release Unexecuted instantiation: xlat.c:fr_dbuff_marker_release Unexecuted instantiation: xlat_alloc.c:fr_dbuff_marker_release Unexecuted instantiation: xlat_builtin.c:fr_dbuff_marker_release Unexecuted instantiation: xlat_eval.c:fr_dbuff_marker_release Unexecuted instantiation: xlat_expr.c:fr_dbuff_marker_release Unexecuted instantiation: xlat_func.c:fr_dbuff_marker_release Unexecuted instantiation: xlat_inst.c:fr_dbuff_marker_release Unexecuted instantiation: xlat_pair.c:fr_dbuff_marker_release Unexecuted instantiation: xlat_purify.c:fr_dbuff_marker_release Unexecuted instantiation: xlat_redundant.c:fr_dbuff_marker_release Unexecuted instantiation: xlat_tokenize.c:fr_dbuff_marker_release Unexecuted instantiation: app_io.c:fr_dbuff_marker_release Unexecuted instantiation: channel.c:fr_dbuff_marker_release Unexecuted instantiation: coord.c:fr_dbuff_marker_release Unexecuted instantiation: coord_pair.c:fr_dbuff_marker_release Unexecuted instantiation: master.c:fr_dbuff_marker_release Unexecuted instantiation: network.c:fr_dbuff_marker_release Unexecuted instantiation: schedule.c:fr_dbuff_marker_release Unexecuted instantiation: thread.c:fr_dbuff_marker_release Unexecuted instantiation: worker.c:fr_dbuff_marker_release Unexecuted instantiation: vmps.c:fr_dbuff_marker_release |
1227 | | |
1228 | | /** Trims the linked list back to the specified pointer and return how many bytes marker was behind p |
1229 | | * |
1230 | | * Pointers should be released in the inverse order to allocation. |
1231 | | * |
1232 | | * Alternatively the oldest pointer can be released, resulting in any newer pointer |
1233 | | * also being removed from the list. |
1234 | | * |
1235 | | * @param[in] m to release. |
1236 | | * @return |
1237 | | * - 0 marker is ahead of p. |
1238 | | * - >0 the number of bytes the marker is behind p. |
1239 | | */ |
1240 | | static inline size_t fr_dbuff_marker_release_behind(fr_dbuff_marker_t *m) |
1241 | 0 | { |
1242 | 0 | size_t len = fr_dbuff_behind(m); |
1243 | 0 | fr_dbuff_marker_release(m); |
1244 | 0 | return len; |
1245 | 0 | } Unexecuted instantiation: fuzzer_dhcpv6.c:fr_dbuff_marker_release_behind Unexecuted instantiation: fuzzer_util.c:fr_dbuff_marker_release_behind Unexecuted instantiation: fuzzer_dhcpv4.c:fr_dbuff_marker_release_behind Unexecuted instantiation: fuzzer_cbor.c:fr_dbuff_marker_release_behind Unexecuted instantiation: fuzzer_der.c:fr_dbuff_marker_release_behind Unexecuted instantiation: fuzzer_dns.c:fr_dbuff_marker_release_behind Unexecuted instantiation: fuzzer_tacacs.c:fr_dbuff_marker_release_behind Unexecuted instantiation: fuzzer_bfd.c:fr_dbuff_marker_release_behind Unexecuted instantiation: fuzzer_radius.c:fr_dbuff_marker_release_behind Unexecuted instantiation: fuzzer_tftp.c:fr_dbuff_marker_release_behind Unexecuted instantiation: fuzzer_vmps.c:fr_dbuff_marker_release_behind Unexecuted instantiation: base16.c:fr_dbuff_marker_release_behind Unexecuted instantiation: base32.c:fr_dbuff_marker_release_behind Unexecuted instantiation: base64.c:fr_dbuff_marker_release_behind Unexecuted instantiation: calc.c:fr_dbuff_marker_release_behind Unexecuted instantiation: cbor.c:fr_dbuff_marker_release_behind Unexecuted instantiation: dbuff.c:fr_dbuff_marker_release_behind Unexecuted instantiation: decode.c:fr_dbuff_marker_release_behind Unexecuted instantiation: dict_ext.c:fr_dbuff_marker_release_behind Unexecuted instantiation: dict_fixup.c:fr_dbuff_marker_release_behind Unexecuted instantiation: dict_print.c:fr_dbuff_marker_release_behind Unexecuted instantiation: dict_test.c:fr_dbuff_marker_release_behind Unexecuted instantiation: dict_tokenize.c:fr_dbuff_marker_release_behind Unexecuted instantiation: dict_unknown.c:fr_dbuff_marker_release_behind Unexecuted instantiation: dict_util.c:fr_dbuff_marker_release_behind Unexecuted instantiation: dict_validate.c:fr_dbuff_marker_release_behind Unexecuted instantiation: dl.c:fr_dbuff_marker_release_behind Unexecuted instantiation: dns.c:fr_dbuff_marker_release_behind Unexecuted instantiation: edit.c:fr_dbuff_marker_release_behind Unexecuted instantiation: encode.c:fr_dbuff_marker_release_behind Unexecuted instantiation: timer.c:fr_dbuff_marker_release_behind Unexecuted instantiation: file.c:fr_dbuff_marker_release_behind Unexecuted instantiation: inet.c:fr_dbuff_marker_release_behind Unexecuted instantiation: iovec.c:fr_dbuff_marker_release_behind Unexecuted instantiation: log.c:fr_dbuff_marker_release_behind Unexecuted instantiation: misc.c:fr_dbuff_marker_release_behind Unexecuted instantiation: packet.c:fr_dbuff_marker_release_behind Unexecuted instantiation: pair.c:fr_dbuff_marker_release_behind Unexecuted instantiation: pair_inline.c:fr_dbuff_marker_release_behind Unexecuted instantiation: pair_legacy.c:fr_dbuff_marker_release_behind Unexecuted instantiation: pair_print.c:fr_dbuff_marker_release_behind Unexecuted instantiation: pair_tokenize.c:fr_dbuff_marker_release_behind Unexecuted instantiation: print.c:fr_dbuff_marker_release_behind Unexecuted instantiation: proto.c:fr_dbuff_marker_release_behind Unexecuted instantiation: regex.c:fr_dbuff_marker_release_behind Unexecuted instantiation: socket.c:fr_dbuff_marker_release_behind Unexecuted instantiation: stats.c:fr_dbuff_marker_release_behind Unexecuted instantiation: struct.c:fr_dbuff_marker_release_behind Unexecuted instantiation: types.c:fr_dbuff_marker_release_behind Unexecuted instantiation: uri.c:fr_dbuff_marker_release_behind Unexecuted instantiation: value.c:fr_dbuff_marker_release_behind Unexecuted instantiation: fuzzer.c:fr_dbuff_marker_release_behind Unexecuted instantiation: base.c:fr_dbuff_marker_release_behind Unexecuted instantiation: raw.c:fr_dbuff_marker_release_behind Unexecuted instantiation: udp.c:fr_dbuff_marker_release_behind Unexecuted instantiation: json.c:fr_dbuff_marker_release_behind Unexecuted instantiation: jpath.c:fr_dbuff_marker_release_behind Unexecuted instantiation: bio.c:fr_dbuff_marker_release_behind Unexecuted instantiation: cache.c:fr_dbuff_marker_release_behind Unexecuted instantiation: cert.c:fr_dbuff_marker_release_behind Unexecuted instantiation: conf.c:fr_dbuff_marker_release_behind Unexecuted instantiation: ctx.c:fr_dbuff_marker_release_behind Unexecuted instantiation: engine.c:fr_dbuff_marker_release_behind Unexecuted instantiation: pairs.c:fr_dbuff_marker_release_behind Unexecuted instantiation: session.c:fr_dbuff_marker_release_behind Unexecuted instantiation: strerror.c:fr_dbuff_marker_release_behind Unexecuted instantiation: utils.c:fr_dbuff_marker_release_behind Unexecuted instantiation: verify.c:fr_dbuff_marker_release_behind Unexecuted instantiation: version.c:fr_dbuff_marker_release_behind Unexecuted instantiation: virtual_server.c:fr_dbuff_marker_release_behind Unexecuted instantiation: list.c:fr_dbuff_marker_release_behind Unexecuted instantiation: tcp.c:fr_dbuff_marker_release_behind Unexecuted instantiation: abinary.c:fr_dbuff_marker_release_behind Unexecuted instantiation: auth.c:fr_dbuff_marker_release_behind Unexecuted instantiation: cf_file.c:fr_dbuff_marker_release_behind Unexecuted instantiation: cf_parse.c:fr_dbuff_marker_release_behind Unexecuted instantiation: cf_util.c:fr_dbuff_marker_release_behind Unexecuted instantiation: client.c:fr_dbuff_marker_release_behind Unexecuted instantiation: command.c:fr_dbuff_marker_release_behind Unexecuted instantiation: connection.c:fr_dbuff_marker_release_behind Unexecuted instantiation: dependency.c:fr_dbuff_marker_release_behind Unexecuted instantiation: dl_module.c:fr_dbuff_marker_release_behind Unexecuted instantiation: exec.c:fr_dbuff_marker_release_behind Unexecuted instantiation: exec_legacy.c:fr_dbuff_marker_release_behind Unexecuted instantiation: exfile.c:fr_dbuff_marker_release_behind Unexecuted instantiation: global_lib.c:fr_dbuff_marker_release_behind Unexecuted instantiation: main_config.c:fr_dbuff_marker_release_behind Unexecuted instantiation: main_loop.c:fr_dbuff_marker_release_behind Unexecuted instantiation: map.c:fr_dbuff_marker_release_behind Unexecuted instantiation: map_proc.c:fr_dbuff_marker_release_behind Unexecuted instantiation: module.c:fr_dbuff_marker_release_behind Unexecuted instantiation: module_method.c:fr_dbuff_marker_release_behind Unexecuted instantiation: module_rlm.c:fr_dbuff_marker_release_behind Unexecuted instantiation: paircmp.c:fr_dbuff_marker_release_behind Unexecuted instantiation: pairmove.c:fr_dbuff_marker_release_behind Unexecuted instantiation: password.c:fr_dbuff_marker_release_behind Unexecuted instantiation: pool.c:fr_dbuff_marker_release_behind Unexecuted instantiation: request.c:fr_dbuff_marker_release_behind Unexecuted instantiation: request_data.c:fr_dbuff_marker_release_behind Unexecuted instantiation: snmp.c:fr_dbuff_marker_release_behind Unexecuted instantiation: state.c:fr_dbuff_marker_release_behind Unexecuted instantiation: tmpl_dcursor.c:fr_dbuff_marker_release_behind Unexecuted instantiation: tmpl_eval.c:fr_dbuff_marker_release_behind Unexecuted instantiation: tmpl_tokenize.c:fr_dbuff_marker_release_behind Unexecuted instantiation: trigger.c:fr_dbuff_marker_release_behind Unexecuted instantiation: trunk.c:fr_dbuff_marker_release_behind Unexecuted instantiation: users_file.c:fr_dbuff_marker_release_behind Unexecuted instantiation: util.c:fr_dbuff_marker_release_behind Unexecuted instantiation: virtual_servers.c:fr_dbuff_marker_release_behind Unexecuted instantiation: call.c:fr_dbuff_marker_release_behind Unexecuted instantiation: call_env.c:fr_dbuff_marker_release_behind Unexecuted instantiation: caller.c:fr_dbuff_marker_release_behind Unexecuted instantiation: catch.c:fr_dbuff_marker_release_behind Unexecuted instantiation: child_request.c:fr_dbuff_marker_release_behind Unexecuted instantiation: compile.c:fr_dbuff_marker_release_behind Unexecuted instantiation: condition.c:fr_dbuff_marker_release_behind Unexecuted instantiation: detach.c:fr_dbuff_marker_release_behind Unexecuted instantiation: finally.c:fr_dbuff_marker_release_behind Unexecuted instantiation: foreach.c:fr_dbuff_marker_release_behind Unexecuted instantiation: function.c:fr_dbuff_marker_release_behind Unexecuted instantiation: group.c:fr_dbuff_marker_release_behind Unexecuted instantiation: interpret.c:fr_dbuff_marker_release_behind Unexecuted instantiation: interpret_synchronous.c:fr_dbuff_marker_release_behind Unexecuted instantiation: io.c:fr_dbuff_marker_release_behind Unexecuted instantiation: limit.c:fr_dbuff_marker_release_behind Unexecuted instantiation: load_balance.c:fr_dbuff_marker_release_behind Unexecuted instantiation: map_builtin.c:fr_dbuff_marker_release_behind Unexecuted instantiation: parallel.c:fr_dbuff_marker_release_behind Unexecuted instantiation: return.c:fr_dbuff_marker_release_behind Unexecuted instantiation: subrequest.c:fr_dbuff_marker_release_behind Unexecuted instantiation: switch.c:fr_dbuff_marker_release_behind Unexecuted instantiation: timeout.c:fr_dbuff_marker_release_behind Unexecuted instantiation: tmpl.c:fr_dbuff_marker_release_behind Unexecuted instantiation: try.c:fr_dbuff_marker_release_behind Unexecuted instantiation: transaction.c:fr_dbuff_marker_release_behind Unexecuted instantiation: xlat.c:fr_dbuff_marker_release_behind Unexecuted instantiation: xlat_alloc.c:fr_dbuff_marker_release_behind Unexecuted instantiation: xlat_builtin.c:fr_dbuff_marker_release_behind Unexecuted instantiation: xlat_eval.c:fr_dbuff_marker_release_behind Unexecuted instantiation: xlat_expr.c:fr_dbuff_marker_release_behind Unexecuted instantiation: xlat_func.c:fr_dbuff_marker_release_behind Unexecuted instantiation: xlat_inst.c:fr_dbuff_marker_release_behind Unexecuted instantiation: xlat_pair.c:fr_dbuff_marker_release_behind Unexecuted instantiation: xlat_purify.c:fr_dbuff_marker_release_behind Unexecuted instantiation: xlat_redundant.c:fr_dbuff_marker_release_behind Unexecuted instantiation: xlat_tokenize.c:fr_dbuff_marker_release_behind Unexecuted instantiation: app_io.c:fr_dbuff_marker_release_behind Unexecuted instantiation: channel.c:fr_dbuff_marker_release_behind Unexecuted instantiation: coord.c:fr_dbuff_marker_release_behind Unexecuted instantiation: coord_pair.c:fr_dbuff_marker_release_behind Unexecuted instantiation: master.c:fr_dbuff_marker_release_behind Unexecuted instantiation: network.c:fr_dbuff_marker_release_behind Unexecuted instantiation: schedule.c:fr_dbuff_marker_release_behind Unexecuted instantiation: thread.c:fr_dbuff_marker_release_behind Unexecuted instantiation: worker.c:fr_dbuff_marker_release_behind Unexecuted instantiation: vmps.c:fr_dbuff_marker_release_behind |
1246 | | |
1247 | | /** Trims the linked list back to the specified pointer and return how many bytes marker was ahead of p |
1248 | | * |
1249 | | * Pointers should be released in the inverse order to allocation. |
1250 | | * |
1251 | | * Alternatively the oldest pointer can be released, resulting in any newer pointer |
1252 | | * also being removed from the list. |
1253 | | * |
1254 | | * @param[in] m to release. |
1255 | | * @return |
1256 | | * - 0 marker is ahead of p. |
1257 | | * - >0 the number of bytes the marker is behind p. |
1258 | | */ |
1259 | | static inline size_t fr_dbuff_marker_release_ahead(fr_dbuff_marker_t *m) |
1260 | 0 | { |
1261 | 0 | size_t len = fr_dbuff_ahead(m); |
1262 | 0 | fr_dbuff_marker_release(m); |
1263 | 0 | return len; |
1264 | 0 | } Unexecuted instantiation: fuzzer_dhcpv6.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: fuzzer_util.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: fuzzer_dhcpv4.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: fuzzer_cbor.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: fuzzer_der.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: fuzzer_dns.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: fuzzer_tacacs.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: fuzzer_bfd.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: fuzzer_radius.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: fuzzer_tftp.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: fuzzer_vmps.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: base16.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: base32.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: base64.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: calc.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: cbor.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: dbuff.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: decode.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: dict_ext.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: dict_fixup.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: dict_print.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: dict_test.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: dict_tokenize.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: dict_unknown.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: dict_util.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: dict_validate.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: dl.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: dns.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: edit.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: encode.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: timer.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: file.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: inet.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: iovec.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: log.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: misc.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: packet.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: pair.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: pair_inline.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: pair_legacy.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: pair_print.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: pair_tokenize.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: print.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: proto.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: regex.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: socket.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: stats.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: struct.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: types.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: uri.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: value.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: fuzzer.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: base.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: raw.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: udp.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: json.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: jpath.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: bio.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: cache.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: cert.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: conf.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: ctx.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: engine.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: pairs.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: session.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: strerror.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: utils.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: verify.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: version.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: virtual_server.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: list.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: tcp.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: abinary.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: auth.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: cf_file.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: cf_parse.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: cf_util.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: client.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: command.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: connection.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: dependency.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: dl_module.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: exec.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: exec_legacy.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: exfile.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: global_lib.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: main_config.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: main_loop.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: map.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: map_proc.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: module.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: module_method.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: module_rlm.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: paircmp.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: pairmove.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: password.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: pool.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: request.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: request_data.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: snmp.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: state.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: tmpl_dcursor.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: tmpl_eval.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: tmpl_tokenize.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: trigger.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: trunk.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: users_file.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: util.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: virtual_servers.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: call.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: call_env.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: caller.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: catch.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: child_request.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: compile.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: condition.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: detach.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: finally.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: foreach.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: function.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: group.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: interpret.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: interpret_synchronous.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: io.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: limit.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: load_balance.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: map_builtin.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: parallel.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: return.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: subrequest.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: switch.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: timeout.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: tmpl.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: try.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: transaction.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: xlat.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: xlat_alloc.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: xlat_builtin.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: xlat_eval.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: xlat_expr.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: xlat_func.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: xlat_inst.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: xlat_pair.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: xlat_purify.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: xlat_redundant.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: xlat_tokenize.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: app_io.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: channel.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: coord.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: coord_pair.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: master.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: network.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: schedule.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: thread.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: worker.c:fr_dbuff_marker_release_ahead Unexecuted instantiation: vmps.c:fr_dbuff_marker_release_ahead |
1265 | | /** @} */ |
1266 | | |
1267 | | /** @name "in" functions (copy data into a dbuff) |
1268 | | * @{ |
1269 | | */ |
1270 | | |
1271 | | /** Internal copy function to switch between memcpy and memmove - do not call directly |
1272 | | * |
1273 | | * @private |
1274 | | * |
1275 | | * @param[out] o_start Where to copy data to. |
1276 | | * @param[in] o_end end of the output buffer. |
1277 | | * @param[in] i_start Where to copy data from. |
1278 | | * @param[in] i_end end of the source buffer. |
1279 | | * @return |
1280 | | * - 0 on sanity check error. |
1281 | | * - >0 the number of bytes copied. |
1282 | | */ |
1283 | | static inline CC_HINT(always_inline) size_t _fr_dbuff_safecpy(uint8_t *o_start, uint8_t *o_end, |
1284 | | uint8_t const *i_start, uint8_t const *i_end) |
1285 | 4.74M | { |
1286 | 4.74M | ssize_t diff; |
1287 | 4.74M | size_t i_len = i_end - i_start; |
1288 | | |
1289 | 4.74M | if (unlikely((o_end < o_start) || (i_end < i_start))) return 0; /* sanity check */ |
1290 | | |
1291 | 4.74M | diff = (o_end - o_start) - (i_len); |
1292 | 4.74M | if (diff < 0) return 0; |
1293 | | |
1294 | 4.74M | if ((i_start > o_end) || (i_end < o_start)) { /* no-overlap */ |
1295 | 4.74M | memcpy(o_start, i_start, i_len); |
1296 | 4.74M | } else { /* overlap */ |
1297 | 0 | memmove(o_start, i_start, i_len); |
1298 | 0 | } |
1299 | | |
1300 | 4.74M | return (i_len); |
1301 | 4.74M | } Unexecuted instantiation: fuzzer_dhcpv6.c:_fr_dbuff_safecpy Unexecuted instantiation: fuzzer_util.c:_fr_dbuff_safecpy Unexecuted instantiation: fuzzer_dhcpv4.c:_fr_dbuff_safecpy Unexecuted instantiation: fuzzer_cbor.c:_fr_dbuff_safecpy Unexecuted instantiation: fuzzer_der.c:_fr_dbuff_safecpy Unexecuted instantiation: fuzzer_dns.c:_fr_dbuff_safecpy Unexecuted instantiation: fuzzer_tacacs.c:_fr_dbuff_safecpy Unexecuted instantiation: fuzzer_bfd.c:_fr_dbuff_safecpy Unexecuted instantiation: fuzzer_radius.c:_fr_dbuff_safecpy Unexecuted instantiation: fuzzer_tftp.c:_fr_dbuff_safecpy Unexecuted instantiation: fuzzer_vmps.c:_fr_dbuff_safecpy base16.c:_fr_dbuff_safecpy Line | Count | Source | 1285 | 1.07M | { | 1286 | 1.07M | ssize_t diff; | 1287 | 1.07M | size_t i_len = i_end - i_start; | 1288 | | | 1289 | 1.07M | if (unlikely((o_end < o_start) || (i_end < i_start))) return 0; /* sanity check */ | 1290 | | | 1291 | 1.07M | diff = (o_end - o_start) - (i_len); | 1292 | 1.07M | if (diff < 0) return 0; | 1293 | | | 1294 | 1.07M | if ((i_start > o_end) || (i_end < o_start)) { /* no-overlap */ | 1295 | 1.07M | memcpy(o_start, i_start, i_len); | 1296 | 1.07M | } else { /* overlap */ | 1297 | 0 | memmove(o_start, i_start, i_len); | 1298 | 0 | } | 1299 | | | 1300 | 1.07M | return (i_len); | 1301 | 1.07M | } |
Unexecuted instantiation: base32.c:_fr_dbuff_safecpy Unexecuted instantiation: base64.c:_fr_dbuff_safecpy Unexecuted instantiation: calc.c:_fr_dbuff_safecpy Line | Count | Source | 1285 | 1.46k | { | 1286 | 1.46k | ssize_t diff; | 1287 | 1.46k | size_t i_len = i_end - i_start; | 1288 | | | 1289 | 1.46k | if (unlikely((o_end < o_start) || (i_end < i_start))) return 0; /* sanity check */ | 1290 | | | 1291 | 1.46k | diff = (o_end - o_start) - (i_len); | 1292 | 1.46k | if (diff < 0) return 0; | 1293 | | | 1294 | 1.46k | if ((i_start > o_end) || (i_end < o_start)) { /* no-overlap */ | 1295 | 1.46k | memcpy(o_start, i_start, i_len); | 1296 | 1.46k | } else { /* overlap */ | 1297 | 0 | memmove(o_start, i_start, i_len); | 1298 | 0 | } | 1299 | | | 1300 | 1.46k | return (i_len); | 1301 | 1.46k | } |
Unexecuted instantiation: dbuff.c:_fr_dbuff_safecpy Unexecuted instantiation: decode.c:_fr_dbuff_safecpy Unexecuted instantiation: dict_ext.c:_fr_dbuff_safecpy Unexecuted instantiation: dict_fixup.c:_fr_dbuff_safecpy Unexecuted instantiation: dict_print.c:_fr_dbuff_safecpy Unexecuted instantiation: dict_test.c:_fr_dbuff_safecpy Unexecuted instantiation: dict_tokenize.c:_fr_dbuff_safecpy Unexecuted instantiation: dict_unknown.c:_fr_dbuff_safecpy Unexecuted instantiation: dict_util.c:_fr_dbuff_safecpy Unexecuted instantiation: dict_validate.c:_fr_dbuff_safecpy Unexecuted instantiation: dl.c:_fr_dbuff_safecpy Unexecuted instantiation: dns.c:_fr_dbuff_safecpy Unexecuted instantiation: edit.c:_fr_dbuff_safecpy Unexecuted instantiation: encode.c:_fr_dbuff_safecpy Unexecuted instantiation: timer.c:_fr_dbuff_safecpy Unexecuted instantiation: file.c:_fr_dbuff_safecpy Unexecuted instantiation: inet.c:_fr_dbuff_safecpy Unexecuted instantiation: iovec.c:_fr_dbuff_safecpy Unexecuted instantiation: log.c:_fr_dbuff_safecpy Unexecuted instantiation: misc.c:_fr_dbuff_safecpy Unexecuted instantiation: packet.c:_fr_dbuff_safecpy Unexecuted instantiation: pair.c:_fr_dbuff_safecpy Unexecuted instantiation: pair_inline.c:_fr_dbuff_safecpy Unexecuted instantiation: pair_legacy.c:_fr_dbuff_safecpy Unexecuted instantiation: pair_print.c:_fr_dbuff_safecpy Unexecuted instantiation: pair_tokenize.c:_fr_dbuff_safecpy Unexecuted instantiation: print.c:_fr_dbuff_safecpy Unexecuted instantiation: proto.c:_fr_dbuff_safecpy Unexecuted instantiation: regex.c:_fr_dbuff_safecpy Unexecuted instantiation: socket.c:_fr_dbuff_safecpy Unexecuted instantiation: stats.c:_fr_dbuff_safecpy Unexecuted instantiation: struct.c:_fr_dbuff_safecpy Unexecuted instantiation: types.c:_fr_dbuff_safecpy Unexecuted instantiation: uri.c:_fr_dbuff_safecpy value.c:_fr_dbuff_safecpy Line | Count | Source | 1285 | 487k | { | 1286 | 487k | ssize_t diff; | 1287 | 487k | size_t i_len = i_end - i_start; | 1288 | | | 1289 | 487k | if (unlikely((o_end < o_start) || (i_end < i_start))) return 0; /* sanity check */ | 1290 | | | 1291 | 487k | diff = (o_end - o_start) - (i_len); | 1292 | 487k | if (diff < 0) return 0; | 1293 | | | 1294 | 487k | if ((i_start > o_end) || (i_end < o_start)) { /* no-overlap */ | 1295 | 487k | memcpy(o_start, i_start, i_len); | 1296 | 487k | } else { /* overlap */ | 1297 | 0 | memmove(o_start, i_start, i_len); | 1298 | 0 | } | 1299 | | | 1300 | 487k | return (i_len); | 1301 | 487k | } |
Unexecuted instantiation: fuzzer.c:_fr_dbuff_safecpy Line | Count | Source | 1285 | 255 | { | 1286 | 255 | ssize_t diff; | 1287 | 255 | size_t i_len = i_end - i_start; | 1288 | | | 1289 | 255 | if (unlikely((o_end < o_start) || (i_end < i_start))) return 0; /* sanity check */ | 1290 | | | 1291 | 255 | diff = (o_end - o_start) - (i_len); | 1292 | 255 | if (diff < 0) return 0; | 1293 | | | 1294 | 255 | if ((i_start > o_end) || (i_end < o_start)) { /* no-overlap */ | 1295 | 255 | memcpy(o_start, i_start, i_len); | 1296 | 255 | } else { /* overlap */ | 1297 | 0 | memmove(o_start, i_start, i_len); | 1298 | 0 | } | 1299 | | | 1300 | 255 | return (i_len); | 1301 | 255 | } |
Unexecuted instantiation: encode.c:_fr_dbuff_safecpy Unexecuted instantiation: raw.c:_fr_dbuff_safecpy Unexecuted instantiation: udp.c:_fr_dbuff_safecpy Unexecuted instantiation: base.c:_fr_dbuff_safecpy decode.c:_fr_dbuff_safecpy Line | Count | Source | 1285 | 3.18M | { | 1286 | 3.18M | ssize_t diff; | 1287 | 3.18M | size_t i_len = i_end - i_start; | 1288 | | | 1289 | 3.18M | if (unlikely((o_end < o_start) || (i_end < i_start))) return 0; /* sanity check */ | 1290 | | | 1291 | 3.18M | diff = (o_end - o_start) - (i_len); | 1292 | 3.18M | if (diff < 0) return 0; | 1293 | | | 1294 | 3.18M | if ((i_start > o_end) || (i_end < o_start)) { /* no-overlap */ | 1295 | 3.18M | memcpy(o_start, i_start, i_len); | 1296 | 3.18M | } else { /* overlap */ | 1297 | 0 | memmove(o_start, i_start, i_len); | 1298 | 0 | } | 1299 | | | 1300 | 3.18M | return (i_len); | 1301 | 3.18M | } |
Unexecuted instantiation: json.c:_fr_dbuff_safecpy Unexecuted instantiation: jpath.c:_fr_dbuff_safecpy Unexecuted instantiation: bio.c:_fr_dbuff_safecpy Unexecuted instantiation: cache.c:_fr_dbuff_safecpy Unexecuted instantiation: cert.c:_fr_dbuff_safecpy Unexecuted instantiation: conf.c:_fr_dbuff_safecpy Unexecuted instantiation: ctx.c:_fr_dbuff_safecpy Unexecuted instantiation: engine.c:_fr_dbuff_safecpy Unexecuted instantiation: pairs.c:_fr_dbuff_safecpy Unexecuted instantiation: session.c:_fr_dbuff_safecpy Unexecuted instantiation: strerror.c:_fr_dbuff_safecpy Unexecuted instantiation: utils.c:_fr_dbuff_safecpy Unexecuted instantiation: verify.c:_fr_dbuff_safecpy Unexecuted instantiation: version.c:_fr_dbuff_safecpy Unexecuted instantiation: virtual_server.c:_fr_dbuff_safecpy Unexecuted instantiation: list.c:_fr_dbuff_safecpy Unexecuted instantiation: tcp.c:_fr_dbuff_safecpy Unexecuted instantiation: abinary.c:_fr_dbuff_safecpy Unexecuted instantiation: auth.c:_fr_dbuff_safecpy Unexecuted instantiation: cf_file.c:_fr_dbuff_safecpy Unexecuted instantiation: cf_parse.c:_fr_dbuff_safecpy Unexecuted instantiation: cf_util.c:_fr_dbuff_safecpy Unexecuted instantiation: client.c:_fr_dbuff_safecpy Unexecuted instantiation: command.c:_fr_dbuff_safecpy Unexecuted instantiation: connection.c:_fr_dbuff_safecpy Unexecuted instantiation: dependency.c:_fr_dbuff_safecpy Unexecuted instantiation: dl_module.c:_fr_dbuff_safecpy Unexecuted instantiation: exec.c:_fr_dbuff_safecpy Unexecuted instantiation: exec_legacy.c:_fr_dbuff_safecpy Unexecuted instantiation: exfile.c:_fr_dbuff_safecpy Unexecuted instantiation: global_lib.c:_fr_dbuff_safecpy Unexecuted instantiation: main_config.c:_fr_dbuff_safecpy Unexecuted instantiation: main_loop.c:_fr_dbuff_safecpy Unexecuted instantiation: map.c:_fr_dbuff_safecpy Unexecuted instantiation: map_proc.c:_fr_dbuff_safecpy Unexecuted instantiation: module.c:_fr_dbuff_safecpy Unexecuted instantiation: module_method.c:_fr_dbuff_safecpy Unexecuted instantiation: module_rlm.c:_fr_dbuff_safecpy Unexecuted instantiation: paircmp.c:_fr_dbuff_safecpy Unexecuted instantiation: pairmove.c:_fr_dbuff_safecpy Unexecuted instantiation: password.c:_fr_dbuff_safecpy Unexecuted instantiation: pool.c:_fr_dbuff_safecpy Unexecuted instantiation: request.c:_fr_dbuff_safecpy Unexecuted instantiation: request_data.c:_fr_dbuff_safecpy Unexecuted instantiation: snmp.c:_fr_dbuff_safecpy Unexecuted instantiation: state.c:_fr_dbuff_safecpy Unexecuted instantiation: tmpl_dcursor.c:_fr_dbuff_safecpy Unexecuted instantiation: tmpl_eval.c:_fr_dbuff_safecpy Unexecuted instantiation: tmpl_tokenize.c:_fr_dbuff_safecpy Unexecuted instantiation: trigger.c:_fr_dbuff_safecpy Unexecuted instantiation: trunk.c:_fr_dbuff_safecpy Unexecuted instantiation: users_file.c:_fr_dbuff_safecpy Unexecuted instantiation: util.c:_fr_dbuff_safecpy Unexecuted instantiation: virtual_servers.c:_fr_dbuff_safecpy Unexecuted instantiation: call.c:_fr_dbuff_safecpy Unexecuted instantiation: call_env.c:_fr_dbuff_safecpy Unexecuted instantiation: caller.c:_fr_dbuff_safecpy Unexecuted instantiation: catch.c:_fr_dbuff_safecpy Unexecuted instantiation: child_request.c:_fr_dbuff_safecpy Unexecuted instantiation: compile.c:_fr_dbuff_safecpy Unexecuted instantiation: condition.c:_fr_dbuff_safecpy Unexecuted instantiation: detach.c:_fr_dbuff_safecpy Unexecuted instantiation: finally.c:_fr_dbuff_safecpy Unexecuted instantiation: foreach.c:_fr_dbuff_safecpy Unexecuted instantiation: function.c:_fr_dbuff_safecpy Unexecuted instantiation: group.c:_fr_dbuff_safecpy Unexecuted instantiation: interpret.c:_fr_dbuff_safecpy Unexecuted instantiation: interpret_synchronous.c:_fr_dbuff_safecpy Unexecuted instantiation: io.c:_fr_dbuff_safecpy Unexecuted instantiation: limit.c:_fr_dbuff_safecpy Unexecuted instantiation: load_balance.c:_fr_dbuff_safecpy Unexecuted instantiation: map_builtin.c:_fr_dbuff_safecpy Unexecuted instantiation: parallel.c:_fr_dbuff_safecpy Unexecuted instantiation: return.c:_fr_dbuff_safecpy Unexecuted instantiation: subrequest.c:_fr_dbuff_safecpy Unexecuted instantiation: switch.c:_fr_dbuff_safecpy Unexecuted instantiation: timeout.c:_fr_dbuff_safecpy Unexecuted instantiation: tmpl.c:_fr_dbuff_safecpy Unexecuted instantiation: try.c:_fr_dbuff_safecpy Unexecuted instantiation: transaction.c:_fr_dbuff_safecpy Unexecuted instantiation: xlat.c:_fr_dbuff_safecpy Unexecuted instantiation: xlat_alloc.c:_fr_dbuff_safecpy Unexecuted instantiation: xlat_builtin.c:_fr_dbuff_safecpy Unexecuted instantiation: xlat_eval.c:_fr_dbuff_safecpy Unexecuted instantiation: xlat_expr.c:_fr_dbuff_safecpy Unexecuted instantiation: xlat_func.c:_fr_dbuff_safecpy Unexecuted instantiation: xlat_inst.c:_fr_dbuff_safecpy Unexecuted instantiation: xlat_pair.c:_fr_dbuff_safecpy Unexecuted instantiation: xlat_purify.c:_fr_dbuff_safecpy Unexecuted instantiation: xlat_redundant.c:_fr_dbuff_safecpy Unexecuted instantiation: xlat_tokenize.c:_fr_dbuff_safecpy Unexecuted instantiation: app_io.c:_fr_dbuff_safecpy Unexecuted instantiation: channel.c:_fr_dbuff_safecpy Unexecuted instantiation: coord.c:_fr_dbuff_safecpy Unexecuted instantiation: coord_pair.c:_fr_dbuff_safecpy Unexecuted instantiation: master.c:_fr_dbuff_safecpy Unexecuted instantiation: network.c:_fr_dbuff_safecpy Unexecuted instantiation: schedule.c:_fr_dbuff_safecpy Unexecuted instantiation: thread.c:_fr_dbuff_safecpy Unexecuted instantiation: worker.c:_fr_dbuff_safecpy Unexecuted instantiation: vmps.c:_fr_dbuff_safecpy |
1302 | | |
1303 | | /** Internal function - do not call directly |
1304 | | * |
1305 | | * @private |
1306 | | */ |
1307 | | static inline ssize_t _fr_dbuff_in_memcpy(uint8_t **pos_p, fr_dbuff_t *out, |
1308 | | uint8_t const *in, size_t inlen) |
1309 | 1.07M | { |
1310 | 1.07M | fr_assert(!out->is_const); |
1311 | | |
1312 | 1.07M | _FR_DBUFF_EXTEND_LOWAT_POS_OR_RETURN(pos_p, out, inlen); |
1313 | | |
1314 | 1.07M | return _fr_dbuff_set(pos_p, out, (*pos_p) + _fr_dbuff_safecpy((*pos_p), (*pos_p) + inlen, in, in + inlen)); /* Advance out */ |
1315 | 1.07M | } Unexecuted instantiation: fuzzer_dhcpv6.c:_fr_dbuff_in_memcpy Unexecuted instantiation: fuzzer_util.c:_fr_dbuff_in_memcpy Unexecuted instantiation: fuzzer_dhcpv4.c:_fr_dbuff_in_memcpy Unexecuted instantiation: fuzzer_cbor.c:_fr_dbuff_in_memcpy Unexecuted instantiation: fuzzer_der.c:_fr_dbuff_in_memcpy Unexecuted instantiation: fuzzer_dns.c:_fr_dbuff_in_memcpy Unexecuted instantiation: fuzzer_tacacs.c:_fr_dbuff_in_memcpy Unexecuted instantiation: fuzzer_bfd.c:_fr_dbuff_in_memcpy Unexecuted instantiation: fuzzer_radius.c:_fr_dbuff_in_memcpy Unexecuted instantiation: fuzzer_tftp.c:_fr_dbuff_in_memcpy Unexecuted instantiation: fuzzer_vmps.c:_fr_dbuff_in_memcpy base16.c:_fr_dbuff_in_memcpy Line | Count | Source | 1309 | 1.07M | { | 1310 | 1.07M | fr_assert(!out->is_const); | 1311 | | | 1312 | 1.07M | _FR_DBUFF_EXTEND_LOWAT_POS_OR_RETURN(pos_p, out, inlen); | 1313 | | | 1314 | 1.07M | return _fr_dbuff_set(pos_p, out, (*pos_p) + _fr_dbuff_safecpy((*pos_p), (*pos_p) + inlen, in, in + inlen)); /* Advance out */ | 1315 | 1.07M | } |
Unexecuted instantiation: base32.c:_fr_dbuff_in_memcpy Unexecuted instantiation: base64.c:_fr_dbuff_in_memcpy Unexecuted instantiation: calc.c:_fr_dbuff_in_memcpy Unexecuted instantiation: cbor.c:_fr_dbuff_in_memcpy Unexecuted instantiation: dbuff.c:_fr_dbuff_in_memcpy Unexecuted instantiation: decode.c:_fr_dbuff_in_memcpy Unexecuted instantiation: dict_ext.c:_fr_dbuff_in_memcpy Unexecuted instantiation: dict_fixup.c:_fr_dbuff_in_memcpy Unexecuted instantiation: dict_print.c:_fr_dbuff_in_memcpy Unexecuted instantiation: dict_test.c:_fr_dbuff_in_memcpy Unexecuted instantiation: dict_tokenize.c:_fr_dbuff_in_memcpy Unexecuted instantiation: dict_unknown.c:_fr_dbuff_in_memcpy Unexecuted instantiation: dict_util.c:_fr_dbuff_in_memcpy Unexecuted instantiation: dict_validate.c:_fr_dbuff_in_memcpy Unexecuted instantiation: dl.c:_fr_dbuff_in_memcpy Unexecuted instantiation: dns.c:_fr_dbuff_in_memcpy Unexecuted instantiation: edit.c:_fr_dbuff_in_memcpy Unexecuted instantiation: encode.c:_fr_dbuff_in_memcpy Unexecuted instantiation: timer.c:_fr_dbuff_in_memcpy Unexecuted instantiation: file.c:_fr_dbuff_in_memcpy Unexecuted instantiation: inet.c:_fr_dbuff_in_memcpy Unexecuted instantiation: iovec.c:_fr_dbuff_in_memcpy Unexecuted instantiation: log.c:_fr_dbuff_in_memcpy Unexecuted instantiation: misc.c:_fr_dbuff_in_memcpy Unexecuted instantiation: packet.c:_fr_dbuff_in_memcpy Unexecuted instantiation: pair.c:_fr_dbuff_in_memcpy Unexecuted instantiation: pair_inline.c:_fr_dbuff_in_memcpy Unexecuted instantiation: pair_legacy.c:_fr_dbuff_in_memcpy Unexecuted instantiation: pair_print.c:_fr_dbuff_in_memcpy Unexecuted instantiation: pair_tokenize.c:_fr_dbuff_in_memcpy Unexecuted instantiation: print.c:_fr_dbuff_in_memcpy Unexecuted instantiation: proto.c:_fr_dbuff_in_memcpy Unexecuted instantiation: regex.c:_fr_dbuff_in_memcpy Unexecuted instantiation: socket.c:_fr_dbuff_in_memcpy Unexecuted instantiation: stats.c:_fr_dbuff_in_memcpy Unexecuted instantiation: struct.c:_fr_dbuff_in_memcpy Unexecuted instantiation: types.c:_fr_dbuff_in_memcpy Unexecuted instantiation: uri.c:_fr_dbuff_in_memcpy value.c:_fr_dbuff_in_memcpy Line | Count | Source | 1309 | 4 | { | 1310 | 4 | fr_assert(!out->is_const); | 1311 | | | 1312 | 4 | _FR_DBUFF_EXTEND_LOWAT_POS_OR_RETURN(pos_p, out, inlen); | 1313 | | | 1314 | 4 | return _fr_dbuff_set(pos_p, out, (*pos_p) + _fr_dbuff_safecpy((*pos_p), (*pos_p) + inlen, in, in + inlen)); /* Advance out */ | 1315 | 4 | } |
Unexecuted instantiation: fuzzer.c:_fr_dbuff_in_memcpy base.c:_fr_dbuff_in_memcpy Line | Count | Source | 1309 | 255 | { | 1310 | 255 | fr_assert(!out->is_const); | 1311 | | | 1312 | 255 | _FR_DBUFF_EXTEND_LOWAT_POS_OR_RETURN(pos_p, out, inlen); | 1313 | | | 1314 | 255 | return _fr_dbuff_set(pos_p, out, (*pos_p) + _fr_dbuff_safecpy((*pos_p), (*pos_p) + inlen, in, in + inlen)); /* Advance out */ | 1315 | 255 | } |
Unexecuted instantiation: encode.c:_fr_dbuff_in_memcpy Unexecuted instantiation: raw.c:_fr_dbuff_in_memcpy Unexecuted instantiation: udp.c:_fr_dbuff_in_memcpy Unexecuted instantiation: base.c:_fr_dbuff_in_memcpy Unexecuted instantiation: json.c:_fr_dbuff_in_memcpy Unexecuted instantiation: jpath.c:_fr_dbuff_in_memcpy Unexecuted instantiation: bio.c:_fr_dbuff_in_memcpy Unexecuted instantiation: cache.c:_fr_dbuff_in_memcpy Unexecuted instantiation: cert.c:_fr_dbuff_in_memcpy Unexecuted instantiation: conf.c:_fr_dbuff_in_memcpy Unexecuted instantiation: ctx.c:_fr_dbuff_in_memcpy Unexecuted instantiation: engine.c:_fr_dbuff_in_memcpy Unexecuted instantiation: pairs.c:_fr_dbuff_in_memcpy Unexecuted instantiation: session.c:_fr_dbuff_in_memcpy Unexecuted instantiation: strerror.c:_fr_dbuff_in_memcpy Unexecuted instantiation: utils.c:_fr_dbuff_in_memcpy Unexecuted instantiation: verify.c:_fr_dbuff_in_memcpy Unexecuted instantiation: version.c:_fr_dbuff_in_memcpy Unexecuted instantiation: virtual_server.c:_fr_dbuff_in_memcpy Unexecuted instantiation: list.c:_fr_dbuff_in_memcpy Unexecuted instantiation: tcp.c:_fr_dbuff_in_memcpy Unexecuted instantiation: abinary.c:_fr_dbuff_in_memcpy Unexecuted instantiation: auth.c:_fr_dbuff_in_memcpy Unexecuted instantiation: cf_file.c:_fr_dbuff_in_memcpy Unexecuted instantiation: cf_parse.c:_fr_dbuff_in_memcpy Unexecuted instantiation: cf_util.c:_fr_dbuff_in_memcpy Unexecuted instantiation: client.c:_fr_dbuff_in_memcpy Unexecuted instantiation: command.c:_fr_dbuff_in_memcpy Unexecuted instantiation: connection.c:_fr_dbuff_in_memcpy Unexecuted instantiation: dependency.c:_fr_dbuff_in_memcpy Unexecuted instantiation: dl_module.c:_fr_dbuff_in_memcpy Unexecuted instantiation: exec.c:_fr_dbuff_in_memcpy Unexecuted instantiation: exec_legacy.c:_fr_dbuff_in_memcpy Unexecuted instantiation: exfile.c:_fr_dbuff_in_memcpy Unexecuted instantiation: global_lib.c:_fr_dbuff_in_memcpy Unexecuted instantiation: main_config.c:_fr_dbuff_in_memcpy Unexecuted instantiation: main_loop.c:_fr_dbuff_in_memcpy Unexecuted instantiation: map.c:_fr_dbuff_in_memcpy Unexecuted instantiation: map_proc.c:_fr_dbuff_in_memcpy Unexecuted instantiation: module.c:_fr_dbuff_in_memcpy Unexecuted instantiation: module_method.c:_fr_dbuff_in_memcpy Unexecuted instantiation: module_rlm.c:_fr_dbuff_in_memcpy Unexecuted instantiation: paircmp.c:_fr_dbuff_in_memcpy Unexecuted instantiation: pairmove.c:_fr_dbuff_in_memcpy Unexecuted instantiation: password.c:_fr_dbuff_in_memcpy Unexecuted instantiation: pool.c:_fr_dbuff_in_memcpy Unexecuted instantiation: request.c:_fr_dbuff_in_memcpy Unexecuted instantiation: request_data.c:_fr_dbuff_in_memcpy Unexecuted instantiation: snmp.c:_fr_dbuff_in_memcpy Unexecuted instantiation: state.c:_fr_dbuff_in_memcpy Unexecuted instantiation: tmpl_dcursor.c:_fr_dbuff_in_memcpy Unexecuted instantiation: tmpl_eval.c:_fr_dbuff_in_memcpy Unexecuted instantiation: tmpl_tokenize.c:_fr_dbuff_in_memcpy Unexecuted instantiation: trigger.c:_fr_dbuff_in_memcpy Unexecuted instantiation: trunk.c:_fr_dbuff_in_memcpy Unexecuted instantiation: users_file.c:_fr_dbuff_in_memcpy Unexecuted instantiation: util.c:_fr_dbuff_in_memcpy Unexecuted instantiation: virtual_servers.c:_fr_dbuff_in_memcpy Unexecuted instantiation: call.c:_fr_dbuff_in_memcpy Unexecuted instantiation: call_env.c:_fr_dbuff_in_memcpy Unexecuted instantiation: caller.c:_fr_dbuff_in_memcpy Unexecuted instantiation: catch.c:_fr_dbuff_in_memcpy Unexecuted instantiation: child_request.c:_fr_dbuff_in_memcpy Unexecuted instantiation: compile.c:_fr_dbuff_in_memcpy Unexecuted instantiation: condition.c:_fr_dbuff_in_memcpy Unexecuted instantiation: detach.c:_fr_dbuff_in_memcpy Unexecuted instantiation: finally.c:_fr_dbuff_in_memcpy Unexecuted instantiation: foreach.c:_fr_dbuff_in_memcpy Unexecuted instantiation: function.c:_fr_dbuff_in_memcpy Unexecuted instantiation: group.c:_fr_dbuff_in_memcpy Unexecuted instantiation: interpret.c:_fr_dbuff_in_memcpy Unexecuted instantiation: interpret_synchronous.c:_fr_dbuff_in_memcpy Unexecuted instantiation: io.c:_fr_dbuff_in_memcpy Unexecuted instantiation: limit.c:_fr_dbuff_in_memcpy Unexecuted instantiation: load_balance.c:_fr_dbuff_in_memcpy Unexecuted instantiation: map_builtin.c:_fr_dbuff_in_memcpy Unexecuted instantiation: parallel.c:_fr_dbuff_in_memcpy Unexecuted instantiation: return.c:_fr_dbuff_in_memcpy Unexecuted instantiation: subrequest.c:_fr_dbuff_in_memcpy Unexecuted instantiation: switch.c:_fr_dbuff_in_memcpy Unexecuted instantiation: timeout.c:_fr_dbuff_in_memcpy Unexecuted instantiation: tmpl.c:_fr_dbuff_in_memcpy Unexecuted instantiation: try.c:_fr_dbuff_in_memcpy Unexecuted instantiation: transaction.c:_fr_dbuff_in_memcpy Unexecuted instantiation: xlat.c:_fr_dbuff_in_memcpy Unexecuted instantiation: xlat_alloc.c:_fr_dbuff_in_memcpy Unexecuted instantiation: xlat_builtin.c:_fr_dbuff_in_memcpy Unexecuted instantiation: xlat_eval.c:_fr_dbuff_in_memcpy Unexecuted instantiation: xlat_expr.c:_fr_dbuff_in_memcpy Unexecuted instantiation: xlat_func.c:_fr_dbuff_in_memcpy Unexecuted instantiation: xlat_inst.c:_fr_dbuff_in_memcpy Unexecuted instantiation: xlat_pair.c:_fr_dbuff_in_memcpy Unexecuted instantiation: xlat_purify.c:_fr_dbuff_in_memcpy Unexecuted instantiation: xlat_redundant.c:_fr_dbuff_in_memcpy Unexecuted instantiation: xlat_tokenize.c:_fr_dbuff_in_memcpy Unexecuted instantiation: app_io.c:_fr_dbuff_in_memcpy Unexecuted instantiation: channel.c:_fr_dbuff_in_memcpy Unexecuted instantiation: coord.c:_fr_dbuff_in_memcpy Unexecuted instantiation: coord_pair.c:_fr_dbuff_in_memcpy Unexecuted instantiation: master.c:_fr_dbuff_in_memcpy Unexecuted instantiation: network.c:_fr_dbuff_in_memcpy Unexecuted instantiation: schedule.c:_fr_dbuff_in_memcpy Unexecuted instantiation: thread.c:_fr_dbuff_in_memcpy Unexecuted instantiation: worker.c:_fr_dbuff_in_memcpy Unexecuted instantiation: vmps.c:_fr_dbuff_in_memcpy |
1316 | | |
1317 | | /** Internal function - do not call directly |
1318 | | * |
1319 | | * @private |
1320 | | */ |
1321 | | static inline ssize_t _fr_dbuff_in_memcpy_dbuff(uint8_t **pos_p, fr_dbuff_t *out, |
1322 | | uint8_t * const *in_p, fr_dbuff_t const *in, size_t inlen) |
1323 | 0 | { |
1324 | 0 | fr_dbuff_t *our_in; |
1325 | 0 | uint8_t **our_in_p; |
1326 | 0 | size_t ext_len; |
1327 | |
|
1328 | 0 | memcpy(&our_in, &in, sizeof(our_in)); /* Stupid const issues caused by generics */ |
1329 | 0 | memcpy(&our_in_p, &in_p, sizeof(our_in_p)); /* Stupid const issues caused by generics */ |
1330 | |
|
1331 | 0 | if (inlen == SIZE_MAX) { |
1332 | 0 | ext_len = _fr_dbuff_extend_lowat(NULL, our_in, fr_dbuff_end(our_in) - (*our_in_p), inlen); |
1333 | 0 | if (ext_len < inlen) inlen = ext_len; |
1334 | 0 | } else { |
1335 | 0 | _FR_DBUFF_EXTEND_LOWAT_POS_OR_RETURN(our_in_p, our_in, inlen); /* Extend in or return */ |
1336 | 0 | } |
1337 | 0 | return _fr_dbuff_in_memcpy(pos_p, out, *our_in_p, inlen); /* Copy _in to _out */ |
1338 | 0 | } Unexecuted instantiation: fuzzer_dhcpv6.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: fuzzer_util.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: fuzzer_dhcpv4.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: fuzzer_cbor.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: fuzzer_der.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: fuzzer_dns.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: fuzzer_tacacs.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: fuzzer_bfd.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: fuzzer_radius.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: fuzzer_tftp.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: fuzzer_vmps.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: base16.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: base32.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: base64.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: calc.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: cbor.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: dbuff.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: decode.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: dict_ext.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: dict_fixup.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: dict_print.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: dict_test.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: dict_tokenize.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: dict_unknown.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: dict_util.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: dict_validate.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: dl.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: dns.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: edit.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: encode.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: timer.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: file.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: inet.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: iovec.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: log.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: misc.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: packet.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: pair.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: pair_inline.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: pair_legacy.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: pair_print.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: pair_tokenize.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: print.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: proto.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: regex.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: socket.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: stats.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: struct.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: types.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: uri.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: value.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: fuzzer.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: base.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: raw.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: udp.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: encode.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: json.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: jpath.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: bio.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: cache.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: cert.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: conf.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: ctx.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: engine.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: pairs.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: session.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: strerror.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: utils.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: verify.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: version.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: virtual_server.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: list.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: tcp.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: abinary.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: auth.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: cf_file.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: cf_parse.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: cf_util.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: client.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: command.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: connection.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: dependency.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: dl_module.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: exec.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: exec_legacy.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: exfile.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: global_lib.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: main_config.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: main_loop.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: map.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: map_proc.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: module.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: module_method.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: module_rlm.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: paircmp.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: pairmove.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: password.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: pool.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: request.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: request_data.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: snmp.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: state.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: tmpl_dcursor.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: tmpl_eval.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: tmpl_tokenize.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: trigger.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: trunk.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: users_file.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: util.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: virtual_servers.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: call.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: call_env.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: caller.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: catch.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: child_request.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: compile.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: condition.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: detach.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: finally.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: foreach.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: function.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: group.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: interpret.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: interpret_synchronous.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: io.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: limit.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: load_balance.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: map_builtin.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: parallel.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: return.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: subrequest.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: switch.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: timeout.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: tmpl.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: try.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: transaction.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: xlat.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: xlat_alloc.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: xlat_builtin.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: xlat_eval.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: xlat_expr.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: xlat_func.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: xlat_inst.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: xlat_pair.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: xlat_purify.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: xlat_redundant.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: xlat_tokenize.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: app_io.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: channel.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: coord.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: coord_pair.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: master.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: network.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: schedule.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: thread.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: worker.c:_fr_dbuff_in_memcpy_dbuff Unexecuted instantiation: vmps.c:_fr_dbuff_in_memcpy_dbuff |
1339 | | |
1340 | | /** Copy exactly _inlen bytes into a dbuff or marker |
1341 | | * |
1342 | | * If _in is a dbuff and _inlen is greater than the number of bytes available |
1343 | | * in that dbuff, the copy operation will fail. |
1344 | | * |
1345 | | * @note _in will not be advanced. If this is required #fr_dbuff_move should be used. |
1346 | | * |
1347 | | * @param[in] _dbuff_or_marker to copy data to. |
1348 | | * @param[in] _in data to copy in to the dbuff or marker. |
1349 | | * @param[in] _inlen How much data we need to copy. |
1350 | | * If _in is a `char *` or `dbuff *` and SIZE_MAX |
1351 | | * is passed, then _inlen will be substituted |
1352 | | * for the length of the data in the dbuff. |
1353 | | * @return |
1354 | | * - 0 no data copied. |
1355 | | * - >0 the number of bytes copied to the dbuff. |
1356 | | * - <0 the number of bytes we would have needed |
1357 | | * to complete the copy operation. |
1358 | | */ |
1359 | | #define fr_dbuff_in_memcpy(_dbuff_or_marker, _in, _inlen) \ |
1360 | 1.07M | _Generic((_in), \ |
1361 | 1.07M | uint8_t * : _fr_dbuff_in_memcpy(_fr_dbuff_current_ptr(_dbuff_or_marker), \ |
1362 | 1.07M | fr_dbuff_ptr(_dbuff_or_marker), \ |
1363 | 1.07M | (uint8_t const *)(_in), \ |
1364 | 1.07M | _inlen), \ |
1365 | 1.07M | uint8_t const * : _fr_dbuff_in_memcpy(_fr_dbuff_current_ptr(_dbuff_or_marker), \ |
1366 | 1.07M | fr_dbuff_ptr(_dbuff_or_marker), \ |
1367 | 1.07M | (uint8_t const *)(_in), \ |
1368 | 1.07M | _inlen), \ |
1369 | 1.07M | char * : _fr_dbuff_in_memcpy(_fr_dbuff_current_ptr(_dbuff_or_marker), \ |
1370 | 1.07M | fr_dbuff_ptr(_dbuff_or_marker), \ |
1371 | 1.07M | (uint8_t const *)(_in), \ |
1372 | 1.07M | (size_t)(_inlen) == SIZE_MAX ? strlen((char const *)(_in)) : (_inlen)), \ |
1373 | 1.07M | char const * : _fr_dbuff_in_memcpy(_fr_dbuff_current_ptr(_dbuff_or_marker), \ |
1374 | 1.07M | fr_dbuff_ptr(_dbuff_or_marker), \ |
1375 | 1.07M | (uint8_t const *)(_in), \ |
1376 | 1.07M | (size_t)(_inlen) == SIZE_MAX ? strlen((char const *)(_in)) : (_inlen)), \ |
1377 | 1.07M | fr_dbuff_t * : _fr_dbuff_in_memcpy_dbuff(_fr_dbuff_current_ptr(_dbuff_or_marker), \ |
1378 | 1.07M | fr_dbuff_ptr(_dbuff_or_marker), \ |
1379 | 1.07M | &((fr_dbuff_t const *)(_in))->p, \ |
1380 | 1.07M | ((fr_dbuff_t const *)(_in)), \ |
1381 | 1.07M | _inlen), \ |
1382 | 1.07M | fr_dbuff_marker_t * : _fr_dbuff_in_memcpy_dbuff(_fr_dbuff_current_ptr(_dbuff_or_marker), \ |
1383 | 1.07M | fr_dbuff_ptr(_dbuff_or_marker), \ |
1384 | 1.07M | &((fr_dbuff_marker_t const *)(_in))->p, \ |
1385 | 1.07M | ((fr_dbuff_marker_t const *)(_in))->parent, _inlen) \ |
1386 | 1.07M | ) |
1387 | | |
1388 | | /** Copy exactly _inlen bytes into dbuff or marker returning if there's insufficient space |
1389 | | * @copydetails fr_dbuff_in_memcpy |
1390 | | */ |
1391 | 1.07M | #define FR_DBUFF_IN_MEMCPY_RETURN(_dbuff_or_marker, _in, _inlen) FR_DBUFF_RETURN(fr_dbuff_in_memcpy, _dbuff_or_marker, _in, _inlen) |
1392 | | |
1393 | | /** Internal function - do not call directly |
1394 | | * |
1395 | | * @private |
1396 | | */ |
1397 | | static inline size_t _fr_dbuff_in_memcpy_partial(uint8_t **pos_p, fr_dbuff_t *out, |
1398 | | uint8_t const *in, size_t inlen) |
1399 | 0 | { |
1400 | 0 | size_t ext_len; |
1401 | |
|
1402 | 0 | fr_assert(!out->is_const); |
1403 | |
|
1404 | 0 | ext_len = _fr_dbuff_extend_lowat(NULL, out, fr_dbuff_end(out) - (*pos_p), inlen); |
1405 | 0 | if (ext_len < inlen) inlen = ext_len; |
1406 | |
|
1407 | 0 | return _fr_dbuff_set(pos_p, out, (*pos_p) + _fr_dbuff_safecpy((*pos_p), (*pos_p) + inlen, in, in + inlen)); |
1408 | 0 | } Unexecuted instantiation: fuzzer_dhcpv6.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: fuzzer_util.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: fuzzer_dhcpv4.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: fuzzer_cbor.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: fuzzer_der.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: fuzzer_dns.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: fuzzer_tacacs.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: fuzzer_bfd.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: fuzzer_radius.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: fuzzer_tftp.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: fuzzer_vmps.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: base16.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: base32.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: base64.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: calc.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: cbor.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: dbuff.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: decode.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: dict_ext.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: dict_fixup.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: dict_print.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: dict_test.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: dict_tokenize.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: dict_unknown.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: dict_util.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: dict_validate.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: dl.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: dns.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: edit.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: encode.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: timer.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: file.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: inet.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: iovec.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: log.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: misc.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: packet.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: pair.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: pair_inline.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: pair_legacy.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: pair_print.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: pair_tokenize.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: print.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: proto.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: regex.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: socket.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: stats.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: struct.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: types.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: uri.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: value.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: fuzzer.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: base.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: raw.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: udp.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: json.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: jpath.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: bio.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: cache.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: cert.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: conf.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: ctx.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: engine.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: pairs.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: session.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: strerror.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: utils.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: verify.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: version.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: virtual_server.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: list.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: tcp.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: abinary.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: auth.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: cf_file.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: cf_parse.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: cf_util.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: client.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: command.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: connection.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: dependency.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: dl_module.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: exec.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: exec_legacy.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: exfile.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: global_lib.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: main_config.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: main_loop.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: map.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: map_proc.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: module.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: module_method.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: module_rlm.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: paircmp.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: pairmove.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: password.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: pool.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: request.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: request_data.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: snmp.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: state.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: tmpl_dcursor.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: tmpl_eval.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: tmpl_tokenize.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: trigger.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: trunk.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: users_file.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: util.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: virtual_servers.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: call.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: call_env.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: caller.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: catch.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: child_request.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: compile.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: condition.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: detach.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: finally.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: foreach.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: function.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: group.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: interpret.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: interpret_synchronous.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: io.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: limit.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: load_balance.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: map_builtin.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: parallel.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: return.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: subrequest.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: switch.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: timeout.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: tmpl.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: try.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: transaction.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: xlat.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: xlat_alloc.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: xlat_builtin.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: xlat_eval.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: xlat_expr.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: xlat_func.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: xlat_inst.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: xlat_pair.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: xlat_purify.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: xlat_redundant.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: xlat_tokenize.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: app_io.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: channel.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: coord.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: coord_pair.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: master.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: network.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: schedule.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: thread.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: worker.c:_fr_dbuff_in_memcpy_partial Unexecuted instantiation: vmps.c:_fr_dbuff_in_memcpy_partial |
1409 | | |
1410 | | /** Internal function - do not call directly |
1411 | | * |
1412 | | * @private |
1413 | | */ |
1414 | | static inline size_t _fr_dbuff_in_memcpy_partial_dbuff(uint8_t **pos_p, fr_dbuff_t *out, |
1415 | | uint8_t * const *in_p, fr_dbuff_t const *in, size_t inlen) |
1416 | 0 | { |
1417 | 0 | fr_dbuff_t *our_in = UNCONST(fr_dbuff_t *, in); /* Stupid const issues caused by generics */ |
1418 | 0 | uint8_t **our_in_p = UNCONST(uint8_t **, in_p); /* Stupid const issues caused by generics */ |
1419 | 0 | size_t ext_len; |
1420 | 0 |
|
1421 | 0 | ext_len = _fr_dbuff_extend_lowat(NULL, our_in, fr_dbuff_end(our_in) - (*our_in_p), inlen); |
1422 | 0 | if (ext_len < inlen) inlen = ext_len; |
1423 | 0 |
|
1424 | 0 | return _fr_dbuff_in_memcpy_partial(pos_p, out, (*our_in_p), inlen); |
1425 | 0 | } Unexecuted instantiation: fuzzer_dhcpv6.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: fuzzer_util.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: fuzzer_dhcpv4.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: fuzzer_cbor.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: fuzzer_der.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: fuzzer_dns.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: fuzzer_tacacs.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: fuzzer_bfd.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: fuzzer_radius.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: fuzzer_tftp.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: fuzzer_vmps.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: base16.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: base32.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: base64.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: calc.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: cbor.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: dbuff.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: decode.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: dict_ext.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: dict_fixup.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: dict_print.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: dict_test.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: dict_tokenize.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: dict_unknown.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: dict_util.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: dict_validate.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: dl.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: dns.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: edit.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: encode.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: timer.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: file.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: inet.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: iovec.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: log.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: misc.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: packet.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: pair.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: pair_inline.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: pair_legacy.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: pair_print.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: pair_tokenize.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: print.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: proto.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: regex.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: socket.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: stats.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: struct.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: types.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: uri.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: value.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: fuzzer.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: base.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: raw.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: udp.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: json.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: jpath.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: bio.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: cache.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: cert.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: conf.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: ctx.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: engine.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: pairs.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: session.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: strerror.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: utils.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: verify.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: version.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: virtual_server.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: list.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: tcp.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: abinary.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: auth.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: cf_file.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: cf_parse.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: cf_util.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: client.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: command.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: connection.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: dependency.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: dl_module.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: exec.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: exec_legacy.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: exfile.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: global_lib.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: main_config.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: main_loop.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: map.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: map_proc.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: module.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: module_method.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: module_rlm.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: paircmp.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: pairmove.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: password.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: pool.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: request.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: request_data.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: snmp.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: state.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: tmpl_dcursor.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: tmpl_eval.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: tmpl_tokenize.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: trigger.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: trunk.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: users_file.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: util.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: virtual_servers.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: call.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: call_env.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: caller.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: catch.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: child_request.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: compile.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: condition.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: detach.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: finally.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: foreach.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: function.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: group.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: interpret.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: interpret_synchronous.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: io.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: limit.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: load_balance.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: map_builtin.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: parallel.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: return.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: subrequest.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: switch.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: timeout.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: tmpl.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: try.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: transaction.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: xlat.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: xlat_alloc.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: xlat_builtin.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: xlat_eval.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: xlat_expr.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: xlat_func.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: xlat_inst.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: xlat_pair.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: xlat_purify.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: xlat_redundant.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: xlat_tokenize.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: app_io.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: channel.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: coord.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: coord_pair.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: master.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: network.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: schedule.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: thread.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: worker.c:_fr_dbuff_in_memcpy_partial_dbuff Unexecuted instantiation: vmps.c:_fr_dbuff_in_memcpy_partial_dbuff |
1426 | | |
1427 | | /** Copy at most _inlen bytes into the dbuff |
1428 | | * |
1429 | | * Use this variant when writing data to a streaming buffer where |
1430 | | * partial writes will be tracked. |
1431 | | * |
1432 | | * If _in is a #fr_dbuff_t and _inlen is greater than the number of bytes |
1433 | | * available in that dbuff, the copy operation will truncated. |
1434 | | * |
1435 | | * @note _in will not be advanced. If this is required #fr_dbuff_move should be used. |
1436 | | * |
1437 | | * @param[in] _out to copy data to. |
1438 | | * @param[in] _in Data to copy to dbuff. |
1439 | | * @param[in] _inlen How much data we need to copy. |
1440 | | * If _in is a char * or dbuff * and SIZE_MAX |
1441 | | * is passed, then _inlen will be substituted |
1442 | | * for the length of the buffer. |
1443 | | * @return |
1444 | | * - 0 no data copied. |
1445 | | * - >0 the number of bytes copied to the dbuff. |
1446 | | */ |
1447 | | #define fr_dbuff_in_memcpy_partial(_out, _in, _inlen) \ |
1448 | 0 | _Generic((_in), \ |
1449 | 0 | uint8_t * : _fr_dbuff_in_memcpy_partial(_fr_dbuff_current_ptr(_out), _out, (uint8_t const *)(_in), _inlen), \ |
1450 | 0 | uint8_t const * : _fr_dbuff_in_memcpy_partial(_fr_dbuff_current_ptr(_out), _out, (uint8_t const *)(_in), _inlen), \ |
1451 | 0 | char * : _fr_dbuff_in_memcpy_partial(_fr_dbuff_current_ptr(_out), _out, (uint8_t const *)(_in), _inlen == SIZE_MAX ? strlen((char const *)(_in)) : _inlen), \ |
1452 | 0 | char const * : _fr_dbuff_in_memcpy_partial(_fr_dbuff_current_ptr(_out), _out, (uint8_t const *)(_in), _inlen == SIZE_MAX ? strlen((char const *)(_in)) : _inlen), \ |
1453 | 0 | fr_dbuff_t * : _fr_dbuff_in_memcpy_partial_dbuff(_fr_dbuff_current_ptr(_out), fr_dbuff_ptr(_out), &((fr_dbuff_t const *)(_in))->p, ((fr_dbuff_t const *)(_in)), _inlen), \ |
1454 | 0 | fr_dbuff_marker_t * : _fr_dbuff_in_memcpy_partial_dbuff(_fr_dbuff_current_ptr(_out), fr_dbuff_ptr(_out), &((fr_dbuff_marker_t const *)(_in))->p, ((fr_dbuff_marker_t const *)(_in))->parent, _inlen) \ |
1455 | 0 | ) |
1456 | | |
1457 | | /** Copy a partial byte sequence into a dbuff |
1458 | | * |
1459 | | * @copybrief fr_dbuff_in_memcpy_partial |
1460 | | * |
1461 | | * @param[in] _dbuff to copy byte sequence into. |
1462 | | * @param[in] ... bytes to copy. |
1463 | | */ |
1464 | | #define fr_dbuff_in_bytes_partial(_dbuff, ...) \ |
1465 | | fr_dbuff_in_memcpy_partial(_dbuff, ((uint8_t []){ __VA_ARGS__ }), sizeof((uint8_t []){ __VA_ARGS__ })) |
1466 | | |
1467 | | /** Copy a byte sequence into a dbuff or marker |
1468 | | * |
1469 | | * @copybrief fr_dbuff_in_memcpy |
1470 | | * |
1471 | | * @param[in] _dbuff_or_marker to copy byte sequence into. |
1472 | | * @param[in] ... bytes to copy. |
1473 | | */ |
1474 | | #define fr_dbuff_in_bytes(_dbuff_or_marker, ...) \ |
1475 | 0 | fr_dbuff_in_memcpy(_dbuff_or_marker, ((uint8_t []){ __VA_ARGS__ }), sizeof((uint8_t []){ __VA_ARGS__ })) |
1476 | | |
1477 | | /** Copy a byte sequence into a dbuff or marker returning if there's insufficient space |
1478 | | * |
1479 | | * @copydetails fr_dbuff_in_bytes |
1480 | | */ |
1481 | | #define FR_DBUFF_IN_BYTES_RETURN(_dbuff_or_marker, ...) \ |
1482 | 1.07M | FR_DBUFF_IN_MEMCPY_RETURN(_dbuff_or_marker, ((uint8_t []){ __VA_ARGS__ }), sizeof((uint8_t []){ __VA_ARGS__ })) |
1483 | | |
1484 | | /** Internal function - do not call directly |
1485 | | * |
1486 | | * @private |
1487 | | */ |
1488 | | static inline ssize_t _fr_dbuff_memset(uint8_t **pos_p, fr_dbuff_t *dbuff, uint8_t c, size_t inlen) |
1489 | 0 | { |
1490 | 0 | fr_assert(!dbuff->is_const); |
1491 | |
|
1492 | 0 | _FR_DBUFF_EXTEND_LOWAT_POS_OR_RETURN(pos_p, dbuff, inlen); |
1493 | | |
1494 | 0 | memset((*pos_p), c, inlen); |
1495 | |
|
1496 | 0 | return _fr_dbuff_set(pos_p, dbuff, (*pos_p) + inlen); |
1497 | 0 | } Unexecuted instantiation: fuzzer_dhcpv6.c:_fr_dbuff_memset Unexecuted instantiation: fuzzer_util.c:_fr_dbuff_memset Unexecuted instantiation: fuzzer_dhcpv4.c:_fr_dbuff_memset Unexecuted instantiation: fuzzer_cbor.c:_fr_dbuff_memset Unexecuted instantiation: fuzzer_der.c:_fr_dbuff_memset Unexecuted instantiation: fuzzer_dns.c:_fr_dbuff_memset Unexecuted instantiation: fuzzer_tacacs.c:_fr_dbuff_memset Unexecuted instantiation: fuzzer_bfd.c:_fr_dbuff_memset Unexecuted instantiation: fuzzer_radius.c:_fr_dbuff_memset Unexecuted instantiation: fuzzer_tftp.c:_fr_dbuff_memset Unexecuted instantiation: fuzzer_vmps.c:_fr_dbuff_memset Unexecuted instantiation: base16.c:_fr_dbuff_memset Unexecuted instantiation: base32.c:_fr_dbuff_memset Unexecuted instantiation: base64.c:_fr_dbuff_memset Unexecuted instantiation: calc.c:_fr_dbuff_memset Unexecuted instantiation: cbor.c:_fr_dbuff_memset Unexecuted instantiation: dbuff.c:_fr_dbuff_memset Unexecuted instantiation: decode.c:_fr_dbuff_memset Unexecuted instantiation: dict_ext.c:_fr_dbuff_memset Unexecuted instantiation: dict_fixup.c:_fr_dbuff_memset Unexecuted instantiation: dict_print.c:_fr_dbuff_memset Unexecuted instantiation: dict_test.c:_fr_dbuff_memset Unexecuted instantiation: dict_tokenize.c:_fr_dbuff_memset Unexecuted instantiation: dict_unknown.c:_fr_dbuff_memset Unexecuted instantiation: dict_util.c:_fr_dbuff_memset Unexecuted instantiation: dict_validate.c:_fr_dbuff_memset Unexecuted instantiation: dl.c:_fr_dbuff_memset Unexecuted instantiation: dns.c:_fr_dbuff_memset Unexecuted instantiation: edit.c:_fr_dbuff_memset Unexecuted instantiation: encode.c:_fr_dbuff_memset Unexecuted instantiation: timer.c:_fr_dbuff_memset Unexecuted instantiation: file.c:_fr_dbuff_memset Unexecuted instantiation: inet.c:_fr_dbuff_memset Unexecuted instantiation: iovec.c:_fr_dbuff_memset Unexecuted instantiation: log.c:_fr_dbuff_memset Unexecuted instantiation: misc.c:_fr_dbuff_memset Unexecuted instantiation: packet.c:_fr_dbuff_memset Unexecuted instantiation: pair.c:_fr_dbuff_memset Unexecuted instantiation: pair_inline.c:_fr_dbuff_memset Unexecuted instantiation: pair_legacy.c:_fr_dbuff_memset Unexecuted instantiation: pair_print.c:_fr_dbuff_memset Unexecuted instantiation: pair_tokenize.c:_fr_dbuff_memset Unexecuted instantiation: print.c:_fr_dbuff_memset Unexecuted instantiation: proto.c:_fr_dbuff_memset Unexecuted instantiation: regex.c:_fr_dbuff_memset Unexecuted instantiation: socket.c:_fr_dbuff_memset Unexecuted instantiation: stats.c:_fr_dbuff_memset Unexecuted instantiation: struct.c:_fr_dbuff_memset Unexecuted instantiation: types.c:_fr_dbuff_memset Unexecuted instantiation: uri.c:_fr_dbuff_memset Unexecuted instantiation: value.c:_fr_dbuff_memset Unexecuted instantiation: fuzzer.c:_fr_dbuff_memset Unexecuted instantiation: base.c:_fr_dbuff_memset Unexecuted instantiation: raw.c:_fr_dbuff_memset Unexecuted instantiation: udp.c:_fr_dbuff_memset Unexecuted instantiation: base.c:_fr_dbuff_memset Unexecuted instantiation: encode.c:_fr_dbuff_memset Unexecuted instantiation: json.c:_fr_dbuff_memset Unexecuted instantiation: jpath.c:_fr_dbuff_memset Unexecuted instantiation: bio.c:_fr_dbuff_memset Unexecuted instantiation: cache.c:_fr_dbuff_memset Unexecuted instantiation: cert.c:_fr_dbuff_memset Unexecuted instantiation: conf.c:_fr_dbuff_memset Unexecuted instantiation: ctx.c:_fr_dbuff_memset Unexecuted instantiation: engine.c:_fr_dbuff_memset Unexecuted instantiation: pairs.c:_fr_dbuff_memset Unexecuted instantiation: session.c:_fr_dbuff_memset Unexecuted instantiation: strerror.c:_fr_dbuff_memset Unexecuted instantiation: utils.c:_fr_dbuff_memset Unexecuted instantiation: verify.c:_fr_dbuff_memset Unexecuted instantiation: version.c:_fr_dbuff_memset Unexecuted instantiation: virtual_server.c:_fr_dbuff_memset Unexecuted instantiation: list.c:_fr_dbuff_memset Unexecuted instantiation: tcp.c:_fr_dbuff_memset Unexecuted instantiation: abinary.c:_fr_dbuff_memset Unexecuted instantiation: auth.c:_fr_dbuff_memset Unexecuted instantiation: cf_file.c:_fr_dbuff_memset Unexecuted instantiation: cf_parse.c:_fr_dbuff_memset Unexecuted instantiation: cf_util.c:_fr_dbuff_memset Unexecuted instantiation: client.c:_fr_dbuff_memset Unexecuted instantiation: command.c:_fr_dbuff_memset Unexecuted instantiation: connection.c:_fr_dbuff_memset Unexecuted instantiation: dependency.c:_fr_dbuff_memset Unexecuted instantiation: dl_module.c:_fr_dbuff_memset Unexecuted instantiation: exec.c:_fr_dbuff_memset Unexecuted instantiation: exec_legacy.c:_fr_dbuff_memset Unexecuted instantiation: exfile.c:_fr_dbuff_memset Unexecuted instantiation: global_lib.c:_fr_dbuff_memset Unexecuted instantiation: main_config.c:_fr_dbuff_memset Unexecuted instantiation: main_loop.c:_fr_dbuff_memset Unexecuted instantiation: map.c:_fr_dbuff_memset Unexecuted instantiation: map_proc.c:_fr_dbuff_memset Unexecuted instantiation: module.c:_fr_dbuff_memset Unexecuted instantiation: module_method.c:_fr_dbuff_memset Unexecuted instantiation: module_rlm.c:_fr_dbuff_memset Unexecuted instantiation: paircmp.c:_fr_dbuff_memset Unexecuted instantiation: pairmove.c:_fr_dbuff_memset Unexecuted instantiation: password.c:_fr_dbuff_memset Unexecuted instantiation: pool.c:_fr_dbuff_memset Unexecuted instantiation: request.c:_fr_dbuff_memset Unexecuted instantiation: request_data.c:_fr_dbuff_memset Unexecuted instantiation: snmp.c:_fr_dbuff_memset Unexecuted instantiation: state.c:_fr_dbuff_memset Unexecuted instantiation: tmpl_dcursor.c:_fr_dbuff_memset Unexecuted instantiation: tmpl_eval.c:_fr_dbuff_memset Unexecuted instantiation: tmpl_tokenize.c:_fr_dbuff_memset Unexecuted instantiation: trigger.c:_fr_dbuff_memset Unexecuted instantiation: trunk.c:_fr_dbuff_memset Unexecuted instantiation: users_file.c:_fr_dbuff_memset Unexecuted instantiation: util.c:_fr_dbuff_memset Unexecuted instantiation: virtual_servers.c:_fr_dbuff_memset Unexecuted instantiation: call.c:_fr_dbuff_memset Unexecuted instantiation: call_env.c:_fr_dbuff_memset Unexecuted instantiation: caller.c:_fr_dbuff_memset Unexecuted instantiation: catch.c:_fr_dbuff_memset Unexecuted instantiation: child_request.c:_fr_dbuff_memset Unexecuted instantiation: compile.c:_fr_dbuff_memset Unexecuted instantiation: condition.c:_fr_dbuff_memset Unexecuted instantiation: detach.c:_fr_dbuff_memset Unexecuted instantiation: finally.c:_fr_dbuff_memset Unexecuted instantiation: foreach.c:_fr_dbuff_memset Unexecuted instantiation: function.c:_fr_dbuff_memset Unexecuted instantiation: group.c:_fr_dbuff_memset Unexecuted instantiation: interpret.c:_fr_dbuff_memset Unexecuted instantiation: interpret_synchronous.c:_fr_dbuff_memset Unexecuted instantiation: io.c:_fr_dbuff_memset Unexecuted instantiation: limit.c:_fr_dbuff_memset Unexecuted instantiation: load_balance.c:_fr_dbuff_memset Unexecuted instantiation: map_builtin.c:_fr_dbuff_memset Unexecuted instantiation: parallel.c:_fr_dbuff_memset Unexecuted instantiation: return.c:_fr_dbuff_memset Unexecuted instantiation: subrequest.c:_fr_dbuff_memset Unexecuted instantiation: switch.c:_fr_dbuff_memset Unexecuted instantiation: timeout.c:_fr_dbuff_memset Unexecuted instantiation: tmpl.c:_fr_dbuff_memset Unexecuted instantiation: try.c:_fr_dbuff_memset Unexecuted instantiation: transaction.c:_fr_dbuff_memset Unexecuted instantiation: xlat.c:_fr_dbuff_memset Unexecuted instantiation: xlat_alloc.c:_fr_dbuff_memset Unexecuted instantiation: xlat_builtin.c:_fr_dbuff_memset Unexecuted instantiation: xlat_eval.c:_fr_dbuff_memset Unexecuted instantiation: xlat_expr.c:_fr_dbuff_memset Unexecuted instantiation: xlat_func.c:_fr_dbuff_memset Unexecuted instantiation: xlat_inst.c:_fr_dbuff_memset Unexecuted instantiation: xlat_pair.c:_fr_dbuff_memset Unexecuted instantiation: xlat_purify.c:_fr_dbuff_memset Unexecuted instantiation: xlat_redundant.c:_fr_dbuff_memset Unexecuted instantiation: xlat_tokenize.c:_fr_dbuff_memset Unexecuted instantiation: app_io.c:_fr_dbuff_memset Unexecuted instantiation: channel.c:_fr_dbuff_memset Unexecuted instantiation: coord.c:_fr_dbuff_memset Unexecuted instantiation: coord_pair.c:_fr_dbuff_memset Unexecuted instantiation: master.c:_fr_dbuff_memset Unexecuted instantiation: network.c:_fr_dbuff_memset Unexecuted instantiation: schedule.c:_fr_dbuff_memset Unexecuted instantiation: thread.c:_fr_dbuff_memset Unexecuted instantiation: worker.c:_fr_dbuff_memset Unexecuted instantiation: vmps.c:_fr_dbuff_memset |
1498 | | |
1499 | | /** Set _inlen bytes of a dbuff or marker to _c |
1500 | | * |
1501 | | * @param[in] _dbuff_or_marker to copy data to. |
1502 | | * Will be advanced by _inlen bytes. |
1503 | | * @param[in] _c Value to set. |
1504 | | * @param[in] _inlen How much data we need to copy. |
1505 | | * @return |
1506 | | * - 0 no data set. |
1507 | | * - >0 the number of bytes set in the dbuff. |
1508 | | * - <0 the number of bytes required. |
1509 | | */ |
1510 | | #define fr_dbuff_memset(_dbuff_or_marker, _c, _inlen) \ |
1511 | 0 | _fr_dbuff_memset(_fr_dbuff_current_ptr(_dbuff_or_marker), fr_dbuff_ptr(_dbuff_or_marker), _c, _inlen) |
1512 | | |
1513 | | /** Set _inlen bytes of a dbuff or marker to _c returning if there is insufficient space |
1514 | | * |
1515 | | * @copydetails fr_dbuff_memset |
1516 | | */ |
1517 | 0 | #define FR_DBUFF_MEMSET_RETURN(_dbuff_or_marker, _c, _inlen) FR_DBUFF_RETURN(fr_dbuff_memset, _dbuff_or_marker, _c, _inlen) |
1518 | | |
1519 | | /** @cond */ |
1520 | | /** Define integer decoding functions |
1521 | | * @private |
1522 | | */ |
1523 | | #define FR_DBUFF_PARSE_INT_DEF(_type) \ |
1524 | 0 | static inline ssize_t _fr_dbuff_in_##_type(uint8_t **pos_p, fr_dbuff_t *out, _type##_t num) \ |
1525 | 0 | { \ |
1526 | 0 | fr_assert(!out->is_const); \ |
1527 | 0 | _FR_DBUFF_EXTEND_LOWAT_POS_OR_RETURN(pos_p, out, sizeof(_type##_t)); \ |
1528 | 0 | fr_nbo_from_##_type((*pos_p), num); \ |
1529 | 0 | return _fr_dbuff_set(pos_p, out, (*pos_p) + sizeof(_type##_t)); \ |
1530 | 0 | } Unexecuted instantiation: fuzzer_dhcpv6.c:_fr_dbuff_in_uint16 Unexecuted instantiation: fuzzer_dhcpv6.c:_fr_dbuff_in_uint32 Unexecuted instantiation: fuzzer_dhcpv6.c:_fr_dbuff_in_uint64 Unexecuted instantiation: fuzzer_dhcpv6.c:_fr_dbuff_in_int16 Unexecuted instantiation: fuzzer_dhcpv6.c:_fr_dbuff_in_int32 Unexecuted instantiation: fuzzer_dhcpv6.c:_fr_dbuff_in_int64 Unexecuted instantiation: fuzzer_util.c:_fr_dbuff_in_uint16 Unexecuted instantiation: fuzzer_util.c:_fr_dbuff_in_uint32 Unexecuted instantiation: fuzzer_util.c:_fr_dbuff_in_uint64 Unexecuted instantiation: fuzzer_util.c:_fr_dbuff_in_int16 Unexecuted instantiation: fuzzer_util.c:_fr_dbuff_in_int32 Unexecuted instantiation: fuzzer_util.c:_fr_dbuff_in_int64 Unexecuted instantiation: fuzzer_dhcpv4.c:_fr_dbuff_in_uint16 Unexecuted instantiation: fuzzer_dhcpv4.c:_fr_dbuff_in_uint32 Unexecuted instantiation: fuzzer_dhcpv4.c:_fr_dbuff_in_uint64 Unexecuted instantiation: fuzzer_dhcpv4.c:_fr_dbuff_in_int16 Unexecuted instantiation: fuzzer_dhcpv4.c:_fr_dbuff_in_int32 Unexecuted instantiation: fuzzer_dhcpv4.c:_fr_dbuff_in_int64 Unexecuted instantiation: fuzzer_cbor.c:_fr_dbuff_in_uint16 Unexecuted instantiation: fuzzer_cbor.c:_fr_dbuff_in_uint32 Unexecuted instantiation: fuzzer_cbor.c:_fr_dbuff_in_uint64 Unexecuted instantiation: fuzzer_cbor.c:_fr_dbuff_in_int16 Unexecuted instantiation: fuzzer_cbor.c:_fr_dbuff_in_int32 Unexecuted instantiation: fuzzer_cbor.c:_fr_dbuff_in_int64 Unexecuted instantiation: fuzzer_der.c:_fr_dbuff_in_uint16 Unexecuted instantiation: fuzzer_der.c:_fr_dbuff_in_uint32 Unexecuted instantiation: fuzzer_der.c:_fr_dbuff_in_uint64 Unexecuted instantiation: fuzzer_der.c:_fr_dbuff_in_int16 Unexecuted instantiation: fuzzer_der.c:_fr_dbuff_in_int32 Unexecuted instantiation: fuzzer_der.c:_fr_dbuff_in_int64 Unexecuted instantiation: fuzzer_dns.c:_fr_dbuff_in_uint16 Unexecuted instantiation: fuzzer_dns.c:_fr_dbuff_in_uint32 Unexecuted instantiation: fuzzer_dns.c:_fr_dbuff_in_uint64 Unexecuted instantiation: fuzzer_dns.c:_fr_dbuff_in_int16 Unexecuted instantiation: fuzzer_dns.c:_fr_dbuff_in_int32 Unexecuted instantiation: fuzzer_dns.c:_fr_dbuff_in_int64 Unexecuted instantiation: fuzzer_tacacs.c:_fr_dbuff_in_uint16 Unexecuted instantiation: fuzzer_tacacs.c:_fr_dbuff_in_uint32 Unexecuted instantiation: fuzzer_tacacs.c:_fr_dbuff_in_uint64 Unexecuted instantiation: fuzzer_tacacs.c:_fr_dbuff_in_int16 Unexecuted instantiation: fuzzer_tacacs.c:_fr_dbuff_in_int32 Unexecuted instantiation: fuzzer_tacacs.c:_fr_dbuff_in_int64 Unexecuted instantiation: fuzzer_bfd.c:_fr_dbuff_in_uint16 Unexecuted instantiation: fuzzer_bfd.c:_fr_dbuff_in_uint32 Unexecuted instantiation: fuzzer_bfd.c:_fr_dbuff_in_uint64 Unexecuted instantiation: fuzzer_bfd.c:_fr_dbuff_in_int16 Unexecuted instantiation: fuzzer_bfd.c:_fr_dbuff_in_int32 Unexecuted instantiation: fuzzer_bfd.c:_fr_dbuff_in_int64 Unexecuted instantiation: fuzzer_radius.c:_fr_dbuff_in_uint16 Unexecuted instantiation: fuzzer_radius.c:_fr_dbuff_in_uint32 Unexecuted instantiation: fuzzer_radius.c:_fr_dbuff_in_uint64 Unexecuted instantiation: fuzzer_radius.c:_fr_dbuff_in_int16 Unexecuted instantiation: fuzzer_radius.c:_fr_dbuff_in_int32 Unexecuted instantiation: fuzzer_radius.c:_fr_dbuff_in_int64 Unexecuted instantiation: fuzzer_tftp.c:_fr_dbuff_in_uint16 Unexecuted instantiation: fuzzer_tftp.c:_fr_dbuff_in_uint32 Unexecuted instantiation: fuzzer_tftp.c:_fr_dbuff_in_uint64 Unexecuted instantiation: fuzzer_tftp.c:_fr_dbuff_in_int16 Unexecuted instantiation: fuzzer_tftp.c:_fr_dbuff_in_int32 Unexecuted instantiation: fuzzer_tftp.c:_fr_dbuff_in_int64 Unexecuted instantiation: fuzzer_vmps.c:_fr_dbuff_in_uint16 Unexecuted instantiation: fuzzer_vmps.c:_fr_dbuff_in_uint32 Unexecuted instantiation: fuzzer_vmps.c:_fr_dbuff_in_uint64 Unexecuted instantiation: fuzzer_vmps.c:_fr_dbuff_in_int16 Unexecuted instantiation: fuzzer_vmps.c:_fr_dbuff_in_int32 Unexecuted instantiation: fuzzer_vmps.c:_fr_dbuff_in_int64 Unexecuted instantiation: base16.c:_fr_dbuff_in_uint16 Unexecuted instantiation: base16.c:_fr_dbuff_in_uint32 Unexecuted instantiation: base16.c:_fr_dbuff_in_uint64 Unexecuted instantiation: base16.c:_fr_dbuff_in_int16 Unexecuted instantiation: base16.c:_fr_dbuff_in_int32 Unexecuted instantiation: base16.c:_fr_dbuff_in_int64 Unexecuted instantiation: base32.c:_fr_dbuff_in_uint16 Unexecuted instantiation: base32.c:_fr_dbuff_in_uint32 Unexecuted instantiation: base32.c:_fr_dbuff_in_uint64 Unexecuted instantiation: base32.c:_fr_dbuff_in_int16 Unexecuted instantiation: base32.c:_fr_dbuff_in_int32 Unexecuted instantiation: base32.c:_fr_dbuff_in_int64 Unexecuted instantiation: base64.c:_fr_dbuff_in_uint16 Unexecuted instantiation: base64.c:_fr_dbuff_in_uint32 Unexecuted instantiation: base64.c:_fr_dbuff_in_uint64 Unexecuted instantiation: base64.c:_fr_dbuff_in_int16 Unexecuted instantiation: base64.c:_fr_dbuff_in_int32 Unexecuted instantiation: base64.c:_fr_dbuff_in_int64 Unexecuted instantiation: calc.c:_fr_dbuff_in_uint16 Unexecuted instantiation: calc.c:_fr_dbuff_in_uint32 Unexecuted instantiation: calc.c:_fr_dbuff_in_uint64 Unexecuted instantiation: calc.c:_fr_dbuff_in_int16 Unexecuted instantiation: calc.c:_fr_dbuff_in_int32 Unexecuted instantiation: calc.c:_fr_dbuff_in_int64 Unexecuted instantiation: cbor.c:_fr_dbuff_in_uint16 Unexecuted instantiation: cbor.c:_fr_dbuff_in_uint32 Unexecuted instantiation: cbor.c:_fr_dbuff_in_uint64 Unexecuted instantiation: cbor.c:_fr_dbuff_in_int16 Unexecuted instantiation: cbor.c:_fr_dbuff_in_int32 Unexecuted instantiation: cbor.c:_fr_dbuff_in_int64 Unexecuted instantiation: dbuff.c:_fr_dbuff_in_uint16 Unexecuted instantiation: dbuff.c:_fr_dbuff_in_uint32 Unexecuted instantiation: dbuff.c:_fr_dbuff_in_uint64 Unexecuted instantiation: dbuff.c:_fr_dbuff_in_int16 Unexecuted instantiation: dbuff.c:_fr_dbuff_in_int32 Unexecuted instantiation: dbuff.c:_fr_dbuff_in_int64 Unexecuted instantiation: decode.c:_fr_dbuff_in_uint16 Unexecuted instantiation: decode.c:_fr_dbuff_in_uint32 Unexecuted instantiation: decode.c:_fr_dbuff_in_uint64 Unexecuted instantiation: decode.c:_fr_dbuff_in_int16 Unexecuted instantiation: decode.c:_fr_dbuff_in_int32 Unexecuted instantiation: decode.c:_fr_dbuff_in_int64 Unexecuted instantiation: dict_ext.c:_fr_dbuff_in_uint16 Unexecuted instantiation: dict_ext.c:_fr_dbuff_in_uint32 Unexecuted instantiation: dict_ext.c:_fr_dbuff_in_uint64 Unexecuted instantiation: dict_ext.c:_fr_dbuff_in_int16 Unexecuted instantiation: dict_ext.c:_fr_dbuff_in_int32 Unexecuted instantiation: dict_ext.c:_fr_dbuff_in_int64 Unexecuted instantiation: dict_fixup.c:_fr_dbuff_in_uint16 Unexecuted instantiation: dict_fixup.c:_fr_dbuff_in_uint32 Unexecuted instantiation: dict_fixup.c:_fr_dbuff_in_uint64 Unexecuted instantiation: dict_fixup.c:_fr_dbuff_in_int16 Unexecuted instantiation: dict_fixup.c:_fr_dbuff_in_int32 Unexecuted instantiation: dict_fixup.c:_fr_dbuff_in_int64 Unexecuted instantiation: dict_print.c:_fr_dbuff_in_uint16 Unexecuted instantiation: dict_print.c:_fr_dbuff_in_uint32 Unexecuted instantiation: dict_print.c:_fr_dbuff_in_uint64 Unexecuted instantiation: dict_print.c:_fr_dbuff_in_int16 Unexecuted instantiation: dict_print.c:_fr_dbuff_in_int32 Unexecuted instantiation: dict_print.c:_fr_dbuff_in_int64 Unexecuted instantiation: dict_test.c:_fr_dbuff_in_uint16 Unexecuted instantiation: dict_test.c:_fr_dbuff_in_uint32 Unexecuted instantiation: dict_test.c:_fr_dbuff_in_uint64 Unexecuted instantiation: dict_test.c:_fr_dbuff_in_int16 Unexecuted instantiation: dict_test.c:_fr_dbuff_in_int32 Unexecuted instantiation: dict_test.c:_fr_dbuff_in_int64 Unexecuted instantiation: dict_tokenize.c:_fr_dbuff_in_uint16 Unexecuted instantiation: dict_tokenize.c:_fr_dbuff_in_uint32 Unexecuted instantiation: dict_tokenize.c:_fr_dbuff_in_uint64 Unexecuted instantiation: dict_tokenize.c:_fr_dbuff_in_int16 Unexecuted instantiation: dict_tokenize.c:_fr_dbuff_in_int32 Unexecuted instantiation: dict_tokenize.c:_fr_dbuff_in_int64 Unexecuted instantiation: dict_unknown.c:_fr_dbuff_in_uint16 Unexecuted instantiation: dict_unknown.c:_fr_dbuff_in_uint32 Unexecuted instantiation: dict_unknown.c:_fr_dbuff_in_uint64 Unexecuted instantiation: dict_unknown.c:_fr_dbuff_in_int16 Unexecuted instantiation: dict_unknown.c:_fr_dbuff_in_int32 Unexecuted instantiation: dict_unknown.c:_fr_dbuff_in_int64 Unexecuted instantiation: dict_util.c:_fr_dbuff_in_uint16 Unexecuted instantiation: dict_util.c:_fr_dbuff_in_uint32 Unexecuted instantiation: dict_util.c:_fr_dbuff_in_uint64 Unexecuted instantiation: dict_util.c:_fr_dbuff_in_int16 Unexecuted instantiation: dict_util.c:_fr_dbuff_in_int32 Unexecuted instantiation: dict_util.c:_fr_dbuff_in_int64 Unexecuted instantiation: dict_validate.c:_fr_dbuff_in_uint16 Unexecuted instantiation: dict_validate.c:_fr_dbuff_in_uint32 Unexecuted instantiation: dict_validate.c:_fr_dbuff_in_uint64 Unexecuted instantiation: dict_validate.c:_fr_dbuff_in_int16 Unexecuted instantiation: dict_validate.c:_fr_dbuff_in_int32 Unexecuted instantiation: dict_validate.c:_fr_dbuff_in_int64 Unexecuted instantiation: dl.c:_fr_dbuff_in_uint16 Unexecuted instantiation: dl.c:_fr_dbuff_in_uint32 Unexecuted instantiation: dl.c:_fr_dbuff_in_uint64 Unexecuted instantiation: dl.c:_fr_dbuff_in_int16 Unexecuted instantiation: dl.c:_fr_dbuff_in_int32 Unexecuted instantiation: dl.c:_fr_dbuff_in_int64 Unexecuted instantiation: dns.c:_fr_dbuff_in_uint16 Unexecuted instantiation: dns.c:_fr_dbuff_in_uint32 Unexecuted instantiation: dns.c:_fr_dbuff_in_uint64 Unexecuted instantiation: dns.c:_fr_dbuff_in_int16 Unexecuted instantiation: dns.c:_fr_dbuff_in_int32 Unexecuted instantiation: dns.c:_fr_dbuff_in_int64 Unexecuted instantiation: edit.c:_fr_dbuff_in_uint16 Unexecuted instantiation: edit.c:_fr_dbuff_in_uint32 Unexecuted instantiation: edit.c:_fr_dbuff_in_uint64 Unexecuted instantiation: edit.c:_fr_dbuff_in_int16 Unexecuted instantiation: edit.c:_fr_dbuff_in_int32 Unexecuted instantiation: edit.c:_fr_dbuff_in_int64 Unexecuted instantiation: encode.c:_fr_dbuff_in_uint16 Unexecuted instantiation: encode.c:_fr_dbuff_in_uint32 Unexecuted instantiation: encode.c:_fr_dbuff_in_uint64 Unexecuted instantiation: encode.c:_fr_dbuff_in_int16 Unexecuted instantiation: encode.c:_fr_dbuff_in_int32 Unexecuted instantiation: encode.c:_fr_dbuff_in_int64 Unexecuted instantiation: timer.c:_fr_dbuff_in_uint16 Unexecuted instantiation: timer.c:_fr_dbuff_in_uint32 Unexecuted instantiation: timer.c:_fr_dbuff_in_uint64 Unexecuted instantiation: timer.c:_fr_dbuff_in_int16 Unexecuted instantiation: timer.c:_fr_dbuff_in_int32 Unexecuted instantiation: timer.c:_fr_dbuff_in_int64 Unexecuted instantiation: file.c:_fr_dbuff_in_uint16 Unexecuted instantiation: file.c:_fr_dbuff_in_uint32 Unexecuted instantiation: file.c:_fr_dbuff_in_uint64 Unexecuted instantiation: file.c:_fr_dbuff_in_int16 Unexecuted instantiation: file.c:_fr_dbuff_in_int32 Unexecuted instantiation: file.c:_fr_dbuff_in_int64 Unexecuted instantiation: inet.c:_fr_dbuff_in_uint16 Unexecuted instantiation: inet.c:_fr_dbuff_in_uint32 Unexecuted instantiation: inet.c:_fr_dbuff_in_uint64 Unexecuted instantiation: inet.c:_fr_dbuff_in_int16 Unexecuted instantiation: inet.c:_fr_dbuff_in_int32 Unexecuted instantiation: inet.c:_fr_dbuff_in_int64 Unexecuted instantiation: iovec.c:_fr_dbuff_in_uint16 Unexecuted instantiation: iovec.c:_fr_dbuff_in_uint32 Unexecuted instantiation: iovec.c:_fr_dbuff_in_uint64 Unexecuted instantiation: iovec.c:_fr_dbuff_in_int16 Unexecuted instantiation: iovec.c:_fr_dbuff_in_int32 Unexecuted instantiation: iovec.c:_fr_dbuff_in_int64 Unexecuted instantiation: log.c:_fr_dbuff_in_uint16 Unexecuted instantiation: log.c:_fr_dbuff_in_uint32 Unexecuted instantiation: log.c:_fr_dbuff_in_uint64 Unexecuted instantiation: log.c:_fr_dbuff_in_int16 Unexecuted instantiation: log.c:_fr_dbuff_in_int32 Unexecuted instantiation: log.c:_fr_dbuff_in_int64 Unexecuted instantiation: misc.c:_fr_dbuff_in_uint16 Unexecuted instantiation: misc.c:_fr_dbuff_in_uint32 Unexecuted instantiation: misc.c:_fr_dbuff_in_uint64 Unexecuted instantiation: misc.c:_fr_dbuff_in_int16 Unexecuted instantiation: misc.c:_fr_dbuff_in_int32 Unexecuted instantiation: misc.c:_fr_dbuff_in_int64 Unexecuted instantiation: packet.c:_fr_dbuff_in_uint16 Unexecuted instantiation: packet.c:_fr_dbuff_in_uint32 Unexecuted instantiation: packet.c:_fr_dbuff_in_uint64 Unexecuted instantiation: packet.c:_fr_dbuff_in_int16 Unexecuted instantiation: packet.c:_fr_dbuff_in_int32 Unexecuted instantiation: packet.c:_fr_dbuff_in_int64 Unexecuted instantiation: pair.c:_fr_dbuff_in_uint16 Unexecuted instantiation: pair.c:_fr_dbuff_in_uint32 Unexecuted instantiation: pair.c:_fr_dbuff_in_uint64 Unexecuted instantiation: pair.c:_fr_dbuff_in_int16 Unexecuted instantiation: pair.c:_fr_dbuff_in_int32 Unexecuted instantiation: pair.c:_fr_dbuff_in_int64 Unexecuted instantiation: pair_inline.c:_fr_dbuff_in_uint16 Unexecuted instantiation: pair_inline.c:_fr_dbuff_in_uint32 Unexecuted instantiation: pair_inline.c:_fr_dbuff_in_uint64 Unexecuted instantiation: pair_inline.c:_fr_dbuff_in_int16 Unexecuted instantiation: pair_inline.c:_fr_dbuff_in_int32 Unexecuted instantiation: pair_inline.c:_fr_dbuff_in_int64 Unexecuted instantiation: pair_legacy.c:_fr_dbuff_in_uint16 Unexecuted instantiation: pair_legacy.c:_fr_dbuff_in_uint32 Unexecuted instantiation: pair_legacy.c:_fr_dbuff_in_uint64 Unexecuted instantiation: pair_legacy.c:_fr_dbuff_in_int16 Unexecuted instantiation: pair_legacy.c:_fr_dbuff_in_int32 Unexecuted instantiation: pair_legacy.c:_fr_dbuff_in_int64 Unexecuted instantiation: pair_print.c:_fr_dbuff_in_uint16 Unexecuted instantiation: pair_print.c:_fr_dbuff_in_uint32 Unexecuted instantiation: pair_print.c:_fr_dbuff_in_uint64 Unexecuted instantiation: pair_print.c:_fr_dbuff_in_int16 Unexecuted instantiation: pair_print.c:_fr_dbuff_in_int32 Unexecuted instantiation: pair_print.c:_fr_dbuff_in_int64 Unexecuted instantiation: pair_tokenize.c:_fr_dbuff_in_uint16 Unexecuted instantiation: pair_tokenize.c:_fr_dbuff_in_uint32 Unexecuted instantiation: pair_tokenize.c:_fr_dbuff_in_uint64 Unexecuted instantiation: pair_tokenize.c:_fr_dbuff_in_int16 Unexecuted instantiation: pair_tokenize.c:_fr_dbuff_in_int32 Unexecuted instantiation: pair_tokenize.c:_fr_dbuff_in_int64 Unexecuted instantiation: print.c:_fr_dbuff_in_uint16 Unexecuted instantiation: print.c:_fr_dbuff_in_uint32 Unexecuted instantiation: print.c:_fr_dbuff_in_uint64 Unexecuted instantiation: print.c:_fr_dbuff_in_int16 Unexecuted instantiation: print.c:_fr_dbuff_in_int32 Unexecuted instantiation: print.c:_fr_dbuff_in_int64 Unexecuted instantiation: proto.c:_fr_dbuff_in_uint16 Unexecuted instantiation: proto.c:_fr_dbuff_in_uint32 Unexecuted instantiation: proto.c:_fr_dbuff_in_uint64 Unexecuted instantiation: proto.c:_fr_dbuff_in_int16 Unexecuted instantiation: proto.c:_fr_dbuff_in_int32 Unexecuted instantiation: proto.c:_fr_dbuff_in_int64 Unexecuted instantiation: regex.c:_fr_dbuff_in_uint16 Unexecuted instantiation: regex.c:_fr_dbuff_in_uint32 Unexecuted instantiation: regex.c:_fr_dbuff_in_uint64 Unexecuted instantiation: regex.c:_fr_dbuff_in_int16 Unexecuted instantiation: regex.c:_fr_dbuff_in_int32 Unexecuted instantiation: regex.c:_fr_dbuff_in_int64 Unexecuted instantiation: socket.c:_fr_dbuff_in_uint16 Unexecuted instantiation: socket.c:_fr_dbuff_in_uint32 Unexecuted instantiation: socket.c:_fr_dbuff_in_uint64 Unexecuted instantiation: socket.c:_fr_dbuff_in_int16 Unexecuted instantiation: socket.c:_fr_dbuff_in_int32 Unexecuted instantiation: socket.c:_fr_dbuff_in_int64 Unexecuted instantiation: stats.c:_fr_dbuff_in_uint16 Unexecuted instantiation: stats.c:_fr_dbuff_in_uint32 Unexecuted instantiation: stats.c:_fr_dbuff_in_uint64 Unexecuted instantiation: stats.c:_fr_dbuff_in_int16 Unexecuted instantiation: stats.c:_fr_dbuff_in_int32 Unexecuted instantiation: stats.c:_fr_dbuff_in_int64 Unexecuted instantiation: struct.c:_fr_dbuff_in_uint32 Unexecuted instantiation: struct.c:_fr_dbuff_in_uint64 Unexecuted instantiation: struct.c:_fr_dbuff_in_int16 Unexecuted instantiation: struct.c:_fr_dbuff_in_int32 Unexecuted instantiation: struct.c:_fr_dbuff_in_int64 Unexecuted instantiation: types.c:_fr_dbuff_in_uint16 Unexecuted instantiation: types.c:_fr_dbuff_in_uint32 Unexecuted instantiation: types.c:_fr_dbuff_in_uint64 Unexecuted instantiation: types.c:_fr_dbuff_in_int16 Unexecuted instantiation: types.c:_fr_dbuff_in_int32 Unexecuted instantiation: types.c:_fr_dbuff_in_int64 Unexecuted instantiation: uri.c:_fr_dbuff_in_uint16 Unexecuted instantiation: uri.c:_fr_dbuff_in_uint32 Unexecuted instantiation: uri.c:_fr_dbuff_in_uint64 Unexecuted instantiation: uri.c:_fr_dbuff_in_int16 Unexecuted instantiation: uri.c:_fr_dbuff_in_int32 Unexecuted instantiation: uri.c:_fr_dbuff_in_int64 Unexecuted instantiation: fuzzer.c:_fr_dbuff_in_uint16 Unexecuted instantiation: fuzzer.c:_fr_dbuff_in_uint32 Unexecuted instantiation: fuzzer.c:_fr_dbuff_in_uint64 Unexecuted instantiation: fuzzer.c:_fr_dbuff_in_int16 Unexecuted instantiation: fuzzer.c:_fr_dbuff_in_int32 Unexecuted instantiation: fuzzer.c:_fr_dbuff_in_int64 Unexecuted instantiation: base.c:_fr_dbuff_in_uint16 Unexecuted instantiation: base.c:_fr_dbuff_in_uint32 Unexecuted instantiation: base.c:_fr_dbuff_in_uint64 Unexecuted instantiation: base.c:_fr_dbuff_in_int16 Unexecuted instantiation: base.c:_fr_dbuff_in_int32 Unexecuted instantiation: base.c:_fr_dbuff_in_int64 Unexecuted instantiation: raw.c:_fr_dbuff_in_uint16 Unexecuted instantiation: raw.c:_fr_dbuff_in_uint32 Unexecuted instantiation: raw.c:_fr_dbuff_in_uint64 Unexecuted instantiation: raw.c:_fr_dbuff_in_int16 Unexecuted instantiation: raw.c:_fr_dbuff_in_int32 Unexecuted instantiation: raw.c:_fr_dbuff_in_int64 Unexecuted instantiation: udp.c:_fr_dbuff_in_uint16 Unexecuted instantiation: udp.c:_fr_dbuff_in_uint32 Unexecuted instantiation: udp.c:_fr_dbuff_in_uint64 Unexecuted instantiation: udp.c:_fr_dbuff_in_int16 Unexecuted instantiation: udp.c:_fr_dbuff_in_int32 Unexecuted instantiation: udp.c:_fr_dbuff_in_int64 Unexecuted instantiation: json.c:_fr_dbuff_in_uint16 Unexecuted instantiation: json.c:_fr_dbuff_in_uint32 Unexecuted instantiation: json.c:_fr_dbuff_in_uint64 Unexecuted instantiation: json.c:_fr_dbuff_in_int16 Unexecuted instantiation: json.c:_fr_dbuff_in_int32 Unexecuted instantiation: json.c:_fr_dbuff_in_int64 Unexecuted instantiation: jpath.c:_fr_dbuff_in_uint16 Unexecuted instantiation: jpath.c:_fr_dbuff_in_uint32 Unexecuted instantiation: jpath.c:_fr_dbuff_in_uint64 Unexecuted instantiation: jpath.c:_fr_dbuff_in_int16 Unexecuted instantiation: jpath.c:_fr_dbuff_in_int32 Unexecuted instantiation: jpath.c:_fr_dbuff_in_int64 Unexecuted instantiation: bio.c:_fr_dbuff_in_uint16 Unexecuted instantiation: bio.c:_fr_dbuff_in_uint32 Unexecuted instantiation: bio.c:_fr_dbuff_in_uint64 Unexecuted instantiation: bio.c:_fr_dbuff_in_int16 Unexecuted instantiation: bio.c:_fr_dbuff_in_int32 Unexecuted instantiation: bio.c:_fr_dbuff_in_int64 Unexecuted instantiation: cache.c:_fr_dbuff_in_uint16 Unexecuted instantiation: cache.c:_fr_dbuff_in_uint32 Unexecuted instantiation: cache.c:_fr_dbuff_in_uint64 Unexecuted instantiation: cache.c:_fr_dbuff_in_int16 Unexecuted instantiation: cache.c:_fr_dbuff_in_int32 Unexecuted instantiation: cache.c:_fr_dbuff_in_int64 Unexecuted instantiation: cert.c:_fr_dbuff_in_uint16 Unexecuted instantiation: cert.c:_fr_dbuff_in_uint32 Unexecuted instantiation: cert.c:_fr_dbuff_in_uint64 Unexecuted instantiation: cert.c:_fr_dbuff_in_int16 Unexecuted instantiation: cert.c:_fr_dbuff_in_int32 Unexecuted instantiation: cert.c:_fr_dbuff_in_int64 Unexecuted instantiation: conf.c:_fr_dbuff_in_uint16 Unexecuted instantiation: conf.c:_fr_dbuff_in_uint32 Unexecuted instantiation: conf.c:_fr_dbuff_in_uint64 Unexecuted instantiation: conf.c:_fr_dbuff_in_int16 Unexecuted instantiation: conf.c:_fr_dbuff_in_int32 Unexecuted instantiation: conf.c:_fr_dbuff_in_int64 Unexecuted instantiation: ctx.c:_fr_dbuff_in_uint16 Unexecuted instantiation: ctx.c:_fr_dbuff_in_uint32 Unexecuted instantiation: ctx.c:_fr_dbuff_in_uint64 Unexecuted instantiation: ctx.c:_fr_dbuff_in_int16 Unexecuted instantiation: ctx.c:_fr_dbuff_in_int32 Unexecuted instantiation: ctx.c:_fr_dbuff_in_int64 Unexecuted instantiation: engine.c:_fr_dbuff_in_uint16 Unexecuted instantiation: engine.c:_fr_dbuff_in_uint32 Unexecuted instantiation: engine.c:_fr_dbuff_in_uint64 Unexecuted instantiation: engine.c:_fr_dbuff_in_int16 Unexecuted instantiation: engine.c:_fr_dbuff_in_int32 Unexecuted instantiation: engine.c:_fr_dbuff_in_int64 Unexecuted instantiation: pairs.c:_fr_dbuff_in_uint16 Unexecuted instantiation: pairs.c:_fr_dbuff_in_uint32 Unexecuted instantiation: pairs.c:_fr_dbuff_in_uint64 Unexecuted instantiation: pairs.c:_fr_dbuff_in_int16 Unexecuted instantiation: pairs.c:_fr_dbuff_in_int32 Unexecuted instantiation: pairs.c:_fr_dbuff_in_int64 Unexecuted instantiation: session.c:_fr_dbuff_in_uint16 Unexecuted instantiation: session.c:_fr_dbuff_in_uint32 Unexecuted instantiation: session.c:_fr_dbuff_in_uint64 Unexecuted instantiation: session.c:_fr_dbuff_in_int16 Unexecuted instantiation: session.c:_fr_dbuff_in_int32 Unexecuted instantiation: session.c:_fr_dbuff_in_int64 Unexecuted instantiation: strerror.c:_fr_dbuff_in_uint16 Unexecuted instantiation: strerror.c:_fr_dbuff_in_uint32 Unexecuted instantiation: strerror.c:_fr_dbuff_in_uint64 Unexecuted instantiation: strerror.c:_fr_dbuff_in_int16 Unexecuted instantiation: strerror.c:_fr_dbuff_in_int32 Unexecuted instantiation: strerror.c:_fr_dbuff_in_int64 Unexecuted instantiation: utils.c:_fr_dbuff_in_uint16 Unexecuted instantiation: utils.c:_fr_dbuff_in_uint32 Unexecuted instantiation: utils.c:_fr_dbuff_in_uint64 Unexecuted instantiation: utils.c:_fr_dbuff_in_int16 Unexecuted instantiation: utils.c:_fr_dbuff_in_int32 Unexecuted instantiation: utils.c:_fr_dbuff_in_int64 Unexecuted instantiation: verify.c:_fr_dbuff_in_uint16 Unexecuted instantiation: verify.c:_fr_dbuff_in_uint32 Unexecuted instantiation: verify.c:_fr_dbuff_in_uint64 Unexecuted instantiation: verify.c:_fr_dbuff_in_int16 Unexecuted instantiation: verify.c:_fr_dbuff_in_int32 Unexecuted instantiation: verify.c:_fr_dbuff_in_int64 Unexecuted instantiation: version.c:_fr_dbuff_in_uint16 Unexecuted instantiation: version.c:_fr_dbuff_in_uint32 Unexecuted instantiation: version.c:_fr_dbuff_in_uint64 Unexecuted instantiation: version.c:_fr_dbuff_in_int16 Unexecuted instantiation: version.c:_fr_dbuff_in_int32 Unexecuted instantiation: version.c:_fr_dbuff_in_int64 Unexecuted instantiation: virtual_server.c:_fr_dbuff_in_uint16 Unexecuted instantiation: virtual_server.c:_fr_dbuff_in_uint32 Unexecuted instantiation: virtual_server.c:_fr_dbuff_in_uint64 Unexecuted instantiation: virtual_server.c:_fr_dbuff_in_int16 Unexecuted instantiation: virtual_server.c:_fr_dbuff_in_int32 Unexecuted instantiation: virtual_server.c:_fr_dbuff_in_int64 Unexecuted instantiation: list.c:_fr_dbuff_in_uint16 Unexecuted instantiation: list.c:_fr_dbuff_in_uint32 Unexecuted instantiation: list.c:_fr_dbuff_in_uint64 Unexecuted instantiation: list.c:_fr_dbuff_in_int16 Unexecuted instantiation: list.c:_fr_dbuff_in_int32 Unexecuted instantiation: list.c:_fr_dbuff_in_int64 Unexecuted instantiation: tcp.c:_fr_dbuff_in_uint16 Unexecuted instantiation: tcp.c:_fr_dbuff_in_uint32 Unexecuted instantiation: tcp.c:_fr_dbuff_in_uint64 Unexecuted instantiation: tcp.c:_fr_dbuff_in_int16 Unexecuted instantiation: tcp.c:_fr_dbuff_in_int32 Unexecuted instantiation: tcp.c:_fr_dbuff_in_int64 Unexecuted instantiation: abinary.c:_fr_dbuff_in_uint16 Unexecuted instantiation: abinary.c:_fr_dbuff_in_uint32 Unexecuted instantiation: abinary.c:_fr_dbuff_in_uint64 Unexecuted instantiation: abinary.c:_fr_dbuff_in_int16 Unexecuted instantiation: abinary.c:_fr_dbuff_in_int32 Unexecuted instantiation: abinary.c:_fr_dbuff_in_int64 Unexecuted instantiation: auth.c:_fr_dbuff_in_uint16 Unexecuted instantiation: auth.c:_fr_dbuff_in_uint32 Unexecuted instantiation: auth.c:_fr_dbuff_in_uint64 Unexecuted instantiation: auth.c:_fr_dbuff_in_int16 Unexecuted instantiation: auth.c:_fr_dbuff_in_int32 Unexecuted instantiation: auth.c:_fr_dbuff_in_int64 Unexecuted instantiation: cf_file.c:_fr_dbuff_in_uint16 Unexecuted instantiation: cf_file.c:_fr_dbuff_in_uint32 Unexecuted instantiation: cf_file.c:_fr_dbuff_in_uint64 Unexecuted instantiation: cf_file.c:_fr_dbuff_in_int16 Unexecuted instantiation: cf_file.c:_fr_dbuff_in_int32 Unexecuted instantiation: cf_file.c:_fr_dbuff_in_int64 Unexecuted instantiation: cf_parse.c:_fr_dbuff_in_uint16 Unexecuted instantiation: cf_parse.c:_fr_dbuff_in_uint32 Unexecuted instantiation: cf_parse.c:_fr_dbuff_in_uint64 Unexecuted instantiation: cf_parse.c:_fr_dbuff_in_int16 Unexecuted instantiation: cf_parse.c:_fr_dbuff_in_int32 Unexecuted instantiation: cf_parse.c:_fr_dbuff_in_int64 Unexecuted instantiation: cf_util.c:_fr_dbuff_in_uint16 Unexecuted instantiation: cf_util.c:_fr_dbuff_in_uint32 Unexecuted instantiation: cf_util.c:_fr_dbuff_in_uint64 Unexecuted instantiation: cf_util.c:_fr_dbuff_in_int16 Unexecuted instantiation: cf_util.c:_fr_dbuff_in_int32 Unexecuted instantiation: cf_util.c:_fr_dbuff_in_int64 Unexecuted instantiation: client.c:_fr_dbuff_in_uint16 Unexecuted instantiation: client.c:_fr_dbuff_in_uint32 Unexecuted instantiation: client.c:_fr_dbuff_in_uint64 Unexecuted instantiation: client.c:_fr_dbuff_in_int16 Unexecuted instantiation: client.c:_fr_dbuff_in_int32 Unexecuted instantiation: client.c:_fr_dbuff_in_int64 Unexecuted instantiation: command.c:_fr_dbuff_in_uint16 Unexecuted instantiation: command.c:_fr_dbuff_in_uint32 Unexecuted instantiation: command.c:_fr_dbuff_in_uint64 Unexecuted instantiation: command.c:_fr_dbuff_in_int16 Unexecuted instantiation: command.c:_fr_dbuff_in_int32 Unexecuted instantiation: command.c:_fr_dbuff_in_int64 Unexecuted instantiation: connection.c:_fr_dbuff_in_uint16 Unexecuted instantiation: connection.c:_fr_dbuff_in_uint32 Unexecuted instantiation: connection.c:_fr_dbuff_in_uint64 Unexecuted instantiation: connection.c:_fr_dbuff_in_int16 Unexecuted instantiation: connection.c:_fr_dbuff_in_int32 Unexecuted instantiation: connection.c:_fr_dbuff_in_int64 Unexecuted instantiation: dependency.c:_fr_dbuff_in_uint16 Unexecuted instantiation: dependency.c:_fr_dbuff_in_uint32 Unexecuted instantiation: dependency.c:_fr_dbuff_in_uint64 Unexecuted instantiation: dependency.c:_fr_dbuff_in_int16 Unexecuted instantiation: dependency.c:_fr_dbuff_in_int32 Unexecuted instantiation: dependency.c:_fr_dbuff_in_int64 Unexecuted instantiation: dl_module.c:_fr_dbuff_in_uint16 Unexecuted instantiation: dl_module.c:_fr_dbuff_in_uint32 Unexecuted instantiation: dl_module.c:_fr_dbuff_in_uint64 Unexecuted instantiation: dl_module.c:_fr_dbuff_in_int16 Unexecuted instantiation: dl_module.c:_fr_dbuff_in_int32 Unexecuted instantiation: dl_module.c:_fr_dbuff_in_int64 Unexecuted instantiation: exec.c:_fr_dbuff_in_uint16 Unexecuted instantiation: exec.c:_fr_dbuff_in_uint32 Unexecuted instantiation: exec.c:_fr_dbuff_in_uint64 Unexecuted instantiation: exec.c:_fr_dbuff_in_int16 Unexecuted instantiation: exec.c:_fr_dbuff_in_int32 Unexecuted instantiation: exec.c:_fr_dbuff_in_int64 Unexecuted instantiation: exec_legacy.c:_fr_dbuff_in_uint16 Unexecuted instantiation: exec_legacy.c:_fr_dbuff_in_uint32 Unexecuted instantiation: exec_legacy.c:_fr_dbuff_in_uint64 Unexecuted instantiation: exec_legacy.c:_fr_dbuff_in_int16 Unexecuted instantiation: exec_legacy.c:_fr_dbuff_in_int32 Unexecuted instantiation: exec_legacy.c:_fr_dbuff_in_int64 Unexecuted instantiation: exfile.c:_fr_dbuff_in_uint16 Unexecuted instantiation: exfile.c:_fr_dbuff_in_uint32 Unexecuted instantiation: exfile.c:_fr_dbuff_in_uint64 Unexecuted instantiation: exfile.c:_fr_dbuff_in_int16 Unexecuted instantiation: exfile.c:_fr_dbuff_in_int32 Unexecuted instantiation: exfile.c:_fr_dbuff_in_int64 Unexecuted instantiation: global_lib.c:_fr_dbuff_in_uint16 Unexecuted instantiation: global_lib.c:_fr_dbuff_in_uint32 Unexecuted instantiation: global_lib.c:_fr_dbuff_in_uint64 Unexecuted instantiation: global_lib.c:_fr_dbuff_in_int16 Unexecuted instantiation: global_lib.c:_fr_dbuff_in_int32 Unexecuted instantiation: global_lib.c:_fr_dbuff_in_int64 Unexecuted instantiation: main_config.c:_fr_dbuff_in_uint16 Unexecuted instantiation: main_config.c:_fr_dbuff_in_uint32 Unexecuted instantiation: main_config.c:_fr_dbuff_in_uint64 Unexecuted instantiation: main_config.c:_fr_dbuff_in_int16 Unexecuted instantiation: main_config.c:_fr_dbuff_in_int32 Unexecuted instantiation: main_config.c:_fr_dbuff_in_int64 Unexecuted instantiation: main_loop.c:_fr_dbuff_in_uint16 Unexecuted instantiation: main_loop.c:_fr_dbuff_in_uint32 Unexecuted instantiation: main_loop.c:_fr_dbuff_in_uint64 Unexecuted instantiation: main_loop.c:_fr_dbuff_in_int16 Unexecuted instantiation: main_loop.c:_fr_dbuff_in_int32 Unexecuted instantiation: main_loop.c:_fr_dbuff_in_int64 Unexecuted instantiation: map.c:_fr_dbuff_in_uint16 Unexecuted instantiation: map.c:_fr_dbuff_in_uint32 Unexecuted instantiation: map.c:_fr_dbuff_in_uint64 Unexecuted instantiation: map.c:_fr_dbuff_in_int16 Unexecuted instantiation: map.c:_fr_dbuff_in_int32 Unexecuted instantiation: map.c:_fr_dbuff_in_int64 Unexecuted instantiation: map_proc.c:_fr_dbuff_in_uint16 Unexecuted instantiation: map_proc.c:_fr_dbuff_in_uint32 Unexecuted instantiation: map_proc.c:_fr_dbuff_in_uint64 Unexecuted instantiation: map_proc.c:_fr_dbuff_in_int16 Unexecuted instantiation: map_proc.c:_fr_dbuff_in_int32 Unexecuted instantiation: map_proc.c:_fr_dbuff_in_int64 Unexecuted instantiation: module.c:_fr_dbuff_in_uint16 Unexecuted instantiation: module.c:_fr_dbuff_in_uint32 Unexecuted instantiation: module.c:_fr_dbuff_in_uint64 Unexecuted instantiation: module.c:_fr_dbuff_in_int16 Unexecuted instantiation: module.c:_fr_dbuff_in_int32 Unexecuted instantiation: module.c:_fr_dbuff_in_int64 Unexecuted instantiation: module_method.c:_fr_dbuff_in_uint16 Unexecuted instantiation: module_method.c:_fr_dbuff_in_uint32 Unexecuted instantiation: module_method.c:_fr_dbuff_in_uint64 Unexecuted instantiation: module_method.c:_fr_dbuff_in_int16 Unexecuted instantiation: module_method.c:_fr_dbuff_in_int32 Unexecuted instantiation: module_method.c:_fr_dbuff_in_int64 Unexecuted instantiation: module_rlm.c:_fr_dbuff_in_uint16 Unexecuted instantiation: module_rlm.c:_fr_dbuff_in_uint32 Unexecuted instantiation: module_rlm.c:_fr_dbuff_in_uint64 Unexecuted instantiation: module_rlm.c:_fr_dbuff_in_int16 Unexecuted instantiation: module_rlm.c:_fr_dbuff_in_int32 Unexecuted instantiation: module_rlm.c:_fr_dbuff_in_int64 Unexecuted instantiation: paircmp.c:_fr_dbuff_in_uint16 Unexecuted instantiation: paircmp.c:_fr_dbuff_in_uint32 Unexecuted instantiation: paircmp.c:_fr_dbuff_in_uint64 Unexecuted instantiation: paircmp.c:_fr_dbuff_in_int16 Unexecuted instantiation: paircmp.c:_fr_dbuff_in_int32 Unexecuted instantiation: paircmp.c:_fr_dbuff_in_int64 Unexecuted instantiation: pairmove.c:_fr_dbuff_in_uint16 Unexecuted instantiation: pairmove.c:_fr_dbuff_in_uint32 Unexecuted instantiation: pairmove.c:_fr_dbuff_in_uint64 Unexecuted instantiation: pairmove.c:_fr_dbuff_in_int16 Unexecuted instantiation: pairmove.c:_fr_dbuff_in_int32 Unexecuted instantiation: pairmove.c:_fr_dbuff_in_int64 Unexecuted instantiation: password.c:_fr_dbuff_in_uint16 Unexecuted instantiation: password.c:_fr_dbuff_in_uint32 Unexecuted instantiation: password.c:_fr_dbuff_in_uint64 Unexecuted instantiation: password.c:_fr_dbuff_in_int16 Unexecuted instantiation: password.c:_fr_dbuff_in_int32 Unexecuted instantiation: password.c:_fr_dbuff_in_int64 Unexecuted instantiation: pool.c:_fr_dbuff_in_uint16 Unexecuted instantiation: pool.c:_fr_dbuff_in_uint32 Unexecuted instantiation: pool.c:_fr_dbuff_in_uint64 Unexecuted instantiation: pool.c:_fr_dbuff_in_int16 Unexecuted instantiation: pool.c:_fr_dbuff_in_int32 Unexecuted instantiation: pool.c:_fr_dbuff_in_int64 Unexecuted instantiation: request.c:_fr_dbuff_in_uint16 Unexecuted instantiation: request.c:_fr_dbuff_in_uint32 Unexecuted instantiation: request.c:_fr_dbuff_in_uint64 Unexecuted instantiation: request.c:_fr_dbuff_in_int16 Unexecuted instantiation: request.c:_fr_dbuff_in_int32 Unexecuted instantiation: request.c:_fr_dbuff_in_int64 Unexecuted instantiation: request_data.c:_fr_dbuff_in_uint16 Unexecuted instantiation: request_data.c:_fr_dbuff_in_uint32 Unexecuted instantiation: request_data.c:_fr_dbuff_in_uint64 Unexecuted instantiation: request_data.c:_fr_dbuff_in_int16 Unexecuted instantiation: request_data.c:_fr_dbuff_in_int32 Unexecuted instantiation: request_data.c:_fr_dbuff_in_int64 Unexecuted instantiation: snmp.c:_fr_dbuff_in_uint16 Unexecuted instantiation: snmp.c:_fr_dbuff_in_uint32 Unexecuted instantiation: snmp.c:_fr_dbuff_in_uint64 Unexecuted instantiation: snmp.c:_fr_dbuff_in_int16 Unexecuted instantiation: snmp.c:_fr_dbuff_in_int32 Unexecuted instantiation: snmp.c:_fr_dbuff_in_int64 Unexecuted instantiation: state.c:_fr_dbuff_in_uint16 Unexecuted instantiation: state.c:_fr_dbuff_in_uint32 Unexecuted instantiation: state.c:_fr_dbuff_in_uint64 Unexecuted instantiation: state.c:_fr_dbuff_in_int16 Unexecuted instantiation: state.c:_fr_dbuff_in_int32 Unexecuted instantiation: state.c:_fr_dbuff_in_int64 Unexecuted instantiation: tmpl_dcursor.c:_fr_dbuff_in_uint16 Unexecuted instantiation: tmpl_dcursor.c:_fr_dbuff_in_uint32 Unexecuted instantiation: tmpl_dcursor.c:_fr_dbuff_in_uint64 Unexecuted instantiation: tmpl_dcursor.c:_fr_dbuff_in_int16 Unexecuted instantiation: tmpl_dcursor.c:_fr_dbuff_in_int32 Unexecuted instantiation: tmpl_dcursor.c:_fr_dbuff_in_int64 Unexecuted instantiation: tmpl_eval.c:_fr_dbuff_in_uint16 Unexecuted instantiation: tmpl_eval.c:_fr_dbuff_in_uint32 Unexecuted instantiation: tmpl_eval.c:_fr_dbuff_in_uint64 Unexecuted instantiation: tmpl_eval.c:_fr_dbuff_in_int16 Unexecuted instantiation: tmpl_eval.c:_fr_dbuff_in_int32 Unexecuted instantiation: tmpl_eval.c:_fr_dbuff_in_int64 Unexecuted instantiation: tmpl_tokenize.c:_fr_dbuff_in_uint16 Unexecuted instantiation: tmpl_tokenize.c:_fr_dbuff_in_uint32 Unexecuted instantiation: tmpl_tokenize.c:_fr_dbuff_in_uint64 Unexecuted instantiation: tmpl_tokenize.c:_fr_dbuff_in_int16 Unexecuted instantiation: tmpl_tokenize.c:_fr_dbuff_in_int32 Unexecuted instantiation: tmpl_tokenize.c:_fr_dbuff_in_int64 Unexecuted instantiation: trigger.c:_fr_dbuff_in_uint16 Unexecuted instantiation: trigger.c:_fr_dbuff_in_uint32 Unexecuted instantiation: trigger.c:_fr_dbuff_in_uint64 Unexecuted instantiation: trigger.c:_fr_dbuff_in_int16 Unexecuted instantiation: trigger.c:_fr_dbuff_in_int32 Unexecuted instantiation: trigger.c:_fr_dbuff_in_int64 Unexecuted instantiation: trunk.c:_fr_dbuff_in_uint16 Unexecuted instantiation: trunk.c:_fr_dbuff_in_uint32 Unexecuted instantiation: trunk.c:_fr_dbuff_in_uint64 Unexecuted instantiation: trunk.c:_fr_dbuff_in_int16 Unexecuted instantiation: trunk.c:_fr_dbuff_in_int32 Unexecuted instantiation: trunk.c:_fr_dbuff_in_int64 Unexecuted instantiation: users_file.c:_fr_dbuff_in_uint16 Unexecuted instantiation: users_file.c:_fr_dbuff_in_uint32 Unexecuted instantiation: users_file.c:_fr_dbuff_in_uint64 Unexecuted instantiation: users_file.c:_fr_dbuff_in_int16 Unexecuted instantiation: users_file.c:_fr_dbuff_in_int32 Unexecuted instantiation: users_file.c:_fr_dbuff_in_int64 Unexecuted instantiation: util.c:_fr_dbuff_in_uint16 Unexecuted instantiation: util.c:_fr_dbuff_in_uint32 Unexecuted instantiation: util.c:_fr_dbuff_in_uint64 Unexecuted instantiation: util.c:_fr_dbuff_in_int16 Unexecuted instantiation: util.c:_fr_dbuff_in_int32 Unexecuted instantiation: util.c:_fr_dbuff_in_int64 Unexecuted instantiation: virtual_servers.c:_fr_dbuff_in_uint16 Unexecuted instantiation: virtual_servers.c:_fr_dbuff_in_uint32 Unexecuted instantiation: virtual_servers.c:_fr_dbuff_in_uint64 Unexecuted instantiation: virtual_servers.c:_fr_dbuff_in_int16 Unexecuted instantiation: virtual_servers.c:_fr_dbuff_in_int32 Unexecuted instantiation: virtual_servers.c:_fr_dbuff_in_int64 Unexecuted instantiation: call.c:_fr_dbuff_in_uint16 Unexecuted instantiation: call.c:_fr_dbuff_in_uint32 Unexecuted instantiation: call.c:_fr_dbuff_in_uint64 Unexecuted instantiation: call.c:_fr_dbuff_in_int16 Unexecuted instantiation: call.c:_fr_dbuff_in_int32 Unexecuted instantiation: call.c:_fr_dbuff_in_int64 Unexecuted instantiation: call_env.c:_fr_dbuff_in_uint16 Unexecuted instantiation: call_env.c:_fr_dbuff_in_uint32 Unexecuted instantiation: call_env.c:_fr_dbuff_in_uint64 Unexecuted instantiation: call_env.c:_fr_dbuff_in_int16 Unexecuted instantiation: call_env.c:_fr_dbuff_in_int32 Unexecuted instantiation: call_env.c:_fr_dbuff_in_int64 Unexecuted instantiation: caller.c:_fr_dbuff_in_uint16 Unexecuted instantiation: caller.c:_fr_dbuff_in_uint32 Unexecuted instantiation: caller.c:_fr_dbuff_in_uint64 Unexecuted instantiation: caller.c:_fr_dbuff_in_int16 Unexecuted instantiation: caller.c:_fr_dbuff_in_int32 Unexecuted instantiation: caller.c:_fr_dbuff_in_int64 Unexecuted instantiation: catch.c:_fr_dbuff_in_uint16 Unexecuted instantiation: catch.c:_fr_dbuff_in_uint32 Unexecuted instantiation: catch.c:_fr_dbuff_in_uint64 Unexecuted instantiation: catch.c:_fr_dbuff_in_int16 Unexecuted instantiation: catch.c:_fr_dbuff_in_int32 Unexecuted instantiation: catch.c:_fr_dbuff_in_int64 Unexecuted instantiation: child_request.c:_fr_dbuff_in_uint16 Unexecuted instantiation: child_request.c:_fr_dbuff_in_uint32 Unexecuted instantiation: child_request.c:_fr_dbuff_in_uint64 Unexecuted instantiation: child_request.c:_fr_dbuff_in_int16 Unexecuted instantiation: child_request.c:_fr_dbuff_in_int32 Unexecuted instantiation: child_request.c:_fr_dbuff_in_int64 Unexecuted instantiation: compile.c:_fr_dbuff_in_uint16 Unexecuted instantiation: compile.c:_fr_dbuff_in_uint32 Unexecuted instantiation: compile.c:_fr_dbuff_in_uint64 Unexecuted instantiation: compile.c:_fr_dbuff_in_int16 Unexecuted instantiation: compile.c:_fr_dbuff_in_int32 Unexecuted instantiation: compile.c:_fr_dbuff_in_int64 Unexecuted instantiation: condition.c:_fr_dbuff_in_uint16 Unexecuted instantiation: condition.c:_fr_dbuff_in_uint32 Unexecuted instantiation: condition.c:_fr_dbuff_in_uint64 Unexecuted instantiation: condition.c:_fr_dbuff_in_int16 Unexecuted instantiation: condition.c:_fr_dbuff_in_int32 Unexecuted instantiation: condition.c:_fr_dbuff_in_int64 Unexecuted instantiation: detach.c:_fr_dbuff_in_uint16 Unexecuted instantiation: detach.c:_fr_dbuff_in_uint32 Unexecuted instantiation: detach.c:_fr_dbuff_in_uint64 Unexecuted instantiation: detach.c:_fr_dbuff_in_int16 Unexecuted instantiation: detach.c:_fr_dbuff_in_int32 Unexecuted instantiation: detach.c:_fr_dbuff_in_int64 Unexecuted instantiation: finally.c:_fr_dbuff_in_uint16 Unexecuted instantiation: finally.c:_fr_dbuff_in_uint32 Unexecuted instantiation: finally.c:_fr_dbuff_in_uint64 Unexecuted instantiation: finally.c:_fr_dbuff_in_int16 Unexecuted instantiation: finally.c:_fr_dbuff_in_int32 Unexecuted instantiation: finally.c:_fr_dbuff_in_int64 Unexecuted instantiation: foreach.c:_fr_dbuff_in_uint16 Unexecuted instantiation: foreach.c:_fr_dbuff_in_uint32 Unexecuted instantiation: foreach.c:_fr_dbuff_in_uint64 Unexecuted instantiation: foreach.c:_fr_dbuff_in_int16 Unexecuted instantiation: foreach.c:_fr_dbuff_in_int32 Unexecuted instantiation: foreach.c:_fr_dbuff_in_int64 Unexecuted instantiation: function.c:_fr_dbuff_in_uint16 Unexecuted instantiation: function.c:_fr_dbuff_in_uint32 Unexecuted instantiation: function.c:_fr_dbuff_in_uint64 Unexecuted instantiation: function.c:_fr_dbuff_in_int16 Unexecuted instantiation: function.c:_fr_dbuff_in_int32 Unexecuted instantiation: function.c:_fr_dbuff_in_int64 Unexecuted instantiation: group.c:_fr_dbuff_in_uint16 Unexecuted instantiation: group.c:_fr_dbuff_in_uint32 Unexecuted instantiation: group.c:_fr_dbuff_in_uint64 Unexecuted instantiation: group.c:_fr_dbuff_in_int16 Unexecuted instantiation: group.c:_fr_dbuff_in_int32 Unexecuted instantiation: group.c:_fr_dbuff_in_int64 Unexecuted instantiation: interpret.c:_fr_dbuff_in_uint16 Unexecuted instantiation: interpret.c:_fr_dbuff_in_uint32 Unexecuted instantiation: interpret.c:_fr_dbuff_in_uint64 Unexecuted instantiation: interpret.c:_fr_dbuff_in_int16 Unexecuted instantiation: interpret.c:_fr_dbuff_in_int32 Unexecuted instantiation: interpret.c:_fr_dbuff_in_int64 Unexecuted instantiation: interpret_synchronous.c:_fr_dbuff_in_uint16 Unexecuted instantiation: interpret_synchronous.c:_fr_dbuff_in_uint32 Unexecuted instantiation: interpret_synchronous.c:_fr_dbuff_in_uint64 Unexecuted instantiation: interpret_synchronous.c:_fr_dbuff_in_int16 Unexecuted instantiation: interpret_synchronous.c:_fr_dbuff_in_int32 Unexecuted instantiation: interpret_synchronous.c:_fr_dbuff_in_int64 Unexecuted instantiation: io.c:_fr_dbuff_in_uint16 Unexecuted instantiation: io.c:_fr_dbuff_in_uint32 Unexecuted instantiation: io.c:_fr_dbuff_in_uint64 Unexecuted instantiation: io.c:_fr_dbuff_in_int16 Unexecuted instantiation: io.c:_fr_dbuff_in_int32 Unexecuted instantiation: io.c:_fr_dbuff_in_int64 Unexecuted instantiation: limit.c:_fr_dbuff_in_uint16 Unexecuted instantiation: limit.c:_fr_dbuff_in_uint32 Unexecuted instantiation: limit.c:_fr_dbuff_in_uint64 Unexecuted instantiation: limit.c:_fr_dbuff_in_int16 Unexecuted instantiation: limit.c:_fr_dbuff_in_int32 Unexecuted instantiation: limit.c:_fr_dbuff_in_int64 Unexecuted instantiation: load_balance.c:_fr_dbuff_in_uint16 Unexecuted instantiation: load_balance.c:_fr_dbuff_in_uint32 Unexecuted instantiation: load_balance.c:_fr_dbuff_in_uint64 Unexecuted instantiation: load_balance.c:_fr_dbuff_in_int16 Unexecuted instantiation: load_balance.c:_fr_dbuff_in_int32 Unexecuted instantiation: load_balance.c:_fr_dbuff_in_int64 Unexecuted instantiation: map_builtin.c:_fr_dbuff_in_uint16 Unexecuted instantiation: map_builtin.c:_fr_dbuff_in_uint32 Unexecuted instantiation: map_builtin.c:_fr_dbuff_in_uint64 Unexecuted instantiation: map_builtin.c:_fr_dbuff_in_int16 Unexecuted instantiation: map_builtin.c:_fr_dbuff_in_int32 Unexecuted instantiation: map_builtin.c:_fr_dbuff_in_int64 Unexecuted instantiation: parallel.c:_fr_dbuff_in_uint16 Unexecuted instantiation: parallel.c:_fr_dbuff_in_uint32 Unexecuted instantiation: parallel.c:_fr_dbuff_in_uint64 Unexecuted instantiation: parallel.c:_fr_dbuff_in_int16 Unexecuted instantiation: parallel.c:_fr_dbuff_in_int32 Unexecuted instantiation: parallel.c:_fr_dbuff_in_int64 Unexecuted instantiation: return.c:_fr_dbuff_in_uint16 Unexecuted instantiation: return.c:_fr_dbuff_in_uint32 Unexecuted instantiation: return.c:_fr_dbuff_in_uint64 Unexecuted instantiation: return.c:_fr_dbuff_in_int16 Unexecuted instantiation: return.c:_fr_dbuff_in_int32 Unexecuted instantiation: return.c:_fr_dbuff_in_int64 Unexecuted instantiation: subrequest.c:_fr_dbuff_in_uint16 Unexecuted instantiation: subrequest.c:_fr_dbuff_in_uint32 Unexecuted instantiation: subrequest.c:_fr_dbuff_in_uint64 Unexecuted instantiation: subrequest.c:_fr_dbuff_in_int16 Unexecuted instantiation: subrequest.c:_fr_dbuff_in_int32 Unexecuted instantiation: subrequest.c:_fr_dbuff_in_int64 Unexecuted instantiation: switch.c:_fr_dbuff_in_uint16 Unexecuted instantiation: switch.c:_fr_dbuff_in_uint32 Unexecuted instantiation: switch.c:_fr_dbuff_in_uint64 Unexecuted instantiation: switch.c:_fr_dbuff_in_int16 Unexecuted instantiation: switch.c:_fr_dbuff_in_int32 Unexecuted instantiation: switch.c:_fr_dbuff_in_int64 Unexecuted instantiation: timeout.c:_fr_dbuff_in_uint16 Unexecuted instantiation: timeout.c:_fr_dbuff_in_uint32 Unexecuted instantiation: timeout.c:_fr_dbuff_in_uint64 Unexecuted instantiation: timeout.c:_fr_dbuff_in_int16 Unexecuted instantiation: timeout.c:_fr_dbuff_in_int32 Unexecuted instantiation: timeout.c:_fr_dbuff_in_int64 Unexecuted instantiation: tmpl.c:_fr_dbuff_in_uint16 Unexecuted instantiation: tmpl.c:_fr_dbuff_in_uint32 Unexecuted instantiation: tmpl.c:_fr_dbuff_in_uint64 Unexecuted instantiation: tmpl.c:_fr_dbuff_in_int16 Unexecuted instantiation: tmpl.c:_fr_dbuff_in_int32 Unexecuted instantiation: tmpl.c:_fr_dbuff_in_int64 Unexecuted instantiation: try.c:_fr_dbuff_in_uint16 Unexecuted instantiation: try.c:_fr_dbuff_in_uint32 Unexecuted instantiation: try.c:_fr_dbuff_in_uint64 Unexecuted instantiation: try.c:_fr_dbuff_in_int16 Unexecuted instantiation: try.c:_fr_dbuff_in_int32 Unexecuted instantiation: try.c:_fr_dbuff_in_int64 Unexecuted instantiation: transaction.c:_fr_dbuff_in_uint16 Unexecuted instantiation: transaction.c:_fr_dbuff_in_uint32 Unexecuted instantiation: transaction.c:_fr_dbuff_in_uint64 Unexecuted instantiation: transaction.c:_fr_dbuff_in_int16 Unexecuted instantiation: transaction.c:_fr_dbuff_in_int32 Unexecuted instantiation: transaction.c:_fr_dbuff_in_int64 Unexecuted instantiation: xlat.c:_fr_dbuff_in_uint16 Unexecuted instantiation: xlat.c:_fr_dbuff_in_uint32 Unexecuted instantiation: xlat.c:_fr_dbuff_in_uint64 Unexecuted instantiation: xlat.c:_fr_dbuff_in_int16 Unexecuted instantiation: xlat.c:_fr_dbuff_in_int32 Unexecuted instantiation: xlat.c:_fr_dbuff_in_int64 Unexecuted instantiation: xlat_alloc.c:_fr_dbuff_in_uint16 Unexecuted instantiation: xlat_alloc.c:_fr_dbuff_in_uint32 Unexecuted instantiation: xlat_alloc.c:_fr_dbuff_in_uint64 Unexecuted instantiation: xlat_alloc.c:_fr_dbuff_in_int16 Unexecuted instantiation: xlat_alloc.c:_fr_dbuff_in_int32 Unexecuted instantiation: xlat_alloc.c:_fr_dbuff_in_int64 Unexecuted instantiation: xlat_builtin.c:_fr_dbuff_in_uint16 Unexecuted instantiation: xlat_builtin.c:_fr_dbuff_in_uint32 Unexecuted instantiation: xlat_builtin.c:_fr_dbuff_in_uint64 Unexecuted instantiation: xlat_builtin.c:_fr_dbuff_in_int16 Unexecuted instantiation: xlat_builtin.c:_fr_dbuff_in_int32 Unexecuted instantiation: xlat_builtin.c:_fr_dbuff_in_int64 Unexecuted instantiation: xlat_eval.c:_fr_dbuff_in_uint16 Unexecuted instantiation: xlat_eval.c:_fr_dbuff_in_uint32 Unexecuted instantiation: xlat_eval.c:_fr_dbuff_in_uint64 Unexecuted instantiation: xlat_eval.c:_fr_dbuff_in_int16 Unexecuted instantiation: xlat_eval.c:_fr_dbuff_in_int32 Unexecuted instantiation: xlat_eval.c:_fr_dbuff_in_int64 Unexecuted instantiation: xlat_expr.c:_fr_dbuff_in_uint16 Unexecuted instantiation: xlat_expr.c:_fr_dbuff_in_uint32 Unexecuted instantiation: xlat_expr.c:_fr_dbuff_in_uint64 Unexecuted instantiation: xlat_expr.c:_fr_dbuff_in_int16 Unexecuted instantiation: xlat_expr.c:_fr_dbuff_in_int32 Unexecuted instantiation: xlat_expr.c:_fr_dbuff_in_int64 Unexecuted instantiation: xlat_func.c:_fr_dbuff_in_uint16 Unexecuted instantiation: xlat_func.c:_fr_dbuff_in_uint32 Unexecuted instantiation: xlat_func.c:_fr_dbuff_in_uint64 Unexecuted instantiation: xlat_func.c:_fr_dbuff_in_int16 Unexecuted instantiation: xlat_func.c:_fr_dbuff_in_int32 Unexecuted instantiation: xlat_func.c:_fr_dbuff_in_int64 Unexecuted instantiation: xlat_inst.c:_fr_dbuff_in_uint16 Unexecuted instantiation: xlat_inst.c:_fr_dbuff_in_uint32 Unexecuted instantiation: xlat_inst.c:_fr_dbuff_in_uint64 Unexecuted instantiation: xlat_inst.c:_fr_dbuff_in_int16 Unexecuted instantiation: xlat_inst.c:_fr_dbuff_in_int32 Unexecuted instantiation: xlat_inst.c:_fr_dbuff_in_int64 Unexecuted instantiation: xlat_pair.c:_fr_dbuff_in_uint16 Unexecuted instantiation: xlat_pair.c:_fr_dbuff_in_uint32 Unexecuted instantiation: xlat_pair.c:_fr_dbuff_in_uint64 Unexecuted instantiation: xlat_pair.c:_fr_dbuff_in_int16 Unexecuted instantiation: xlat_pair.c:_fr_dbuff_in_int32 Unexecuted instantiation: xlat_pair.c:_fr_dbuff_in_int64 Unexecuted instantiation: xlat_purify.c:_fr_dbuff_in_uint16 Unexecuted instantiation: xlat_purify.c:_fr_dbuff_in_uint32 Unexecuted instantiation: xlat_purify.c:_fr_dbuff_in_uint64 Unexecuted instantiation: xlat_purify.c:_fr_dbuff_in_int16 Unexecuted instantiation: xlat_purify.c:_fr_dbuff_in_int32 Unexecuted instantiation: xlat_purify.c:_fr_dbuff_in_int64 Unexecuted instantiation: xlat_redundant.c:_fr_dbuff_in_uint16 Unexecuted instantiation: xlat_redundant.c:_fr_dbuff_in_uint32 Unexecuted instantiation: xlat_redundant.c:_fr_dbuff_in_uint64 Unexecuted instantiation: xlat_redundant.c:_fr_dbuff_in_int16 Unexecuted instantiation: xlat_redundant.c:_fr_dbuff_in_int32 Unexecuted instantiation: xlat_redundant.c:_fr_dbuff_in_int64 Unexecuted instantiation: xlat_tokenize.c:_fr_dbuff_in_uint16 Unexecuted instantiation: xlat_tokenize.c:_fr_dbuff_in_uint32 Unexecuted instantiation: xlat_tokenize.c:_fr_dbuff_in_uint64 Unexecuted instantiation: xlat_tokenize.c:_fr_dbuff_in_int16 Unexecuted instantiation: xlat_tokenize.c:_fr_dbuff_in_int32 Unexecuted instantiation: xlat_tokenize.c:_fr_dbuff_in_int64 Unexecuted instantiation: app_io.c:_fr_dbuff_in_uint16 Unexecuted instantiation: app_io.c:_fr_dbuff_in_uint32 Unexecuted instantiation: app_io.c:_fr_dbuff_in_uint64 Unexecuted instantiation: app_io.c:_fr_dbuff_in_int16 Unexecuted instantiation: app_io.c:_fr_dbuff_in_int32 Unexecuted instantiation: app_io.c:_fr_dbuff_in_int64 Unexecuted instantiation: channel.c:_fr_dbuff_in_uint16 Unexecuted instantiation: channel.c:_fr_dbuff_in_uint32 Unexecuted instantiation: channel.c:_fr_dbuff_in_uint64 Unexecuted instantiation: channel.c:_fr_dbuff_in_int16 Unexecuted instantiation: channel.c:_fr_dbuff_in_int32 Unexecuted instantiation: channel.c:_fr_dbuff_in_int64 Unexecuted instantiation: coord.c:_fr_dbuff_in_uint16 Unexecuted instantiation: coord.c:_fr_dbuff_in_uint32 Unexecuted instantiation: coord.c:_fr_dbuff_in_uint64 Unexecuted instantiation: coord.c:_fr_dbuff_in_int16 Unexecuted instantiation: coord.c:_fr_dbuff_in_int32 Unexecuted instantiation: coord.c:_fr_dbuff_in_int64 Unexecuted instantiation: coord_pair.c:_fr_dbuff_in_uint16 Unexecuted instantiation: coord_pair.c:_fr_dbuff_in_uint32 Unexecuted instantiation: coord_pair.c:_fr_dbuff_in_uint64 Unexecuted instantiation: coord_pair.c:_fr_dbuff_in_int16 Unexecuted instantiation: coord_pair.c:_fr_dbuff_in_int32 Unexecuted instantiation: coord_pair.c:_fr_dbuff_in_int64 Unexecuted instantiation: master.c:_fr_dbuff_in_uint16 Unexecuted instantiation: master.c:_fr_dbuff_in_uint32 Unexecuted instantiation: master.c:_fr_dbuff_in_uint64 Unexecuted instantiation: master.c:_fr_dbuff_in_int16 Unexecuted instantiation: master.c:_fr_dbuff_in_int32 Unexecuted instantiation: master.c:_fr_dbuff_in_int64 Unexecuted instantiation: network.c:_fr_dbuff_in_uint16 Unexecuted instantiation: network.c:_fr_dbuff_in_uint32 Unexecuted instantiation: network.c:_fr_dbuff_in_uint64 Unexecuted instantiation: network.c:_fr_dbuff_in_int16 Unexecuted instantiation: network.c:_fr_dbuff_in_int32 Unexecuted instantiation: network.c:_fr_dbuff_in_int64 Unexecuted instantiation: schedule.c:_fr_dbuff_in_uint16 Unexecuted instantiation: schedule.c:_fr_dbuff_in_uint32 Unexecuted instantiation: schedule.c:_fr_dbuff_in_uint64 Unexecuted instantiation: schedule.c:_fr_dbuff_in_int16 Unexecuted instantiation: schedule.c:_fr_dbuff_in_int32 Unexecuted instantiation: schedule.c:_fr_dbuff_in_int64 Unexecuted instantiation: thread.c:_fr_dbuff_in_uint16 Unexecuted instantiation: thread.c:_fr_dbuff_in_uint32 Unexecuted instantiation: thread.c:_fr_dbuff_in_uint64 Unexecuted instantiation: thread.c:_fr_dbuff_in_int16 Unexecuted instantiation: thread.c:_fr_dbuff_in_int32 Unexecuted instantiation: thread.c:_fr_dbuff_in_int64 Unexecuted instantiation: worker.c:_fr_dbuff_in_uint16 Unexecuted instantiation: worker.c:_fr_dbuff_in_uint32 Unexecuted instantiation: worker.c:_fr_dbuff_in_uint64 Unexecuted instantiation: worker.c:_fr_dbuff_in_int16 Unexecuted instantiation: worker.c:_fr_dbuff_in_int32 Unexecuted instantiation: worker.c:_fr_dbuff_in_int64 Unexecuted instantiation: vmps.c:_fr_dbuff_in_uint64 Unexecuted instantiation: vmps.c:_fr_dbuff_in_int16 Unexecuted instantiation: vmps.c:_fr_dbuff_in_int32 Unexecuted instantiation: vmps.c:_fr_dbuff_in_int64 |
1531 | 0 | FR_DBUFF_PARSE_INT_DEF(uint16) Unexecuted instantiation: struct.c:_fr_dbuff_in_uint16 Unexecuted instantiation: value.c:_fr_dbuff_in_uint16 Unexecuted instantiation: encode.c:_fr_dbuff_in_uint16 Unexecuted instantiation: base.c:_fr_dbuff_in_uint16 Unexecuted instantiation: vmps.c:_fr_dbuff_in_uint16 |
1532 | 0 | FR_DBUFF_PARSE_INT_DEF(uint32) Unexecuted instantiation: value.c:_fr_dbuff_in_uint32 Unexecuted instantiation: encode.c:_fr_dbuff_in_uint32 Unexecuted instantiation: base.c:_fr_dbuff_in_uint32 Unexecuted instantiation: vmps.c:_fr_dbuff_in_uint32 |
1533 | 0 | FR_DBUFF_PARSE_INT_DEF(uint64) Unexecuted instantiation: value.c:_fr_dbuff_in_uint64 Unexecuted instantiation: base.c:_fr_dbuff_in_uint64 |
1534 | 0 | FR_DBUFF_PARSE_INT_DEF(int16) |
1535 | 0 | FR_DBUFF_PARSE_INT_DEF(int32) |
1536 | 0 | FR_DBUFF_PARSE_INT_DEF(int64) |
1537 | | /** @endcond */ |
1538 | | |
1539 | | /* |
1540 | | |
1541 | | */ |
1542 | | |
1543 | | /** Internal function - do not call directly |
1544 | | * |
1545 | | * The fr_dbuff_in_<type>() functions take rvalues, so to implement float and |
1546 | | * double in terms of the same-sized integers, we need a layer that gives us an |
1547 | | * lvalue whose address we can cast. |
1548 | | * |
1549 | | * @private |
1550 | | */ |
1551 | | static inline ssize_t _fr_dbuff_in_float(uint8_t **pos_p, fr_dbuff_t *out, float num) |
1552 | 0 | { |
1553 | 0 | return _fr_dbuff_in_uint32(pos_p, out, *(uint32_t *)(&num)); |
1554 | 0 | } Unexecuted instantiation: fuzzer_dhcpv6.c:_fr_dbuff_in_float Unexecuted instantiation: fuzzer_util.c:_fr_dbuff_in_float Unexecuted instantiation: fuzzer_dhcpv4.c:_fr_dbuff_in_float Unexecuted instantiation: fuzzer_cbor.c:_fr_dbuff_in_float Unexecuted instantiation: fuzzer_der.c:_fr_dbuff_in_float Unexecuted instantiation: fuzzer_dns.c:_fr_dbuff_in_float Unexecuted instantiation: fuzzer_tacacs.c:_fr_dbuff_in_float Unexecuted instantiation: fuzzer_bfd.c:_fr_dbuff_in_float Unexecuted instantiation: fuzzer_radius.c:_fr_dbuff_in_float Unexecuted instantiation: fuzzer_tftp.c:_fr_dbuff_in_float Unexecuted instantiation: fuzzer_vmps.c:_fr_dbuff_in_float Unexecuted instantiation: base16.c:_fr_dbuff_in_float Unexecuted instantiation: base32.c:_fr_dbuff_in_float Unexecuted instantiation: base64.c:_fr_dbuff_in_float Unexecuted instantiation: calc.c:_fr_dbuff_in_float Unexecuted instantiation: cbor.c:_fr_dbuff_in_float Unexecuted instantiation: dbuff.c:_fr_dbuff_in_float Unexecuted instantiation: decode.c:_fr_dbuff_in_float Unexecuted instantiation: dict_ext.c:_fr_dbuff_in_float Unexecuted instantiation: dict_fixup.c:_fr_dbuff_in_float Unexecuted instantiation: dict_print.c:_fr_dbuff_in_float Unexecuted instantiation: dict_test.c:_fr_dbuff_in_float Unexecuted instantiation: dict_tokenize.c:_fr_dbuff_in_float Unexecuted instantiation: dict_unknown.c:_fr_dbuff_in_float Unexecuted instantiation: dict_util.c:_fr_dbuff_in_float Unexecuted instantiation: dict_validate.c:_fr_dbuff_in_float Unexecuted instantiation: dl.c:_fr_dbuff_in_float Unexecuted instantiation: dns.c:_fr_dbuff_in_float Unexecuted instantiation: edit.c:_fr_dbuff_in_float Unexecuted instantiation: encode.c:_fr_dbuff_in_float Unexecuted instantiation: timer.c:_fr_dbuff_in_float Unexecuted instantiation: file.c:_fr_dbuff_in_float Unexecuted instantiation: inet.c:_fr_dbuff_in_float Unexecuted instantiation: iovec.c:_fr_dbuff_in_float Unexecuted instantiation: log.c:_fr_dbuff_in_float Unexecuted instantiation: misc.c:_fr_dbuff_in_float Unexecuted instantiation: packet.c:_fr_dbuff_in_float Unexecuted instantiation: pair.c:_fr_dbuff_in_float Unexecuted instantiation: pair_inline.c:_fr_dbuff_in_float Unexecuted instantiation: pair_legacy.c:_fr_dbuff_in_float Unexecuted instantiation: pair_print.c:_fr_dbuff_in_float Unexecuted instantiation: pair_tokenize.c:_fr_dbuff_in_float Unexecuted instantiation: print.c:_fr_dbuff_in_float Unexecuted instantiation: proto.c:_fr_dbuff_in_float Unexecuted instantiation: regex.c:_fr_dbuff_in_float Unexecuted instantiation: socket.c:_fr_dbuff_in_float Unexecuted instantiation: stats.c:_fr_dbuff_in_float Unexecuted instantiation: struct.c:_fr_dbuff_in_float Unexecuted instantiation: types.c:_fr_dbuff_in_float Unexecuted instantiation: uri.c:_fr_dbuff_in_float Unexecuted instantiation: value.c:_fr_dbuff_in_float Unexecuted instantiation: fuzzer.c:_fr_dbuff_in_float Unexecuted instantiation: base.c:_fr_dbuff_in_float Unexecuted instantiation: raw.c:_fr_dbuff_in_float Unexecuted instantiation: udp.c:_fr_dbuff_in_float Unexecuted instantiation: json.c:_fr_dbuff_in_float Unexecuted instantiation: jpath.c:_fr_dbuff_in_float Unexecuted instantiation: bio.c:_fr_dbuff_in_float Unexecuted instantiation: cache.c:_fr_dbuff_in_float Unexecuted instantiation: cert.c:_fr_dbuff_in_float Unexecuted instantiation: conf.c:_fr_dbuff_in_float Unexecuted instantiation: ctx.c:_fr_dbuff_in_float Unexecuted instantiation: engine.c:_fr_dbuff_in_float Unexecuted instantiation: pairs.c:_fr_dbuff_in_float Unexecuted instantiation: session.c:_fr_dbuff_in_float Unexecuted instantiation: strerror.c:_fr_dbuff_in_float Unexecuted instantiation: utils.c:_fr_dbuff_in_float Unexecuted instantiation: verify.c:_fr_dbuff_in_float Unexecuted instantiation: version.c:_fr_dbuff_in_float Unexecuted instantiation: virtual_server.c:_fr_dbuff_in_float Unexecuted instantiation: list.c:_fr_dbuff_in_float Unexecuted instantiation: tcp.c:_fr_dbuff_in_float Unexecuted instantiation: abinary.c:_fr_dbuff_in_float Unexecuted instantiation: auth.c:_fr_dbuff_in_float Unexecuted instantiation: cf_file.c:_fr_dbuff_in_float Unexecuted instantiation: cf_parse.c:_fr_dbuff_in_float Unexecuted instantiation: cf_util.c:_fr_dbuff_in_float Unexecuted instantiation: client.c:_fr_dbuff_in_float Unexecuted instantiation: command.c:_fr_dbuff_in_float Unexecuted instantiation: connection.c:_fr_dbuff_in_float Unexecuted instantiation: dependency.c:_fr_dbuff_in_float Unexecuted instantiation: dl_module.c:_fr_dbuff_in_float Unexecuted instantiation: exec.c:_fr_dbuff_in_float Unexecuted instantiation: exec_legacy.c:_fr_dbuff_in_float Unexecuted instantiation: exfile.c:_fr_dbuff_in_float Unexecuted instantiation: global_lib.c:_fr_dbuff_in_float Unexecuted instantiation: main_config.c:_fr_dbuff_in_float Unexecuted instantiation: main_loop.c:_fr_dbuff_in_float Unexecuted instantiation: map.c:_fr_dbuff_in_float Unexecuted instantiation: map_proc.c:_fr_dbuff_in_float Unexecuted instantiation: module.c:_fr_dbuff_in_float Unexecuted instantiation: module_method.c:_fr_dbuff_in_float Unexecuted instantiation: module_rlm.c:_fr_dbuff_in_float Unexecuted instantiation: paircmp.c:_fr_dbuff_in_float Unexecuted instantiation: pairmove.c:_fr_dbuff_in_float Unexecuted instantiation: password.c:_fr_dbuff_in_float Unexecuted instantiation: pool.c:_fr_dbuff_in_float Unexecuted instantiation: request.c:_fr_dbuff_in_float Unexecuted instantiation: request_data.c:_fr_dbuff_in_float Unexecuted instantiation: snmp.c:_fr_dbuff_in_float Unexecuted instantiation: state.c:_fr_dbuff_in_float Unexecuted instantiation: tmpl_dcursor.c:_fr_dbuff_in_float Unexecuted instantiation: tmpl_eval.c:_fr_dbuff_in_float Unexecuted instantiation: tmpl_tokenize.c:_fr_dbuff_in_float Unexecuted instantiation: trigger.c:_fr_dbuff_in_float Unexecuted instantiation: trunk.c:_fr_dbuff_in_float Unexecuted instantiation: users_file.c:_fr_dbuff_in_float Unexecuted instantiation: util.c:_fr_dbuff_in_float Unexecuted instantiation: virtual_servers.c:_fr_dbuff_in_float Unexecuted instantiation: call.c:_fr_dbuff_in_float Unexecuted instantiation: call_env.c:_fr_dbuff_in_float Unexecuted instantiation: caller.c:_fr_dbuff_in_float Unexecuted instantiation: catch.c:_fr_dbuff_in_float Unexecuted instantiation: child_request.c:_fr_dbuff_in_float Unexecuted instantiation: compile.c:_fr_dbuff_in_float Unexecuted instantiation: condition.c:_fr_dbuff_in_float Unexecuted instantiation: detach.c:_fr_dbuff_in_float Unexecuted instantiation: finally.c:_fr_dbuff_in_float Unexecuted instantiation: foreach.c:_fr_dbuff_in_float Unexecuted instantiation: function.c:_fr_dbuff_in_float Unexecuted instantiation: group.c:_fr_dbuff_in_float Unexecuted instantiation: interpret.c:_fr_dbuff_in_float Unexecuted instantiation: interpret_synchronous.c:_fr_dbuff_in_float Unexecuted instantiation: io.c:_fr_dbuff_in_float Unexecuted instantiation: limit.c:_fr_dbuff_in_float Unexecuted instantiation: load_balance.c:_fr_dbuff_in_float Unexecuted instantiation: map_builtin.c:_fr_dbuff_in_float Unexecuted instantiation: parallel.c:_fr_dbuff_in_float Unexecuted instantiation: return.c:_fr_dbuff_in_float Unexecuted instantiation: subrequest.c:_fr_dbuff_in_float Unexecuted instantiation: switch.c:_fr_dbuff_in_float Unexecuted instantiation: timeout.c:_fr_dbuff_in_float Unexecuted instantiation: tmpl.c:_fr_dbuff_in_float Unexecuted instantiation: try.c:_fr_dbuff_in_float Unexecuted instantiation: transaction.c:_fr_dbuff_in_float Unexecuted instantiation: xlat.c:_fr_dbuff_in_float Unexecuted instantiation: xlat_alloc.c:_fr_dbuff_in_float Unexecuted instantiation: xlat_builtin.c:_fr_dbuff_in_float Unexecuted instantiation: xlat_eval.c:_fr_dbuff_in_float Unexecuted instantiation: xlat_expr.c:_fr_dbuff_in_float Unexecuted instantiation: xlat_func.c:_fr_dbuff_in_float Unexecuted instantiation: xlat_inst.c:_fr_dbuff_in_float Unexecuted instantiation: xlat_pair.c:_fr_dbuff_in_float Unexecuted instantiation: xlat_purify.c:_fr_dbuff_in_float Unexecuted instantiation: xlat_redundant.c:_fr_dbuff_in_float Unexecuted instantiation: xlat_tokenize.c:_fr_dbuff_in_float Unexecuted instantiation: app_io.c:_fr_dbuff_in_float Unexecuted instantiation: channel.c:_fr_dbuff_in_float Unexecuted instantiation: coord.c:_fr_dbuff_in_float Unexecuted instantiation: coord_pair.c:_fr_dbuff_in_float Unexecuted instantiation: master.c:_fr_dbuff_in_float Unexecuted instantiation: network.c:_fr_dbuff_in_float Unexecuted instantiation: schedule.c:_fr_dbuff_in_float Unexecuted instantiation: thread.c:_fr_dbuff_in_float Unexecuted instantiation: worker.c:_fr_dbuff_in_float Unexecuted instantiation: vmps.c:_fr_dbuff_in_float |
1555 | | |
1556 | | /** Internal function - do not call directly |
1557 | | * |
1558 | | * @copydetails _fr_dbuff_in_float |
1559 | | * |
1560 | | * @private |
1561 | | */ |
1562 | | static inline ssize_t _fr_dbuff_in_double(uint8_t **pos_p, fr_dbuff_t *out, double num) |
1563 | 0 | { |
1564 | 0 | return _fr_dbuff_in_uint64(pos_p, out, *(uint64_t *)(&num)); |
1565 | 0 | } Unexecuted instantiation: fuzzer_dhcpv6.c:_fr_dbuff_in_double Unexecuted instantiation: fuzzer_util.c:_fr_dbuff_in_double Unexecuted instantiation: fuzzer_dhcpv4.c:_fr_dbuff_in_double Unexecuted instantiation: fuzzer_cbor.c:_fr_dbuff_in_double Unexecuted instantiation: fuzzer_der.c:_fr_dbuff_in_double Unexecuted instantiation: fuzzer_dns.c:_fr_dbuff_in_double Unexecuted instantiation: fuzzer_tacacs.c:_fr_dbuff_in_double Unexecuted instantiation: fuzzer_bfd.c:_fr_dbuff_in_double Unexecuted instantiation: fuzzer_radius.c:_fr_dbuff_in_double Unexecuted instantiation: fuzzer_tftp.c:_fr_dbuff_in_double Unexecuted instantiation: fuzzer_vmps.c:_fr_dbuff_in_double Unexecuted instantiation: base16.c:_fr_dbuff_in_double Unexecuted instantiation: base32.c:_fr_dbuff_in_double Unexecuted instantiation: base64.c:_fr_dbuff_in_double Unexecuted instantiation: calc.c:_fr_dbuff_in_double Unexecuted instantiation: cbor.c:_fr_dbuff_in_double Unexecuted instantiation: dbuff.c:_fr_dbuff_in_double Unexecuted instantiation: decode.c:_fr_dbuff_in_double Unexecuted instantiation: dict_ext.c:_fr_dbuff_in_double Unexecuted instantiation: dict_fixup.c:_fr_dbuff_in_double Unexecuted instantiation: dict_print.c:_fr_dbuff_in_double Unexecuted instantiation: dict_test.c:_fr_dbuff_in_double Unexecuted instantiation: dict_tokenize.c:_fr_dbuff_in_double Unexecuted instantiation: dict_unknown.c:_fr_dbuff_in_double Unexecuted instantiation: dict_util.c:_fr_dbuff_in_double Unexecuted instantiation: dict_validate.c:_fr_dbuff_in_double Unexecuted instantiation: dl.c:_fr_dbuff_in_double Unexecuted instantiation: dns.c:_fr_dbuff_in_double Unexecuted instantiation: edit.c:_fr_dbuff_in_double Unexecuted instantiation: encode.c:_fr_dbuff_in_double Unexecuted instantiation: timer.c:_fr_dbuff_in_double Unexecuted instantiation: file.c:_fr_dbuff_in_double Unexecuted instantiation: inet.c:_fr_dbuff_in_double Unexecuted instantiation: iovec.c:_fr_dbuff_in_double Unexecuted instantiation: log.c:_fr_dbuff_in_double Unexecuted instantiation: misc.c:_fr_dbuff_in_double Unexecuted instantiation: packet.c:_fr_dbuff_in_double Unexecuted instantiation: pair.c:_fr_dbuff_in_double Unexecuted instantiation: pair_inline.c:_fr_dbuff_in_double Unexecuted instantiation: pair_legacy.c:_fr_dbuff_in_double Unexecuted instantiation: pair_print.c:_fr_dbuff_in_double Unexecuted instantiation: pair_tokenize.c:_fr_dbuff_in_double Unexecuted instantiation: print.c:_fr_dbuff_in_double Unexecuted instantiation: proto.c:_fr_dbuff_in_double Unexecuted instantiation: regex.c:_fr_dbuff_in_double Unexecuted instantiation: socket.c:_fr_dbuff_in_double Unexecuted instantiation: stats.c:_fr_dbuff_in_double Unexecuted instantiation: struct.c:_fr_dbuff_in_double Unexecuted instantiation: types.c:_fr_dbuff_in_double Unexecuted instantiation: uri.c:_fr_dbuff_in_double Unexecuted instantiation: value.c:_fr_dbuff_in_double Unexecuted instantiation: fuzzer.c:_fr_dbuff_in_double Unexecuted instantiation: base.c:_fr_dbuff_in_double Unexecuted instantiation: raw.c:_fr_dbuff_in_double Unexecuted instantiation: udp.c:_fr_dbuff_in_double Unexecuted instantiation: json.c:_fr_dbuff_in_double Unexecuted instantiation: jpath.c:_fr_dbuff_in_double Unexecuted instantiation: bio.c:_fr_dbuff_in_double Unexecuted instantiation: cache.c:_fr_dbuff_in_double Unexecuted instantiation: cert.c:_fr_dbuff_in_double Unexecuted instantiation: conf.c:_fr_dbuff_in_double Unexecuted instantiation: ctx.c:_fr_dbuff_in_double Unexecuted instantiation: engine.c:_fr_dbuff_in_double Unexecuted instantiation: pairs.c:_fr_dbuff_in_double Unexecuted instantiation: session.c:_fr_dbuff_in_double Unexecuted instantiation: strerror.c:_fr_dbuff_in_double Unexecuted instantiation: utils.c:_fr_dbuff_in_double Unexecuted instantiation: verify.c:_fr_dbuff_in_double Unexecuted instantiation: version.c:_fr_dbuff_in_double Unexecuted instantiation: virtual_server.c:_fr_dbuff_in_double Unexecuted instantiation: list.c:_fr_dbuff_in_double Unexecuted instantiation: tcp.c:_fr_dbuff_in_double Unexecuted instantiation: abinary.c:_fr_dbuff_in_double Unexecuted instantiation: auth.c:_fr_dbuff_in_double Unexecuted instantiation: cf_file.c:_fr_dbuff_in_double Unexecuted instantiation: cf_parse.c:_fr_dbuff_in_double Unexecuted instantiation: cf_util.c:_fr_dbuff_in_double Unexecuted instantiation: client.c:_fr_dbuff_in_double Unexecuted instantiation: command.c:_fr_dbuff_in_double Unexecuted instantiation: connection.c:_fr_dbuff_in_double Unexecuted instantiation: dependency.c:_fr_dbuff_in_double Unexecuted instantiation: dl_module.c:_fr_dbuff_in_double Unexecuted instantiation: exec.c:_fr_dbuff_in_double Unexecuted instantiation: exec_legacy.c:_fr_dbuff_in_double Unexecuted instantiation: exfile.c:_fr_dbuff_in_double Unexecuted instantiation: global_lib.c:_fr_dbuff_in_double Unexecuted instantiation: main_config.c:_fr_dbuff_in_double Unexecuted instantiation: main_loop.c:_fr_dbuff_in_double Unexecuted instantiation: map.c:_fr_dbuff_in_double Unexecuted instantiation: map_proc.c:_fr_dbuff_in_double Unexecuted instantiation: module.c:_fr_dbuff_in_double Unexecuted instantiation: module_method.c:_fr_dbuff_in_double Unexecuted instantiation: module_rlm.c:_fr_dbuff_in_double Unexecuted instantiation: paircmp.c:_fr_dbuff_in_double Unexecuted instantiation: pairmove.c:_fr_dbuff_in_double Unexecuted instantiation: password.c:_fr_dbuff_in_double Unexecuted instantiation: pool.c:_fr_dbuff_in_double Unexecuted instantiation: request.c:_fr_dbuff_in_double Unexecuted instantiation: request_data.c:_fr_dbuff_in_double Unexecuted instantiation: snmp.c:_fr_dbuff_in_double Unexecuted instantiation: state.c:_fr_dbuff_in_double Unexecuted instantiation: tmpl_dcursor.c:_fr_dbuff_in_double Unexecuted instantiation: tmpl_eval.c:_fr_dbuff_in_double Unexecuted instantiation: tmpl_tokenize.c:_fr_dbuff_in_double Unexecuted instantiation: trigger.c:_fr_dbuff_in_double Unexecuted instantiation: trunk.c:_fr_dbuff_in_double Unexecuted instantiation: users_file.c:_fr_dbuff_in_double Unexecuted instantiation: util.c:_fr_dbuff_in_double Unexecuted instantiation: virtual_servers.c:_fr_dbuff_in_double Unexecuted instantiation: call.c:_fr_dbuff_in_double Unexecuted instantiation: call_env.c:_fr_dbuff_in_double Unexecuted instantiation: caller.c:_fr_dbuff_in_double Unexecuted instantiation: catch.c:_fr_dbuff_in_double Unexecuted instantiation: child_request.c:_fr_dbuff_in_double Unexecuted instantiation: compile.c:_fr_dbuff_in_double Unexecuted instantiation: condition.c:_fr_dbuff_in_double Unexecuted instantiation: detach.c:_fr_dbuff_in_double Unexecuted instantiation: finally.c:_fr_dbuff_in_double Unexecuted instantiation: foreach.c:_fr_dbuff_in_double Unexecuted instantiation: function.c:_fr_dbuff_in_double Unexecuted instantiation: group.c:_fr_dbuff_in_double Unexecuted instantiation: interpret.c:_fr_dbuff_in_double Unexecuted instantiation: interpret_synchronous.c:_fr_dbuff_in_double Unexecuted instantiation: io.c:_fr_dbuff_in_double Unexecuted instantiation: limit.c:_fr_dbuff_in_double Unexecuted instantiation: load_balance.c:_fr_dbuff_in_double Unexecuted instantiation: map_builtin.c:_fr_dbuff_in_double Unexecuted instantiation: parallel.c:_fr_dbuff_in_double Unexecuted instantiation: return.c:_fr_dbuff_in_double Unexecuted instantiation: subrequest.c:_fr_dbuff_in_double Unexecuted instantiation: switch.c:_fr_dbuff_in_double Unexecuted instantiation: timeout.c:_fr_dbuff_in_double Unexecuted instantiation: tmpl.c:_fr_dbuff_in_double Unexecuted instantiation: try.c:_fr_dbuff_in_double Unexecuted instantiation: transaction.c:_fr_dbuff_in_double Unexecuted instantiation: xlat.c:_fr_dbuff_in_double Unexecuted instantiation: xlat_alloc.c:_fr_dbuff_in_double Unexecuted instantiation: xlat_builtin.c:_fr_dbuff_in_double Unexecuted instantiation: xlat_eval.c:_fr_dbuff_in_double Unexecuted instantiation: xlat_expr.c:_fr_dbuff_in_double Unexecuted instantiation: xlat_func.c:_fr_dbuff_in_double Unexecuted instantiation: xlat_inst.c:_fr_dbuff_in_double Unexecuted instantiation: xlat_pair.c:_fr_dbuff_in_double Unexecuted instantiation: xlat_purify.c:_fr_dbuff_in_double Unexecuted instantiation: xlat_redundant.c:_fr_dbuff_in_double Unexecuted instantiation: xlat_tokenize.c:_fr_dbuff_in_double Unexecuted instantiation: app_io.c:_fr_dbuff_in_double Unexecuted instantiation: channel.c:_fr_dbuff_in_double Unexecuted instantiation: coord.c:_fr_dbuff_in_double Unexecuted instantiation: coord_pair.c:_fr_dbuff_in_double Unexecuted instantiation: master.c:_fr_dbuff_in_double Unexecuted instantiation: network.c:_fr_dbuff_in_double Unexecuted instantiation: schedule.c:_fr_dbuff_in_double Unexecuted instantiation: thread.c:_fr_dbuff_in_double Unexecuted instantiation: worker.c:_fr_dbuff_in_double Unexecuted instantiation: vmps.c:_fr_dbuff_in_double |
1566 | | |
1567 | | /** Copy data from a fixed sized C type into a dbuff or marker |
1568 | | * |
1569 | | * @param[out] _dbuff_or_marker to write to. Integer types will be automatically |
1570 | | converted to big endian byte order. |
1571 | | * @param[in] _in Value to copy. |
1572 | | * @return |
1573 | | * - <0 the number of bytes we would have needed to complete the conversion. |
1574 | | * - >0 the number of bytes _dbuff_or_marker was advanced by. |
1575 | | */ |
1576 | | #define fr_dbuff_in(_dbuff_or_marker, _in) \ |
1577 | 0 | _Generic((_in), \ |
1578 | 0 | int8_t : fr_dbuff_in_bytes(_dbuff_or_marker, (int8_t)_in), \ |
1579 | 0 | int16_t : _fr_dbuff_in_int16(_fr_dbuff_current_ptr(_dbuff_or_marker), fr_dbuff_ptr(_dbuff_or_marker), (int16_t)_in), \ |
1580 | 0 | int32_t : _fr_dbuff_in_int32(_fr_dbuff_current_ptr(_dbuff_or_marker), fr_dbuff_ptr(_dbuff_or_marker), (int32_t)_in), \ |
1581 | 0 | int64_t : _fr_dbuff_in_int64(_fr_dbuff_current_ptr(_dbuff_or_marker), fr_dbuff_ptr(_dbuff_or_marker), (int64_t)_in), \ |
1582 | 0 | uint8_t : fr_dbuff_in_bytes(_dbuff_or_marker, (uint8_t)_in), \ |
1583 | 0 | uint16_t : _fr_dbuff_in_uint16(_fr_dbuff_current_ptr(_dbuff_or_marker), fr_dbuff_ptr(_dbuff_or_marker), (uint16_t)_in), \ |
1584 | 0 | uint32_t : _fr_dbuff_in_uint32(_fr_dbuff_current_ptr(_dbuff_or_marker), fr_dbuff_ptr(_dbuff_or_marker), (uint32_t)_in), \ |
1585 | 0 | uint64_t : _fr_dbuff_in_uint64(_fr_dbuff_current_ptr(_dbuff_or_marker), fr_dbuff_ptr(_dbuff_or_marker), (uint64_t)_in), \ |
1586 | 0 | float : _fr_dbuff_in_float(_fr_dbuff_current_ptr(_dbuff_or_marker), fr_dbuff_ptr(_dbuff_or_marker), (float)_in), \ |
1587 | 0 | double : _fr_dbuff_in_double(_fr_dbuff_current_ptr(_dbuff_or_marker), fr_dbuff_ptr(_dbuff_or_marker), (double)_in) \ |
1588 | 0 | ) |
1589 | | |
1590 | | /** Copy data from a fixed sized C type into a dbuff returning if there is insufficient space |
1591 | | * |
1592 | | * @copydetails fr_dbuff_in |
1593 | | */ |
1594 | 0 | #define FR_DBUFF_IN_RETURN(_dbuff_or_marker, _in) FR_DBUFF_RETURN(fr_dbuff_in, _dbuff_or_marker, _in) |
1595 | | |
1596 | | /** Internal function - do not call directly |
1597 | | * @private |
1598 | | */ |
1599 | | static inline ssize_t _fr_dbuff_in_uint64v(uint8_t **pos_p, fr_dbuff_t *dbuff, uint64_t num) |
1600 | 0 | { |
1601 | 0 | size_t ret; |
1602 | 0 | uint8_t swapped[sizeof(uint64_t)]; |
1603 | |
|
1604 | 0 | ret = ROUND_UP_DIV((size_t)fr_high_bit_pos(num | 0x08), 8); |
1605 | | #ifdef __COVERITY__ |
1606 | | if (ret > sizeof(uint64_t)) return -1; |
1607 | | #endif |
1608 | 0 | fr_nbo_from_uint64(swapped, num); |
1609 | |
|
1610 | 0 | return _fr_dbuff_in_memcpy(pos_p, dbuff, (swapped + (sizeof(uint64_t) - ret)), ret); |
1611 | 0 | } Unexecuted instantiation: fuzzer_dhcpv6.c:_fr_dbuff_in_uint64v Unexecuted instantiation: fuzzer_util.c:_fr_dbuff_in_uint64v Unexecuted instantiation: fuzzer_dhcpv4.c:_fr_dbuff_in_uint64v Unexecuted instantiation: fuzzer_cbor.c:_fr_dbuff_in_uint64v Unexecuted instantiation: fuzzer_der.c:_fr_dbuff_in_uint64v Unexecuted instantiation: fuzzer_dns.c:_fr_dbuff_in_uint64v Unexecuted instantiation: fuzzer_tacacs.c:_fr_dbuff_in_uint64v Unexecuted instantiation: fuzzer_bfd.c:_fr_dbuff_in_uint64v Unexecuted instantiation: fuzzer_radius.c:_fr_dbuff_in_uint64v Unexecuted instantiation: fuzzer_tftp.c:_fr_dbuff_in_uint64v Unexecuted instantiation: fuzzer_vmps.c:_fr_dbuff_in_uint64v Unexecuted instantiation: base16.c:_fr_dbuff_in_uint64v Unexecuted instantiation: base32.c:_fr_dbuff_in_uint64v Unexecuted instantiation: base64.c:_fr_dbuff_in_uint64v Unexecuted instantiation: calc.c:_fr_dbuff_in_uint64v Unexecuted instantiation: cbor.c:_fr_dbuff_in_uint64v Unexecuted instantiation: dbuff.c:_fr_dbuff_in_uint64v Unexecuted instantiation: decode.c:_fr_dbuff_in_uint64v Unexecuted instantiation: dict_ext.c:_fr_dbuff_in_uint64v Unexecuted instantiation: dict_fixup.c:_fr_dbuff_in_uint64v Unexecuted instantiation: dict_print.c:_fr_dbuff_in_uint64v Unexecuted instantiation: dict_test.c:_fr_dbuff_in_uint64v Unexecuted instantiation: dict_tokenize.c:_fr_dbuff_in_uint64v Unexecuted instantiation: dict_unknown.c:_fr_dbuff_in_uint64v Unexecuted instantiation: dict_util.c:_fr_dbuff_in_uint64v Unexecuted instantiation: dict_validate.c:_fr_dbuff_in_uint64v Unexecuted instantiation: dl.c:_fr_dbuff_in_uint64v Unexecuted instantiation: dns.c:_fr_dbuff_in_uint64v Unexecuted instantiation: edit.c:_fr_dbuff_in_uint64v Unexecuted instantiation: encode.c:_fr_dbuff_in_uint64v Unexecuted instantiation: timer.c:_fr_dbuff_in_uint64v Unexecuted instantiation: file.c:_fr_dbuff_in_uint64v Unexecuted instantiation: inet.c:_fr_dbuff_in_uint64v Unexecuted instantiation: iovec.c:_fr_dbuff_in_uint64v Unexecuted instantiation: log.c:_fr_dbuff_in_uint64v Unexecuted instantiation: misc.c:_fr_dbuff_in_uint64v Unexecuted instantiation: packet.c:_fr_dbuff_in_uint64v Unexecuted instantiation: pair.c:_fr_dbuff_in_uint64v Unexecuted instantiation: pair_inline.c:_fr_dbuff_in_uint64v Unexecuted instantiation: pair_legacy.c:_fr_dbuff_in_uint64v Unexecuted instantiation: pair_print.c:_fr_dbuff_in_uint64v Unexecuted instantiation: pair_tokenize.c:_fr_dbuff_in_uint64v Unexecuted instantiation: print.c:_fr_dbuff_in_uint64v Unexecuted instantiation: proto.c:_fr_dbuff_in_uint64v Unexecuted instantiation: regex.c:_fr_dbuff_in_uint64v Unexecuted instantiation: socket.c:_fr_dbuff_in_uint64v Unexecuted instantiation: stats.c:_fr_dbuff_in_uint64v Unexecuted instantiation: struct.c:_fr_dbuff_in_uint64v Unexecuted instantiation: types.c:_fr_dbuff_in_uint64v Unexecuted instantiation: uri.c:_fr_dbuff_in_uint64v Unexecuted instantiation: value.c:_fr_dbuff_in_uint64v Unexecuted instantiation: fuzzer.c:_fr_dbuff_in_uint64v Unexecuted instantiation: base.c:_fr_dbuff_in_uint64v Unexecuted instantiation: raw.c:_fr_dbuff_in_uint64v Unexecuted instantiation: udp.c:_fr_dbuff_in_uint64v Unexecuted instantiation: json.c:_fr_dbuff_in_uint64v Unexecuted instantiation: jpath.c:_fr_dbuff_in_uint64v Unexecuted instantiation: encode.c:_fr_dbuff_in_uint64v Unexecuted instantiation: bio.c:_fr_dbuff_in_uint64v Unexecuted instantiation: cache.c:_fr_dbuff_in_uint64v Unexecuted instantiation: cert.c:_fr_dbuff_in_uint64v Unexecuted instantiation: conf.c:_fr_dbuff_in_uint64v Unexecuted instantiation: ctx.c:_fr_dbuff_in_uint64v Unexecuted instantiation: engine.c:_fr_dbuff_in_uint64v Unexecuted instantiation: pairs.c:_fr_dbuff_in_uint64v Unexecuted instantiation: session.c:_fr_dbuff_in_uint64v Unexecuted instantiation: strerror.c:_fr_dbuff_in_uint64v Unexecuted instantiation: utils.c:_fr_dbuff_in_uint64v Unexecuted instantiation: verify.c:_fr_dbuff_in_uint64v Unexecuted instantiation: version.c:_fr_dbuff_in_uint64v Unexecuted instantiation: virtual_server.c:_fr_dbuff_in_uint64v Unexecuted instantiation: list.c:_fr_dbuff_in_uint64v Unexecuted instantiation: tcp.c:_fr_dbuff_in_uint64v Unexecuted instantiation: abinary.c:_fr_dbuff_in_uint64v Unexecuted instantiation: auth.c:_fr_dbuff_in_uint64v Unexecuted instantiation: cf_file.c:_fr_dbuff_in_uint64v Unexecuted instantiation: cf_parse.c:_fr_dbuff_in_uint64v Unexecuted instantiation: cf_util.c:_fr_dbuff_in_uint64v Unexecuted instantiation: client.c:_fr_dbuff_in_uint64v Unexecuted instantiation: command.c:_fr_dbuff_in_uint64v Unexecuted instantiation: connection.c:_fr_dbuff_in_uint64v Unexecuted instantiation: dependency.c:_fr_dbuff_in_uint64v Unexecuted instantiation: dl_module.c:_fr_dbuff_in_uint64v Unexecuted instantiation: exec.c:_fr_dbuff_in_uint64v Unexecuted instantiation: exec_legacy.c:_fr_dbuff_in_uint64v Unexecuted instantiation: exfile.c:_fr_dbuff_in_uint64v Unexecuted instantiation: global_lib.c:_fr_dbuff_in_uint64v Unexecuted instantiation: main_config.c:_fr_dbuff_in_uint64v Unexecuted instantiation: main_loop.c:_fr_dbuff_in_uint64v Unexecuted instantiation: map.c:_fr_dbuff_in_uint64v Unexecuted instantiation: map_proc.c:_fr_dbuff_in_uint64v Unexecuted instantiation: module.c:_fr_dbuff_in_uint64v Unexecuted instantiation: module_method.c:_fr_dbuff_in_uint64v Unexecuted instantiation: module_rlm.c:_fr_dbuff_in_uint64v Unexecuted instantiation: paircmp.c:_fr_dbuff_in_uint64v Unexecuted instantiation: pairmove.c:_fr_dbuff_in_uint64v Unexecuted instantiation: password.c:_fr_dbuff_in_uint64v Unexecuted instantiation: pool.c:_fr_dbuff_in_uint64v Unexecuted instantiation: request.c:_fr_dbuff_in_uint64v Unexecuted instantiation: request_data.c:_fr_dbuff_in_uint64v Unexecuted instantiation: snmp.c:_fr_dbuff_in_uint64v Unexecuted instantiation: state.c:_fr_dbuff_in_uint64v Unexecuted instantiation: tmpl_dcursor.c:_fr_dbuff_in_uint64v Unexecuted instantiation: tmpl_eval.c:_fr_dbuff_in_uint64v Unexecuted instantiation: tmpl_tokenize.c:_fr_dbuff_in_uint64v Unexecuted instantiation: trigger.c:_fr_dbuff_in_uint64v Unexecuted instantiation: trunk.c:_fr_dbuff_in_uint64v Unexecuted instantiation: users_file.c:_fr_dbuff_in_uint64v Unexecuted instantiation: util.c:_fr_dbuff_in_uint64v Unexecuted instantiation: virtual_servers.c:_fr_dbuff_in_uint64v Unexecuted instantiation: call.c:_fr_dbuff_in_uint64v Unexecuted instantiation: call_env.c:_fr_dbuff_in_uint64v Unexecuted instantiation: caller.c:_fr_dbuff_in_uint64v Unexecuted instantiation: catch.c:_fr_dbuff_in_uint64v Unexecuted instantiation: child_request.c:_fr_dbuff_in_uint64v Unexecuted instantiation: compile.c:_fr_dbuff_in_uint64v Unexecuted instantiation: condition.c:_fr_dbuff_in_uint64v Unexecuted instantiation: detach.c:_fr_dbuff_in_uint64v Unexecuted instantiation: finally.c:_fr_dbuff_in_uint64v Unexecuted instantiation: foreach.c:_fr_dbuff_in_uint64v Unexecuted instantiation: function.c:_fr_dbuff_in_uint64v Unexecuted instantiation: group.c:_fr_dbuff_in_uint64v Unexecuted instantiation: interpret.c:_fr_dbuff_in_uint64v Unexecuted instantiation: interpret_synchronous.c:_fr_dbuff_in_uint64v Unexecuted instantiation: io.c:_fr_dbuff_in_uint64v Unexecuted instantiation: limit.c:_fr_dbuff_in_uint64v Unexecuted instantiation: load_balance.c:_fr_dbuff_in_uint64v Unexecuted instantiation: map_builtin.c:_fr_dbuff_in_uint64v Unexecuted instantiation: parallel.c:_fr_dbuff_in_uint64v Unexecuted instantiation: return.c:_fr_dbuff_in_uint64v Unexecuted instantiation: subrequest.c:_fr_dbuff_in_uint64v Unexecuted instantiation: switch.c:_fr_dbuff_in_uint64v Unexecuted instantiation: timeout.c:_fr_dbuff_in_uint64v Unexecuted instantiation: tmpl.c:_fr_dbuff_in_uint64v Unexecuted instantiation: try.c:_fr_dbuff_in_uint64v Unexecuted instantiation: transaction.c:_fr_dbuff_in_uint64v Unexecuted instantiation: xlat.c:_fr_dbuff_in_uint64v Unexecuted instantiation: xlat_alloc.c:_fr_dbuff_in_uint64v Unexecuted instantiation: xlat_builtin.c:_fr_dbuff_in_uint64v Unexecuted instantiation: xlat_eval.c:_fr_dbuff_in_uint64v Unexecuted instantiation: xlat_expr.c:_fr_dbuff_in_uint64v Unexecuted instantiation: xlat_func.c:_fr_dbuff_in_uint64v Unexecuted instantiation: xlat_inst.c:_fr_dbuff_in_uint64v Unexecuted instantiation: xlat_pair.c:_fr_dbuff_in_uint64v Unexecuted instantiation: xlat_purify.c:_fr_dbuff_in_uint64v Unexecuted instantiation: xlat_redundant.c:_fr_dbuff_in_uint64v Unexecuted instantiation: xlat_tokenize.c:_fr_dbuff_in_uint64v Unexecuted instantiation: app_io.c:_fr_dbuff_in_uint64v Unexecuted instantiation: channel.c:_fr_dbuff_in_uint64v Unexecuted instantiation: coord.c:_fr_dbuff_in_uint64v Unexecuted instantiation: coord_pair.c:_fr_dbuff_in_uint64v Unexecuted instantiation: master.c:_fr_dbuff_in_uint64v Unexecuted instantiation: network.c:_fr_dbuff_in_uint64v Unexecuted instantiation: schedule.c:_fr_dbuff_in_uint64v Unexecuted instantiation: thread.c:_fr_dbuff_in_uint64v Unexecuted instantiation: worker.c:_fr_dbuff_in_uint64v Unexecuted instantiation: vmps.c:_fr_dbuff_in_uint64v |
1612 | | |
1613 | | /** Copy an integer value into a dbuff or marker using our internal variable length encoding |
1614 | | * |
1615 | | * @param[out] _dbuff_or_marker to copy integer value to. |
1616 | | * @param[in] _num to copy. |
1617 | | * @return |
1618 | | * - <0 the number of bytes we would have needed to encode the integer value. |
1619 | | * - >0 the number of bytes used to represent the integer value. |
1620 | | */ |
1621 | | #define fr_dbuff_in_uint64v(_dbuff_or_marker, _num) \ |
1622 | 0 | _fr_dbuff_in_uint64v(_fr_dbuff_current_ptr(_dbuff_or_marker), fr_dbuff_ptr(_dbuff_or_marker), _num) |
1623 | | |
1624 | | /** Copy an integer value into a dbuff or marker using our internal variable length encoding returning if there is insufficient space |
1625 | | * |
1626 | | * @copydetails fr_dbuff_in_uint64v |
1627 | | */ |
1628 | | #define FR_DBUFF_IN_UINT64V(_dbuff_or_marker, _num) FR_DBUFF_RETURN(fr_dbuff_in_uint64v, _dbuff_or_marker, _num) |
1629 | | /** @} */ |
1630 | | |
1631 | | /** @name "move" functions (copy data between dbuffs and markers) |
1632 | | * @{ |
1633 | | */ |
1634 | | /** Internal function - do not call directly |
1635 | | * @private |
1636 | | */ |
1637 | | size_t _fr_dbuff_move_dbuff_to_dbuff(fr_dbuff_t *out, fr_dbuff_t *in, size_t len); |
1638 | | |
1639 | | /** Internal function - do not call directly |
1640 | | * @private |
1641 | | */ |
1642 | | size_t _fr_dbuff_move_dbuff_to_dbuff_marker(fr_dbuff_marker_t *out, fr_dbuff_t *in, size_t len); |
1643 | | |
1644 | | /** Internal function - do not call directly |
1645 | | * @private |
1646 | | */ |
1647 | | size_t _fr_dbuff_move_dbuff_marker_to_dbuff(fr_dbuff_t *out, fr_dbuff_marker_t *in, size_t len); |
1648 | | |
1649 | | /** Internal function - do not call directly |
1650 | | * @private |
1651 | | */ |
1652 | | size_t _fr_dbuff_move_dbuff_marker_to_dbuff_marker(fr_dbuff_marker_t *out, fr_dbuff_marker_t *in, size_t len); |
1653 | | |
1654 | | /** Copy in as many bytes as possible from one dbuff or marker to another |
1655 | | * |
1656 | | * @warning Advances both _in and _out by _len, this may not be what you want. |
1657 | | * If you only want _out to be advanced use fr_dbuff_in_memcpy(_out, _in, _len). |
1658 | | * If you only want _in to be advanced use fr_dbuff_out_memcpy(_out, _in, _len). |
1659 | | * |
1660 | | * @param[in] _out to copy into. |
1661 | | * @param[in] _in to copy from. |
1662 | | * @param[in] _len The maximum length to copy. |
1663 | | * @return Number of bytes to copy. |
1664 | | */ |
1665 | | #define fr_dbuff_move(_out, _in, _len) \ |
1666 | 0 | _Generic((_out), \ |
1667 | 0 | fr_dbuff_t * : \ |
1668 | 0 | _Generic((_in), \ |
1669 | 0 | fr_dbuff_t * : _fr_dbuff_move_dbuff_to_dbuff((fr_dbuff_t *)_out, \ |
1670 | 0 | (fr_dbuff_t *)_in, \ |
1671 | 0 | _len), \ |
1672 | 0 | fr_dbuff_marker_t * : _fr_dbuff_move_dbuff_marker_to_dbuff((fr_dbuff_t *)_out, \ |
1673 | 0 | (fr_dbuff_marker_t *)_in, \ |
1674 | 0 | _len) \ |
1675 | 0 | ), \ |
1676 | 0 | fr_dbuff_marker_t * : \ |
1677 | 0 | _Generic((_in), \ |
1678 | 0 | fr_dbuff_t * : _fr_dbuff_move_dbuff_to_dbuff_marker((fr_dbuff_marker_t *)_out, \ |
1679 | 0 | (fr_dbuff_t *)_in, \ |
1680 | 0 | _len), \ |
1681 | 0 | fr_dbuff_marker_t * : _fr_dbuff_move_dbuff_marker_to_dbuff_marker((fr_dbuff_marker_t *)_out, \ |
1682 | 0 | (fr_dbuff_marker_t *)_in, \ |
1683 | 0 | _len) \ |
1684 | 0 | ) \ |
1685 | 0 | ) |
1686 | | /** @} */ |
1687 | | |
1688 | | /** @name "out" functions (copy data out of a dbuff) |
1689 | | * @{ |
1690 | | */ |
1691 | | |
1692 | | /** Internal function - do not call directly |
1693 | | * |
1694 | | * @private |
1695 | | */ |
1696 | | static inline ssize_t _fr_dbuff_out_memcpy(uint8_t *out, uint8_t **pos_p, fr_dbuff_t *in, size_t outlen) |
1697 | 5.25M | { |
1698 | 5.25M | size_t ext_len, to_copy, remaining; |
1699 | | |
1700 | 8.93M | for (remaining = outlen; remaining > 0; remaining -= to_copy) { |
1701 | 3.67M | to_copy = remaining; |
1702 | 3.67M | ext_len = _fr_dbuff_extend_lowat(NULL, in, fr_dbuff_end(in) - (*pos_p), 1); |
1703 | 3.67M | if (ext_len == 0) return -remaining; |
1704 | 3.67M | if (ext_len < to_copy) to_copy = ext_len; |
1705 | 3.67M | out += _fr_dbuff_set(pos_p, in, |
1706 | 3.67M | (*pos_p) + _fr_dbuff_safecpy(out, out + to_copy, (*pos_p), (*pos_p) + to_copy)); |
1707 | 3.67M | } |
1708 | | |
1709 | 5.25M | return outlen; |
1710 | 5.25M | } Unexecuted instantiation: fuzzer_dhcpv6.c:_fr_dbuff_out_memcpy Unexecuted instantiation: fuzzer_util.c:_fr_dbuff_out_memcpy Unexecuted instantiation: fuzzer_dhcpv4.c:_fr_dbuff_out_memcpy Unexecuted instantiation: fuzzer_cbor.c:_fr_dbuff_out_memcpy Unexecuted instantiation: fuzzer_der.c:_fr_dbuff_out_memcpy Unexecuted instantiation: fuzzer_dns.c:_fr_dbuff_out_memcpy Unexecuted instantiation: fuzzer_tacacs.c:_fr_dbuff_out_memcpy Unexecuted instantiation: fuzzer_bfd.c:_fr_dbuff_out_memcpy Unexecuted instantiation: fuzzer_radius.c:_fr_dbuff_out_memcpy Unexecuted instantiation: fuzzer_tftp.c:_fr_dbuff_out_memcpy Unexecuted instantiation: fuzzer_vmps.c:_fr_dbuff_out_memcpy Unexecuted instantiation: base16.c:_fr_dbuff_out_memcpy Unexecuted instantiation: base32.c:_fr_dbuff_out_memcpy Unexecuted instantiation: base64.c:_fr_dbuff_out_memcpy Unexecuted instantiation: calc.c:_fr_dbuff_out_memcpy cbor.c:_fr_dbuff_out_memcpy Line | Count | Source | 1697 | 1.63k | { | 1698 | 1.63k | size_t ext_len, to_copy, remaining; | 1699 | | | 1700 | 3.09k | for (remaining = outlen; remaining > 0; remaining -= to_copy) { | 1701 | 1.58k | to_copy = remaining; | 1702 | 1.58k | ext_len = _fr_dbuff_extend_lowat(NULL, in, fr_dbuff_end(in) - (*pos_p), 1); | 1703 | 1.58k | if (ext_len == 0) return -remaining; | 1704 | 1.46k | if (ext_len < to_copy) to_copy = ext_len; | 1705 | 1.46k | out += _fr_dbuff_set(pos_p, in, | 1706 | 1.46k | (*pos_p) + _fr_dbuff_safecpy(out, out + to_copy, (*pos_p), (*pos_p) + to_copy)); | 1707 | 1.46k | } | 1708 | | | 1709 | 1.51k | return outlen; | 1710 | 1.63k | } |
Unexecuted instantiation: dbuff.c:_fr_dbuff_out_memcpy Unexecuted instantiation: dict_ext.c:_fr_dbuff_out_memcpy Unexecuted instantiation: dict_fixup.c:_fr_dbuff_out_memcpy Unexecuted instantiation: dict_print.c:_fr_dbuff_out_memcpy Unexecuted instantiation: dict_test.c:_fr_dbuff_out_memcpy Unexecuted instantiation: dict_tokenize.c:_fr_dbuff_out_memcpy Unexecuted instantiation: dict_unknown.c:_fr_dbuff_out_memcpy Unexecuted instantiation: dict_util.c:_fr_dbuff_out_memcpy Unexecuted instantiation: dict_validate.c:_fr_dbuff_out_memcpy Unexecuted instantiation: dl.c:_fr_dbuff_out_memcpy Unexecuted instantiation: dns.c:_fr_dbuff_out_memcpy Unexecuted instantiation: edit.c:_fr_dbuff_out_memcpy Unexecuted instantiation: encode.c:_fr_dbuff_out_memcpy Unexecuted instantiation: timer.c:_fr_dbuff_out_memcpy Unexecuted instantiation: file.c:_fr_dbuff_out_memcpy Unexecuted instantiation: inet.c:_fr_dbuff_out_memcpy Unexecuted instantiation: iovec.c:_fr_dbuff_out_memcpy Unexecuted instantiation: log.c:_fr_dbuff_out_memcpy Unexecuted instantiation: misc.c:_fr_dbuff_out_memcpy Unexecuted instantiation: packet.c:_fr_dbuff_out_memcpy Unexecuted instantiation: pair.c:_fr_dbuff_out_memcpy Unexecuted instantiation: pair_inline.c:_fr_dbuff_out_memcpy Unexecuted instantiation: pair_legacy.c:_fr_dbuff_out_memcpy Unexecuted instantiation: pair_print.c:_fr_dbuff_out_memcpy Unexecuted instantiation: pair_tokenize.c:_fr_dbuff_out_memcpy Unexecuted instantiation: print.c:_fr_dbuff_out_memcpy Unexecuted instantiation: proto.c:_fr_dbuff_out_memcpy Unexecuted instantiation: regex.c:_fr_dbuff_out_memcpy Unexecuted instantiation: socket.c:_fr_dbuff_out_memcpy Unexecuted instantiation: stats.c:_fr_dbuff_out_memcpy Unexecuted instantiation: struct.c:_fr_dbuff_out_memcpy Unexecuted instantiation: types.c:_fr_dbuff_out_memcpy Unexecuted instantiation: uri.c:_fr_dbuff_out_memcpy value.c:_fr_dbuff_out_memcpy Line | Count | Source | 1697 | 2.07M | { | 1698 | 2.07M | size_t ext_len, to_copy, remaining; | 1699 | | | 1700 | 2.55M | for (remaining = outlen; remaining > 0; remaining -= to_copy) { | 1701 | 488k | to_copy = remaining; | 1702 | 488k | ext_len = _fr_dbuff_extend_lowat(NULL, in, fr_dbuff_end(in) - (*pos_p), 1); | 1703 | 488k | if (ext_len == 0) return -remaining; | 1704 | 487k | if (ext_len < to_copy) to_copy = ext_len; | 1705 | 487k | out += _fr_dbuff_set(pos_p, in, | 1706 | 487k | (*pos_p) + _fr_dbuff_safecpy(out, out + to_copy, (*pos_p), (*pos_p) + to_copy)); | 1707 | 487k | } | 1708 | | | 1709 | 2.07M | return outlen; | 1710 | 2.07M | } |
Unexecuted instantiation: fuzzer.c:_fr_dbuff_out_memcpy Unexecuted instantiation: base.c:_fr_dbuff_out_memcpy Unexecuted instantiation: raw.c:_fr_dbuff_out_memcpy Unexecuted instantiation: udp.c:_fr_dbuff_out_memcpy decode.c:_fr_dbuff_out_memcpy Line | Count | Source | 1697 | 3.18M | { | 1698 | 3.18M | size_t ext_len, to_copy, remaining; | 1699 | | | 1700 | 6.37M | for (remaining = outlen; remaining > 0; remaining -= to_copy) { | 1701 | 3.18M | to_copy = remaining; | 1702 | 3.18M | ext_len = _fr_dbuff_extend_lowat(NULL, in, fr_dbuff_end(in) - (*pos_p), 1); | 1703 | 3.18M | if (ext_len == 0) return -remaining; | 1704 | 3.18M | if (ext_len < to_copy) to_copy = ext_len; | 1705 | 3.18M | out += _fr_dbuff_set(pos_p, in, | 1706 | 3.18M | (*pos_p) + _fr_dbuff_safecpy(out, out + to_copy, (*pos_p), (*pos_p) + to_copy)); | 1707 | 3.18M | } | 1708 | | | 1709 | 3.18M | return outlen; | 1710 | 3.18M | } |
Unexecuted instantiation: json.c:_fr_dbuff_out_memcpy Unexecuted instantiation: jpath.c:_fr_dbuff_out_memcpy Unexecuted instantiation: bio.c:_fr_dbuff_out_memcpy Unexecuted instantiation: cache.c:_fr_dbuff_out_memcpy Unexecuted instantiation: cert.c:_fr_dbuff_out_memcpy Unexecuted instantiation: conf.c:_fr_dbuff_out_memcpy Unexecuted instantiation: ctx.c:_fr_dbuff_out_memcpy Unexecuted instantiation: engine.c:_fr_dbuff_out_memcpy Unexecuted instantiation: pairs.c:_fr_dbuff_out_memcpy Unexecuted instantiation: session.c:_fr_dbuff_out_memcpy Unexecuted instantiation: strerror.c:_fr_dbuff_out_memcpy Unexecuted instantiation: utils.c:_fr_dbuff_out_memcpy Unexecuted instantiation: verify.c:_fr_dbuff_out_memcpy Unexecuted instantiation: version.c:_fr_dbuff_out_memcpy Unexecuted instantiation: virtual_server.c:_fr_dbuff_out_memcpy Unexecuted instantiation: encode.c:_fr_dbuff_out_memcpy Unexecuted instantiation: list.c:_fr_dbuff_out_memcpy Unexecuted instantiation: tcp.c:_fr_dbuff_out_memcpy Unexecuted instantiation: abinary.c:_fr_dbuff_out_memcpy Unexecuted instantiation: auth.c:_fr_dbuff_out_memcpy Unexecuted instantiation: cf_file.c:_fr_dbuff_out_memcpy Unexecuted instantiation: cf_parse.c:_fr_dbuff_out_memcpy Unexecuted instantiation: cf_util.c:_fr_dbuff_out_memcpy Unexecuted instantiation: client.c:_fr_dbuff_out_memcpy Unexecuted instantiation: command.c:_fr_dbuff_out_memcpy Unexecuted instantiation: connection.c:_fr_dbuff_out_memcpy Unexecuted instantiation: dependency.c:_fr_dbuff_out_memcpy Unexecuted instantiation: dl_module.c:_fr_dbuff_out_memcpy Unexecuted instantiation: exec.c:_fr_dbuff_out_memcpy Unexecuted instantiation: exec_legacy.c:_fr_dbuff_out_memcpy Unexecuted instantiation: exfile.c:_fr_dbuff_out_memcpy Unexecuted instantiation: global_lib.c:_fr_dbuff_out_memcpy Unexecuted instantiation: main_config.c:_fr_dbuff_out_memcpy Unexecuted instantiation: main_loop.c:_fr_dbuff_out_memcpy Unexecuted instantiation: map.c:_fr_dbuff_out_memcpy Unexecuted instantiation: map_proc.c:_fr_dbuff_out_memcpy Unexecuted instantiation: module.c:_fr_dbuff_out_memcpy Unexecuted instantiation: module_method.c:_fr_dbuff_out_memcpy Unexecuted instantiation: module_rlm.c:_fr_dbuff_out_memcpy Unexecuted instantiation: paircmp.c:_fr_dbuff_out_memcpy Unexecuted instantiation: pairmove.c:_fr_dbuff_out_memcpy Unexecuted instantiation: password.c:_fr_dbuff_out_memcpy Unexecuted instantiation: pool.c:_fr_dbuff_out_memcpy Unexecuted instantiation: request.c:_fr_dbuff_out_memcpy Unexecuted instantiation: request_data.c:_fr_dbuff_out_memcpy Unexecuted instantiation: snmp.c:_fr_dbuff_out_memcpy Unexecuted instantiation: state.c:_fr_dbuff_out_memcpy Unexecuted instantiation: tmpl_dcursor.c:_fr_dbuff_out_memcpy Unexecuted instantiation: tmpl_eval.c:_fr_dbuff_out_memcpy Unexecuted instantiation: tmpl_tokenize.c:_fr_dbuff_out_memcpy Unexecuted instantiation: trigger.c:_fr_dbuff_out_memcpy Unexecuted instantiation: trunk.c:_fr_dbuff_out_memcpy Unexecuted instantiation: users_file.c:_fr_dbuff_out_memcpy Unexecuted instantiation: util.c:_fr_dbuff_out_memcpy Unexecuted instantiation: virtual_servers.c:_fr_dbuff_out_memcpy Unexecuted instantiation: call.c:_fr_dbuff_out_memcpy Unexecuted instantiation: call_env.c:_fr_dbuff_out_memcpy Unexecuted instantiation: caller.c:_fr_dbuff_out_memcpy Unexecuted instantiation: catch.c:_fr_dbuff_out_memcpy Unexecuted instantiation: child_request.c:_fr_dbuff_out_memcpy Unexecuted instantiation: compile.c:_fr_dbuff_out_memcpy Unexecuted instantiation: condition.c:_fr_dbuff_out_memcpy Unexecuted instantiation: detach.c:_fr_dbuff_out_memcpy Unexecuted instantiation: finally.c:_fr_dbuff_out_memcpy Unexecuted instantiation: foreach.c:_fr_dbuff_out_memcpy Unexecuted instantiation: function.c:_fr_dbuff_out_memcpy Unexecuted instantiation: group.c:_fr_dbuff_out_memcpy Unexecuted instantiation: interpret.c:_fr_dbuff_out_memcpy Unexecuted instantiation: interpret_synchronous.c:_fr_dbuff_out_memcpy Unexecuted instantiation: io.c:_fr_dbuff_out_memcpy Unexecuted instantiation: limit.c:_fr_dbuff_out_memcpy Unexecuted instantiation: load_balance.c:_fr_dbuff_out_memcpy Unexecuted instantiation: map_builtin.c:_fr_dbuff_out_memcpy Unexecuted instantiation: parallel.c:_fr_dbuff_out_memcpy Unexecuted instantiation: return.c:_fr_dbuff_out_memcpy Unexecuted instantiation: subrequest.c:_fr_dbuff_out_memcpy Unexecuted instantiation: switch.c:_fr_dbuff_out_memcpy Unexecuted instantiation: timeout.c:_fr_dbuff_out_memcpy Unexecuted instantiation: tmpl.c:_fr_dbuff_out_memcpy Unexecuted instantiation: try.c:_fr_dbuff_out_memcpy Unexecuted instantiation: transaction.c:_fr_dbuff_out_memcpy Unexecuted instantiation: xlat.c:_fr_dbuff_out_memcpy Unexecuted instantiation: xlat_alloc.c:_fr_dbuff_out_memcpy Unexecuted instantiation: xlat_builtin.c:_fr_dbuff_out_memcpy Unexecuted instantiation: xlat_eval.c:_fr_dbuff_out_memcpy Unexecuted instantiation: xlat_expr.c:_fr_dbuff_out_memcpy Unexecuted instantiation: xlat_func.c:_fr_dbuff_out_memcpy Unexecuted instantiation: xlat_inst.c:_fr_dbuff_out_memcpy Unexecuted instantiation: xlat_pair.c:_fr_dbuff_out_memcpy Unexecuted instantiation: xlat_purify.c:_fr_dbuff_out_memcpy Unexecuted instantiation: xlat_redundant.c:_fr_dbuff_out_memcpy Unexecuted instantiation: xlat_tokenize.c:_fr_dbuff_out_memcpy Unexecuted instantiation: app_io.c:_fr_dbuff_out_memcpy Unexecuted instantiation: channel.c:_fr_dbuff_out_memcpy Unexecuted instantiation: coord.c:_fr_dbuff_out_memcpy Unexecuted instantiation: coord_pair.c:_fr_dbuff_out_memcpy Unexecuted instantiation: master.c:_fr_dbuff_out_memcpy Unexecuted instantiation: network.c:_fr_dbuff_out_memcpy Unexecuted instantiation: schedule.c:_fr_dbuff_out_memcpy Unexecuted instantiation: thread.c:_fr_dbuff_out_memcpy Unexecuted instantiation: worker.c:_fr_dbuff_out_memcpy Unexecuted instantiation: vmps.c:_fr_dbuff_out_memcpy |
1711 | | /** Internal function - do not call directly |
1712 | | * |
1713 | | * @private |
1714 | | */ |
1715 | | static inline ssize_t _fr_dbuff_out_memcpy_dbuff(uint8_t **out_p, fr_dbuff_t *out, uint8_t **pos_p, fr_dbuff_t *in, size_t outlen) |
1716 | 0 | { |
1717 | 0 | if (outlen == SIZE_MAX) outlen = _fr_dbuff_extend_lowat(NULL, out, fr_dbuff_end(out) - (*out_p), outlen); |
1718 | 0 |
|
1719 | 0 | return _fr_dbuff_out_memcpy((*out_p), pos_p, in, outlen); |
1720 | 0 | } Unexecuted instantiation: fuzzer_dhcpv6.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: fuzzer_util.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: fuzzer_dhcpv4.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: fuzzer_cbor.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: fuzzer_der.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: fuzzer_dns.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: fuzzer_tacacs.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: fuzzer_bfd.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: fuzzer_radius.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: fuzzer_tftp.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: fuzzer_vmps.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: base16.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: base32.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: base64.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: calc.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: cbor.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: dbuff.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: decode.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: dict_ext.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: dict_fixup.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: dict_print.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: dict_test.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: dict_tokenize.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: dict_unknown.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: dict_util.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: dict_validate.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: dl.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: dns.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: edit.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: encode.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: timer.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: file.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: inet.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: iovec.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: log.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: misc.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: packet.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: pair.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: pair_inline.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: pair_legacy.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: pair_print.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: pair_tokenize.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: print.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: proto.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: regex.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: socket.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: stats.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: struct.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: types.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: uri.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: value.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: fuzzer.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: base.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: raw.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: udp.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: json.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: jpath.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: bio.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: cache.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: cert.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: conf.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: ctx.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: engine.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: pairs.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: session.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: strerror.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: utils.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: verify.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: version.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: virtual_server.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: list.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: tcp.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: abinary.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: auth.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: cf_file.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: cf_parse.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: cf_util.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: client.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: command.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: connection.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: dependency.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: dl_module.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: exec.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: exec_legacy.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: exfile.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: global_lib.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: main_config.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: main_loop.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: map.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: map_proc.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: module.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: module_method.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: module_rlm.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: paircmp.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: pairmove.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: password.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: pool.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: request.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: request_data.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: snmp.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: state.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: tmpl_dcursor.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: tmpl_eval.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: tmpl_tokenize.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: trigger.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: trunk.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: users_file.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: util.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: virtual_servers.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: call.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: call_env.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: caller.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: catch.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: child_request.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: compile.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: condition.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: detach.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: finally.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: foreach.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: function.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: group.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: interpret.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: interpret_synchronous.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: io.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: limit.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: load_balance.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: map_builtin.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: parallel.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: return.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: subrequest.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: switch.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: timeout.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: tmpl.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: try.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: transaction.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: xlat.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: xlat_alloc.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: xlat_builtin.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: xlat_eval.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: xlat_expr.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: xlat_func.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: xlat_inst.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: xlat_pair.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: xlat_purify.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: xlat_redundant.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: xlat_tokenize.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: app_io.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: channel.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: coord.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: coord_pair.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: master.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: network.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: schedule.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: thread.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: worker.c:_fr_dbuff_out_memcpy_dbuff Unexecuted instantiation: vmps.c:_fr_dbuff_out_memcpy_dbuff |
1721 | | |
1722 | | /** Copy exactly _outlen bytes from the dbuff |
1723 | | * |
1724 | | * If _out is a dbuff and _outlen is greater than the number of bytes |
1725 | | * available in that dbuff, the copy operation will fail. |
1726 | | * |
1727 | | * @note _out will not be advanced. If this is required #fr_dbuff_move should be used. |
1728 | | * |
1729 | | * @param[in] _out either a buffer, or another dbuff/marker to copy data to. |
1730 | | * @param[in] _dbuff_or_marker to copy data from. |
1731 | | * @param[in] _outlen How much data we need to copy. |
1732 | | * If _out is `fr_dbuff_t *` and SIZE_MAX |
1733 | | * is passed, then _inlen will be substituted |
1734 | | * for the length of the buffer. |
1735 | | * @return |
1736 | | * - 0 no data copied. |
1737 | | * - >0 the number of bytes copied. |
1738 | | * - <0 the number of bytes we would have needed |
1739 | | * to complete the copy operation. |
1740 | | */ |
1741 | | #define fr_dbuff_out_memcpy(_out, _dbuff_or_marker, _outlen) \ |
1742 | 2.05M | _Generic((_out), \ |
1743 | 2.05M | uint8_t * : _fr_dbuff_out_memcpy((uint8_t *)(_out), \ |
1744 | 2.05M | _fr_dbuff_current_ptr(_dbuff_or_marker), \ |
1745 | 2.05M | fr_dbuff_ptr(_dbuff_or_marker), \ |
1746 | 2.05M | _outlen), \ |
1747 | 2.05M | fr_dbuff_t * : _fr_dbuff_out_memcpy_dbuff(_fr_dbuff_current_ptr((fr_dbuff_t *)_out), \ |
1748 | 2.05M | fr_dbuff_ptr((fr_dbuff_t *)(_out)), \ |
1749 | 2.05M | _fr_dbuff_current_ptr(_dbuff_or_marker), \ |
1750 | 2.05M | fr_dbuff_ptr(_dbuff_or_marker), _outlen), \ |
1751 | 2.05M | fr_dbuff_marker_t * : _fr_dbuff_out_memcpy_dbuff(_fr_dbuff_current_ptr((fr_dbuff_marker_t *)_out), \ |
1752 | 2.05M | fr_dbuff_ptr((fr_dbuff_marker_t *)(_out)), \ |
1753 | 2.05M | _fr_dbuff_current_ptr(_dbuff_or_marker), \ |
1754 | 2.05M | fr_dbuff_ptr(_dbuff_or_marker), _outlen) \ |
1755 | 2.05M | ) |
1756 | | |
1757 | | /** Copy outlen bytes from the dbuff returning if there's insufficient data in the dbuff |
1758 | | * |
1759 | | * @copydetails fr_dbuff_out_memcpy |
1760 | | */ |
1761 | 16.9k | #define FR_DBUFF_OUT_MEMCPY_RETURN(_out, _dbuff_or_marker, _outlen) FR_DBUFF_RETURN(fr_dbuff_out_memcpy, _out, _dbuff_or_marker, _outlen) |
1762 | | |
1763 | | /** @cond */ |
1764 | | /** Define integer encoding functions |
1765 | | * @private |
1766 | | */ |
1767 | | #define FR_DBUFF_OUT_DEF(_type) \ |
1768 | 133k | static inline ssize_t _fr_dbuff_out_##_type(_type##_t *out, uint8_t **pos_p, fr_dbuff_t *in) \ |
1769 | 133k | { \ |
1770 | 133k | fr_assert(out); \ |
1771 | 133k | FR_DBUFF_EXTEND_LOWAT_OR_RETURN(in, sizeof(_type##_t)); \ |
1772 | 133k | *out = fr_nbo_to_##_type((*pos_p)); \ |
1773 | 133k | return _fr_dbuff_set(pos_p, in, (*pos_p) + sizeof(_type##_t)); \ |
1774 | 133k | } Unexecuted instantiation: fuzzer_dhcpv6.c:_fr_dbuff_out_uint16 Unexecuted instantiation: fuzzer_dhcpv6.c:_fr_dbuff_out_uint32 Unexecuted instantiation: fuzzer_dhcpv6.c:_fr_dbuff_out_uint64 Unexecuted instantiation: fuzzer_dhcpv6.c:_fr_dbuff_out_int16 Unexecuted instantiation: fuzzer_dhcpv6.c:_fr_dbuff_out_int32 Unexecuted instantiation: fuzzer_dhcpv6.c:_fr_dbuff_out_int64 Unexecuted instantiation: fuzzer_util.c:_fr_dbuff_out_uint16 Unexecuted instantiation: fuzzer_util.c:_fr_dbuff_out_uint32 Unexecuted instantiation: fuzzer_util.c:_fr_dbuff_out_uint64 Unexecuted instantiation: fuzzer_util.c:_fr_dbuff_out_int16 Unexecuted instantiation: fuzzer_util.c:_fr_dbuff_out_int32 Unexecuted instantiation: fuzzer_util.c:_fr_dbuff_out_int64 Unexecuted instantiation: fuzzer_dhcpv4.c:_fr_dbuff_out_uint16 Unexecuted instantiation: fuzzer_dhcpv4.c:_fr_dbuff_out_uint32 Unexecuted instantiation: fuzzer_dhcpv4.c:_fr_dbuff_out_uint64 Unexecuted instantiation: fuzzer_dhcpv4.c:_fr_dbuff_out_int16 Unexecuted instantiation: fuzzer_dhcpv4.c:_fr_dbuff_out_int32 Unexecuted instantiation: fuzzer_dhcpv4.c:_fr_dbuff_out_int64 Unexecuted instantiation: fuzzer_cbor.c:_fr_dbuff_out_uint16 Unexecuted instantiation: fuzzer_cbor.c:_fr_dbuff_out_uint32 Unexecuted instantiation: fuzzer_cbor.c:_fr_dbuff_out_uint64 Unexecuted instantiation: fuzzer_cbor.c:_fr_dbuff_out_int16 Unexecuted instantiation: fuzzer_cbor.c:_fr_dbuff_out_int32 Unexecuted instantiation: fuzzer_cbor.c:_fr_dbuff_out_int64 Unexecuted instantiation: fuzzer_der.c:_fr_dbuff_out_uint16 Unexecuted instantiation: fuzzer_der.c:_fr_dbuff_out_uint32 Unexecuted instantiation: fuzzer_der.c:_fr_dbuff_out_uint64 Unexecuted instantiation: fuzzer_der.c:_fr_dbuff_out_int16 Unexecuted instantiation: fuzzer_der.c:_fr_dbuff_out_int32 Unexecuted instantiation: fuzzer_der.c:_fr_dbuff_out_int64 Unexecuted instantiation: fuzzer_dns.c:_fr_dbuff_out_uint16 Unexecuted instantiation: fuzzer_dns.c:_fr_dbuff_out_uint32 Unexecuted instantiation: fuzzer_dns.c:_fr_dbuff_out_uint64 Unexecuted instantiation: fuzzer_dns.c:_fr_dbuff_out_int16 Unexecuted instantiation: fuzzer_dns.c:_fr_dbuff_out_int32 Unexecuted instantiation: fuzzer_dns.c:_fr_dbuff_out_int64 Unexecuted instantiation: fuzzer_tacacs.c:_fr_dbuff_out_uint16 Unexecuted instantiation: fuzzer_tacacs.c:_fr_dbuff_out_uint32 Unexecuted instantiation: fuzzer_tacacs.c:_fr_dbuff_out_uint64 Unexecuted instantiation: fuzzer_tacacs.c:_fr_dbuff_out_int16 Unexecuted instantiation: fuzzer_tacacs.c:_fr_dbuff_out_int32 Unexecuted instantiation: fuzzer_tacacs.c:_fr_dbuff_out_int64 Unexecuted instantiation: fuzzer_bfd.c:_fr_dbuff_out_uint16 Unexecuted instantiation: fuzzer_bfd.c:_fr_dbuff_out_uint32 Unexecuted instantiation: fuzzer_bfd.c:_fr_dbuff_out_uint64 Unexecuted instantiation: fuzzer_bfd.c:_fr_dbuff_out_int16 Unexecuted instantiation: fuzzer_bfd.c:_fr_dbuff_out_int32 Unexecuted instantiation: fuzzer_bfd.c:_fr_dbuff_out_int64 Unexecuted instantiation: fuzzer_radius.c:_fr_dbuff_out_uint16 Unexecuted instantiation: fuzzer_radius.c:_fr_dbuff_out_uint32 Unexecuted instantiation: fuzzer_radius.c:_fr_dbuff_out_uint64 Unexecuted instantiation: fuzzer_radius.c:_fr_dbuff_out_int16 Unexecuted instantiation: fuzzer_radius.c:_fr_dbuff_out_int32 Unexecuted instantiation: fuzzer_radius.c:_fr_dbuff_out_int64 Unexecuted instantiation: fuzzer_tftp.c:_fr_dbuff_out_uint16 Unexecuted instantiation: fuzzer_tftp.c:_fr_dbuff_out_uint32 Unexecuted instantiation: fuzzer_tftp.c:_fr_dbuff_out_uint64 Unexecuted instantiation: fuzzer_tftp.c:_fr_dbuff_out_int16 Unexecuted instantiation: fuzzer_tftp.c:_fr_dbuff_out_int32 Unexecuted instantiation: fuzzer_tftp.c:_fr_dbuff_out_int64 Unexecuted instantiation: fuzzer_vmps.c:_fr_dbuff_out_uint16 Unexecuted instantiation: fuzzer_vmps.c:_fr_dbuff_out_uint32 Unexecuted instantiation: fuzzer_vmps.c:_fr_dbuff_out_uint64 Unexecuted instantiation: fuzzer_vmps.c:_fr_dbuff_out_int16 Unexecuted instantiation: fuzzer_vmps.c:_fr_dbuff_out_int32 Unexecuted instantiation: fuzzer_vmps.c:_fr_dbuff_out_int64 Unexecuted instantiation: base16.c:_fr_dbuff_out_uint16 Unexecuted instantiation: base16.c:_fr_dbuff_out_uint32 Unexecuted instantiation: base16.c:_fr_dbuff_out_uint64 Unexecuted instantiation: base16.c:_fr_dbuff_out_int16 Unexecuted instantiation: base16.c:_fr_dbuff_out_int32 Unexecuted instantiation: base16.c:_fr_dbuff_out_int64 Unexecuted instantiation: base32.c:_fr_dbuff_out_uint16 Unexecuted instantiation: base32.c:_fr_dbuff_out_uint32 Unexecuted instantiation: base32.c:_fr_dbuff_out_uint64 Unexecuted instantiation: base32.c:_fr_dbuff_out_int16 Unexecuted instantiation: base32.c:_fr_dbuff_out_int32 Unexecuted instantiation: base32.c:_fr_dbuff_out_int64 Unexecuted instantiation: base64.c:_fr_dbuff_out_uint16 Unexecuted instantiation: base64.c:_fr_dbuff_out_uint32 Unexecuted instantiation: base64.c:_fr_dbuff_out_uint64 Unexecuted instantiation: base64.c:_fr_dbuff_out_int16 Unexecuted instantiation: base64.c:_fr_dbuff_out_int32 Unexecuted instantiation: base64.c:_fr_dbuff_out_int64 Unexecuted instantiation: calc.c:_fr_dbuff_out_uint16 Unexecuted instantiation: calc.c:_fr_dbuff_out_uint32 Unexecuted instantiation: calc.c:_fr_dbuff_out_uint64 Unexecuted instantiation: calc.c:_fr_dbuff_out_int16 Unexecuted instantiation: calc.c:_fr_dbuff_out_int32 Unexecuted instantiation: calc.c:_fr_dbuff_out_int64 Unexecuted instantiation: cbor.c:_fr_dbuff_out_int16 Unexecuted instantiation: cbor.c:_fr_dbuff_out_int32 Unexecuted instantiation: cbor.c:_fr_dbuff_out_int64 Unexecuted instantiation: dbuff.c:_fr_dbuff_out_uint16 Unexecuted instantiation: dbuff.c:_fr_dbuff_out_uint32 Unexecuted instantiation: dbuff.c:_fr_dbuff_out_uint64 Unexecuted instantiation: dbuff.c:_fr_dbuff_out_int16 Unexecuted instantiation: dbuff.c:_fr_dbuff_out_int32 Unexecuted instantiation: dbuff.c:_fr_dbuff_out_int64 Unexecuted instantiation: decode.c:_fr_dbuff_out_uint16 Unexecuted instantiation: decode.c:_fr_dbuff_out_uint32 Unexecuted instantiation: decode.c:_fr_dbuff_out_uint64 Unexecuted instantiation: decode.c:_fr_dbuff_out_int16 Unexecuted instantiation: decode.c:_fr_dbuff_out_int32 Unexecuted instantiation: decode.c:_fr_dbuff_out_int64 Unexecuted instantiation: dict_ext.c:_fr_dbuff_out_uint16 Unexecuted instantiation: dict_ext.c:_fr_dbuff_out_uint32 Unexecuted instantiation: dict_ext.c:_fr_dbuff_out_uint64 Unexecuted instantiation: dict_ext.c:_fr_dbuff_out_int16 Unexecuted instantiation: dict_ext.c:_fr_dbuff_out_int32 Unexecuted instantiation: dict_ext.c:_fr_dbuff_out_int64 Unexecuted instantiation: dict_fixup.c:_fr_dbuff_out_uint16 Unexecuted instantiation: dict_fixup.c:_fr_dbuff_out_uint32 Unexecuted instantiation: dict_fixup.c:_fr_dbuff_out_uint64 Unexecuted instantiation: dict_fixup.c:_fr_dbuff_out_int16 Unexecuted instantiation: dict_fixup.c:_fr_dbuff_out_int32 Unexecuted instantiation: dict_fixup.c:_fr_dbuff_out_int64 Unexecuted instantiation: dict_print.c:_fr_dbuff_out_uint16 Unexecuted instantiation: dict_print.c:_fr_dbuff_out_uint32 Unexecuted instantiation: dict_print.c:_fr_dbuff_out_uint64 Unexecuted instantiation: dict_print.c:_fr_dbuff_out_int16 Unexecuted instantiation: dict_print.c:_fr_dbuff_out_int32 Unexecuted instantiation: dict_print.c:_fr_dbuff_out_int64 Unexecuted instantiation: dict_test.c:_fr_dbuff_out_uint16 Unexecuted instantiation: dict_test.c:_fr_dbuff_out_uint32 Unexecuted instantiation: dict_test.c:_fr_dbuff_out_uint64 Unexecuted instantiation: dict_test.c:_fr_dbuff_out_int16 Unexecuted instantiation: dict_test.c:_fr_dbuff_out_int32 Unexecuted instantiation: dict_test.c:_fr_dbuff_out_int64 Unexecuted instantiation: dict_tokenize.c:_fr_dbuff_out_uint16 Unexecuted instantiation: dict_tokenize.c:_fr_dbuff_out_uint32 Unexecuted instantiation: dict_tokenize.c:_fr_dbuff_out_uint64 Unexecuted instantiation: dict_tokenize.c:_fr_dbuff_out_int16 Unexecuted instantiation: dict_tokenize.c:_fr_dbuff_out_int32 Unexecuted instantiation: dict_tokenize.c:_fr_dbuff_out_int64 Unexecuted instantiation: dict_unknown.c:_fr_dbuff_out_uint16 Unexecuted instantiation: dict_unknown.c:_fr_dbuff_out_uint32 Unexecuted instantiation: dict_unknown.c:_fr_dbuff_out_uint64 Unexecuted instantiation: dict_unknown.c:_fr_dbuff_out_int16 Unexecuted instantiation: dict_unknown.c:_fr_dbuff_out_int32 Unexecuted instantiation: dict_unknown.c:_fr_dbuff_out_int64 Unexecuted instantiation: dict_util.c:_fr_dbuff_out_uint16 Unexecuted instantiation: dict_util.c:_fr_dbuff_out_uint32 Unexecuted instantiation: dict_util.c:_fr_dbuff_out_uint64 Unexecuted instantiation: dict_util.c:_fr_dbuff_out_int16 Unexecuted instantiation: dict_util.c:_fr_dbuff_out_int32 Unexecuted instantiation: dict_util.c:_fr_dbuff_out_int64 Unexecuted instantiation: dict_validate.c:_fr_dbuff_out_uint16 Unexecuted instantiation: dict_validate.c:_fr_dbuff_out_uint32 Unexecuted instantiation: dict_validate.c:_fr_dbuff_out_uint64 Unexecuted instantiation: dict_validate.c:_fr_dbuff_out_int16 Unexecuted instantiation: dict_validate.c:_fr_dbuff_out_int32 Unexecuted instantiation: dict_validate.c:_fr_dbuff_out_int64 Unexecuted instantiation: dl.c:_fr_dbuff_out_uint16 Unexecuted instantiation: dl.c:_fr_dbuff_out_uint32 Unexecuted instantiation: dl.c:_fr_dbuff_out_uint64 Unexecuted instantiation: dl.c:_fr_dbuff_out_int16 Unexecuted instantiation: dl.c:_fr_dbuff_out_int32 Unexecuted instantiation: dl.c:_fr_dbuff_out_int64 Unexecuted instantiation: dns.c:_fr_dbuff_out_uint16 Unexecuted instantiation: dns.c:_fr_dbuff_out_uint32 Unexecuted instantiation: dns.c:_fr_dbuff_out_uint64 Unexecuted instantiation: dns.c:_fr_dbuff_out_int16 Unexecuted instantiation: dns.c:_fr_dbuff_out_int32 Unexecuted instantiation: dns.c:_fr_dbuff_out_int64 Unexecuted instantiation: edit.c:_fr_dbuff_out_uint16 Unexecuted instantiation: edit.c:_fr_dbuff_out_uint32 Unexecuted instantiation: edit.c:_fr_dbuff_out_uint64 Unexecuted instantiation: edit.c:_fr_dbuff_out_int16 Unexecuted instantiation: edit.c:_fr_dbuff_out_int32 Unexecuted instantiation: edit.c:_fr_dbuff_out_int64 Unexecuted instantiation: encode.c:_fr_dbuff_out_uint16 Unexecuted instantiation: encode.c:_fr_dbuff_out_uint32 Unexecuted instantiation: encode.c:_fr_dbuff_out_uint64 Unexecuted instantiation: encode.c:_fr_dbuff_out_int16 Unexecuted instantiation: encode.c:_fr_dbuff_out_int32 Unexecuted instantiation: encode.c:_fr_dbuff_out_int64 Unexecuted instantiation: timer.c:_fr_dbuff_out_uint16 Unexecuted instantiation: timer.c:_fr_dbuff_out_uint32 Unexecuted instantiation: timer.c:_fr_dbuff_out_uint64 Unexecuted instantiation: timer.c:_fr_dbuff_out_int16 Unexecuted instantiation: timer.c:_fr_dbuff_out_int32 Unexecuted instantiation: timer.c:_fr_dbuff_out_int64 Unexecuted instantiation: file.c:_fr_dbuff_out_uint16 Unexecuted instantiation: file.c:_fr_dbuff_out_uint32 Unexecuted instantiation: file.c:_fr_dbuff_out_uint64 Unexecuted instantiation: file.c:_fr_dbuff_out_int16 Unexecuted instantiation: file.c:_fr_dbuff_out_int32 Unexecuted instantiation: file.c:_fr_dbuff_out_int64 Unexecuted instantiation: inet.c:_fr_dbuff_out_uint16 Unexecuted instantiation: inet.c:_fr_dbuff_out_uint32 Unexecuted instantiation: inet.c:_fr_dbuff_out_uint64 Unexecuted instantiation: inet.c:_fr_dbuff_out_int16 Unexecuted instantiation: inet.c:_fr_dbuff_out_int32 Unexecuted instantiation: inet.c:_fr_dbuff_out_int64 Unexecuted instantiation: iovec.c:_fr_dbuff_out_uint16 Unexecuted instantiation: iovec.c:_fr_dbuff_out_uint32 Unexecuted instantiation: iovec.c:_fr_dbuff_out_uint64 Unexecuted instantiation: iovec.c:_fr_dbuff_out_int16 Unexecuted instantiation: iovec.c:_fr_dbuff_out_int32 Unexecuted instantiation: iovec.c:_fr_dbuff_out_int64 Unexecuted instantiation: log.c:_fr_dbuff_out_uint16 Unexecuted instantiation: log.c:_fr_dbuff_out_uint32 Unexecuted instantiation: log.c:_fr_dbuff_out_uint64 Unexecuted instantiation: log.c:_fr_dbuff_out_int16 Unexecuted instantiation: log.c:_fr_dbuff_out_int32 Unexecuted instantiation: log.c:_fr_dbuff_out_int64 Unexecuted instantiation: misc.c:_fr_dbuff_out_uint16 Unexecuted instantiation: misc.c:_fr_dbuff_out_uint32 Unexecuted instantiation: misc.c:_fr_dbuff_out_uint64 Unexecuted instantiation: misc.c:_fr_dbuff_out_int16 Unexecuted instantiation: misc.c:_fr_dbuff_out_int32 Unexecuted instantiation: misc.c:_fr_dbuff_out_int64 Unexecuted instantiation: packet.c:_fr_dbuff_out_uint16 Unexecuted instantiation: packet.c:_fr_dbuff_out_uint32 Unexecuted instantiation: packet.c:_fr_dbuff_out_uint64 Unexecuted instantiation: packet.c:_fr_dbuff_out_int16 Unexecuted instantiation: packet.c:_fr_dbuff_out_int32 Unexecuted instantiation: packet.c:_fr_dbuff_out_int64 Unexecuted instantiation: pair.c:_fr_dbuff_out_uint16 Unexecuted instantiation: pair.c:_fr_dbuff_out_uint32 Unexecuted instantiation: pair.c:_fr_dbuff_out_uint64 Unexecuted instantiation: pair.c:_fr_dbuff_out_int16 Unexecuted instantiation: pair.c:_fr_dbuff_out_int32 Unexecuted instantiation: pair.c:_fr_dbuff_out_int64 Unexecuted instantiation: pair_inline.c:_fr_dbuff_out_uint16 Unexecuted instantiation: pair_inline.c:_fr_dbuff_out_uint32 Unexecuted instantiation: pair_inline.c:_fr_dbuff_out_uint64 Unexecuted instantiation: pair_inline.c:_fr_dbuff_out_int16 Unexecuted instantiation: pair_inline.c:_fr_dbuff_out_int32 Unexecuted instantiation: pair_inline.c:_fr_dbuff_out_int64 Unexecuted instantiation: pair_legacy.c:_fr_dbuff_out_uint16 Unexecuted instantiation: pair_legacy.c:_fr_dbuff_out_uint32 Unexecuted instantiation: pair_legacy.c:_fr_dbuff_out_uint64 Unexecuted instantiation: pair_legacy.c:_fr_dbuff_out_int16 Unexecuted instantiation: pair_legacy.c:_fr_dbuff_out_int32 Unexecuted instantiation: pair_legacy.c:_fr_dbuff_out_int64 Unexecuted instantiation: pair_print.c:_fr_dbuff_out_uint16 Unexecuted instantiation: pair_print.c:_fr_dbuff_out_uint32 Unexecuted instantiation: pair_print.c:_fr_dbuff_out_uint64 Unexecuted instantiation: pair_print.c:_fr_dbuff_out_int16 Unexecuted instantiation: pair_print.c:_fr_dbuff_out_int32 Unexecuted instantiation: pair_print.c:_fr_dbuff_out_int64 Unexecuted instantiation: pair_tokenize.c:_fr_dbuff_out_uint16 Unexecuted instantiation: pair_tokenize.c:_fr_dbuff_out_uint32 Unexecuted instantiation: pair_tokenize.c:_fr_dbuff_out_uint64 Unexecuted instantiation: pair_tokenize.c:_fr_dbuff_out_int16 Unexecuted instantiation: pair_tokenize.c:_fr_dbuff_out_int32 Unexecuted instantiation: pair_tokenize.c:_fr_dbuff_out_int64 Unexecuted instantiation: print.c:_fr_dbuff_out_uint16 Unexecuted instantiation: print.c:_fr_dbuff_out_uint32 Unexecuted instantiation: print.c:_fr_dbuff_out_uint64 Unexecuted instantiation: print.c:_fr_dbuff_out_int16 Unexecuted instantiation: print.c:_fr_dbuff_out_int32 Unexecuted instantiation: print.c:_fr_dbuff_out_int64 Unexecuted instantiation: proto.c:_fr_dbuff_out_uint16 Unexecuted instantiation: proto.c:_fr_dbuff_out_uint32 Unexecuted instantiation: proto.c:_fr_dbuff_out_uint64 Unexecuted instantiation: proto.c:_fr_dbuff_out_int16 Unexecuted instantiation: proto.c:_fr_dbuff_out_int32 Unexecuted instantiation: proto.c:_fr_dbuff_out_int64 Unexecuted instantiation: regex.c:_fr_dbuff_out_uint16 Unexecuted instantiation: regex.c:_fr_dbuff_out_uint32 Unexecuted instantiation: regex.c:_fr_dbuff_out_uint64 Unexecuted instantiation: regex.c:_fr_dbuff_out_int16 Unexecuted instantiation: regex.c:_fr_dbuff_out_int32 Unexecuted instantiation: regex.c:_fr_dbuff_out_int64 Unexecuted instantiation: socket.c:_fr_dbuff_out_uint16 Unexecuted instantiation: socket.c:_fr_dbuff_out_uint32 Unexecuted instantiation: socket.c:_fr_dbuff_out_uint64 Unexecuted instantiation: socket.c:_fr_dbuff_out_int16 Unexecuted instantiation: socket.c:_fr_dbuff_out_int32 Unexecuted instantiation: socket.c:_fr_dbuff_out_int64 Unexecuted instantiation: stats.c:_fr_dbuff_out_uint16 Unexecuted instantiation: stats.c:_fr_dbuff_out_uint32 Unexecuted instantiation: stats.c:_fr_dbuff_out_uint64 Unexecuted instantiation: stats.c:_fr_dbuff_out_int16 Unexecuted instantiation: stats.c:_fr_dbuff_out_int32 Unexecuted instantiation: stats.c:_fr_dbuff_out_int64 Unexecuted instantiation: struct.c:_fr_dbuff_out_uint16 Unexecuted instantiation: struct.c:_fr_dbuff_out_uint32 Unexecuted instantiation: struct.c:_fr_dbuff_out_uint64 Unexecuted instantiation: struct.c:_fr_dbuff_out_int16 Unexecuted instantiation: struct.c:_fr_dbuff_out_int32 Unexecuted instantiation: struct.c:_fr_dbuff_out_int64 Unexecuted instantiation: types.c:_fr_dbuff_out_uint16 Unexecuted instantiation: types.c:_fr_dbuff_out_uint32 Unexecuted instantiation: types.c:_fr_dbuff_out_uint64 Unexecuted instantiation: types.c:_fr_dbuff_out_int16 Unexecuted instantiation: types.c:_fr_dbuff_out_int32 Unexecuted instantiation: types.c:_fr_dbuff_out_int64 Unexecuted instantiation: uri.c:_fr_dbuff_out_uint16 Unexecuted instantiation: uri.c:_fr_dbuff_out_uint32 Unexecuted instantiation: uri.c:_fr_dbuff_out_uint64 Unexecuted instantiation: uri.c:_fr_dbuff_out_int16 Unexecuted instantiation: uri.c:_fr_dbuff_out_int32 Unexecuted instantiation: uri.c:_fr_dbuff_out_int64 Unexecuted instantiation: fuzzer.c:_fr_dbuff_out_uint16 Unexecuted instantiation: fuzzer.c:_fr_dbuff_out_uint32 Unexecuted instantiation: fuzzer.c:_fr_dbuff_out_uint64 Unexecuted instantiation: fuzzer.c:_fr_dbuff_out_int16 Unexecuted instantiation: fuzzer.c:_fr_dbuff_out_int32 Unexecuted instantiation: fuzzer.c:_fr_dbuff_out_int64 Unexecuted instantiation: base.c:_fr_dbuff_out_uint16 Unexecuted instantiation: base.c:_fr_dbuff_out_uint32 Unexecuted instantiation: base.c:_fr_dbuff_out_uint64 Unexecuted instantiation: base.c:_fr_dbuff_out_int16 Unexecuted instantiation: base.c:_fr_dbuff_out_int32 Unexecuted instantiation: base.c:_fr_dbuff_out_int64 Unexecuted instantiation: raw.c:_fr_dbuff_out_uint16 Unexecuted instantiation: raw.c:_fr_dbuff_out_uint32 Unexecuted instantiation: raw.c:_fr_dbuff_out_uint64 Unexecuted instantiation: raw.c:_fr_dbuff_out_int16 Unexecuted instantiation: raw.c:_fr_dbuff_out_int32 Unexecuted instantiation: raw.c:_fr_dbuff_out_int64 Unexecuted instantiation: udp.c:_fr_dbuff_out_uint16 Unexecuted instantiation: udp.c:_fr_dbuff_out_uint32 Unexecuted instantiation: udp.c:_fr_dbuff_out_uint64 Unexecuted instantiation: udp.c:_fr_dbuff_out_int16 Unexecuted instantiation: udp.c:_fr_dbuff_out_int32 Unexecuted instantiation: udp.c:_fr_dbuff_out_int64 Unexecuted instantiation: json.c:_fr_dbuff_out_uint16 Unexecuted instantiation: json.c:_fr_dbuff_out_uint32 Unexecuted instantiation: json.c:_fr_dbuff_out_uint64 Unexecuted instantiation: json.c:_fr_dbuff_out_int16 Unexecuted instantiation: json.c:_fr_dbuff_out_int32 Unexecuted instantiation: json.c:_fr_dbuff_out_int64 Unexecuted instantiation: jpath.c:_fr_dbuff_out_uint16 Unexecuted instantiation: jpath.c:_fr_dbuff_out_uint32 Unexecuted instantiation: jpath.c:_fr_dbuff_out_uint64 Unexecuted instantiation: jpath.c:_fr_dbuff_out_int16 Unexecuted instantiation: jpath.c:_fr_dbuff_out_int32 Unexecuted instantiation: jpath.c:_fr_dbuff_out_int64 Unexecuted instantiation: bio.c:_fr_dbuff_out_uint16 Unexecuted instantiation: bio.c:_fr_dbuff_out_uint32 Unexecuted instantiation: bio.c:_fr_dbuff_out_uint64 Unexecuted instantiation: bio.c:_fr_dbuff_out_int16 Unexecuted instantiation: bio.c:_fr_dbuff_out_int32 Unexecuted instantiation: bio.c:_fr_dbuff_out_int64 Unexecuted instantiation: cache.c:_fr_dbuff_out_uint16 Unexecuted instantiation: cache.c:_fr_dbuff_out_uint32 Unexecuted instantiation: cache.c:_fr_dbuff_out_uint64 Unexecuted instantiation: cache.c:_fr_dbuff_out_int16 Unexecuted instantiation: cache.c:_fr_dbuff_out_int32 Unexecuted instantiation: cache.c:_fr_dbuff_out_int64 Unexecuted instantiation: cert.c:_fr_dbuff_out_uint16 Unexecuted instantiation: cert.c:_fr_dbuff_out_uint32 Unexecuted instantiation: cert.c:_fr_dbuff_out_uint64 Unexecuted instantiation: cert.c:_fr_dbuff_out_int16 Unexecuted instantiation: cert.c:_fr_dbuff_out_int32 Unexecuted instantiation: cert.c:_fr_dbuff_out_int64 Unexecuted instantiation: conf.c:_fr_dbuff_out_uint16 Unexecuted instantiation: conf.c:_fr_dbuff_out_uint32 Unexecuted instantiation: conf.c:_fr_dbuff_out_uint64 Unexecuted instantiation: conf.c:_fr_dbuff_out_int16 Unexecuted instantiation: conf.c:_fr_dbuff_out_int32 Unexecuted instantiation: conf.c:_fr_dbuff_out_int64 Unexecuted instantiation: ctx.c:_fr_dbuff_out_uint16 Unexecuted instantiation: ctx.c:_fr_dbuff_out_uint32 Unexecuted instantiation: ctx.c:_fr_dbuff_out_uint64 Unexecuted instantiation: ctx.c:_fr_dbuff_out_int16 Unexecuted instantiation: ctx.c:_fr_dbuff_out_int32 Unexecuted instantiation: ctx.c:_fr_dbuff_out_int64 Unexecuted instantiation: engine.c:_fr_dbuff_out_uint16 Unexecuted instantiation: engine.c:_fr_dbuff_out_uint32 Unexecuted instantiation: engine.c:_fr_dbuff_out_uint64 Unexecuted instantiation: engine.c:_fr_dbuff_out_int16 Unexecuted instantiation: engine.c:_fr_dbuff_out_int32 Unexecuted instantiation: engine.c:_fr_dbuff_out_int64 Unexecuted instantiation: pairs.c:_fr_dbuff_out_uint16 Unexecuted instantiation: pairs.c:_fr_dbuff_out_uint32 Unexecuted instantiation: pairs.c:_fr_dbuff_out_uint64 Unexecuted instantiation: pairs.c:_fr_dbuff_out_int16 Unexecuted instantiation: pairs.c:_fr_dbuff_out_int32 Unexecuted instantiation: pairs.c:_fr_dbuff_out_int64 Unexecuted instantiation: session.c:_fr_dbuff_out_uint16 Unexecuted instantiation: session.c:_fr_dbuff_out_uint32 Unexecuted instantiation: session.c:_fr_dbuff_out_uint64 Unexecuted instantiation: session.c:_fr_dbuff_out_int16 Unexecuted instantiation: session.c:_fr_dbuff_out_int32 Unexecuted instantiation: session.c:_fr_dbuff_out_int64 Unexecuted instantiation: strerror.c:_fr_dbuff_out_uint16 Unexecuted instantiation: strerror.c:_fr_dbuff_out_uint32 Unexecuted instantiation: strerror.c:_fr_dbuff_out_uint64 Unexecuted instantiation: strerror.c:_fr_dbuff_out_int16 Unexecuted instantiation: strerror.c:_fr_dbuff_out_int32 Unexecuted instantiation: strerror.c:_fr_dbuff_out_int64 Unexecuted instantiation: utils.c:_fr_dbuff_out_uint16 Unexecuted instantiation: utils.c:_fr_dbuff_out_uint32 Unexecuted instantiation: utils.c:_fr_dbuff_out_uint64 Unexecuted instantiation: utils.c:_fr_dbuff_out_int16 Unexecuted instantiation: utils.c:_fr_dbuff_out_int32 Unexecuted instantiation: utils.c:_fr_dbuff_out_int64 Unexecuted instantiation: verify.c:_fr_dbuff_out_uint16 Unexecuted instantiation: verify.c:_fr_dbuff_out_uint32 Unexecuted instantiation: verify.c:_fr_dbuff_out_uint64 Unexecuted instantiation: verify.c:_fr_dbuff_out_int16 Unexecuted instantiation: verify.c:_fr_dbuff_out_int32 Unexecuted instantiation: verify.c:_fr_dbuff_out_int64 Unexecuted instantiation: version.c:_fr_dbuff_out_uint16 Unexecuted instantiation: version.c:_fr_dbuff_out_uint32 Unexecuted instantiation: version.c:_fr_dbuff_out_uint64 Unexecuted instantiation: version.c:_fr_dbuff_out_int16 Unexecuted instantiation: version.c:_fr_dbuff_out_int32 Unexecuted instantiation: version.c:_fr_dbuff_out_int64 Unexecuted instantiation: virtual_server.c:_fr_dbuff_out_uint16 Unexecuted instantiation: virtual_server.c:_fr_dbuff_out_uint32 Unexecuted instantiation: virtual_server.c:_fr_dbuff_out_uint64 Unexecuted instantiation: virtual_server.c:_fr_dbuff_out_int16 Unexecuted instantiation: virtual_server.c:_fr_dbuff_out_int32 Unexecuted instantiation: virtual_server.c:_fr_dbuff_out_int64 Unexecuted instantiation: list.c:_fr_dbuff_out_uint16 Unexecuted instantiation: list.c:_fr_dbuff_out_uint32 Unexecuted instantiation: list.c:_fr_dbuff_out_uint64 Unexecuted instantiation: list.c:_fr_dbuff_out_int16 Unexecuted instantiation: list.c:_fr_dbuff_out_int32 Unexecuted instantiation: list.c:_fr_dbuff_out_int64 Unexecuted instantiation: tcp.c:_fr_dbuff_out_uint16 Unexecuted instantiation: tcp.c:_fr_dbuff_out_uint32 Unexecuted instantiation: tcp.c:_fr_dbuff_out_uint64 Unexecuted instantiation: tcp.c:_fr_dbuff_out_int16 Unexecuted instantiation: tcp.c:_fr_dbuff_out_int32 Unexecuted instantiation: tcp.c:_fr_dbuff_out_int64 Unexecuted instantiation: abinary.c:_fr_dbuff_out_uint16 Unexecuted instantiation: abinary.c:_fr_dbuff_out_uint32 Unexecuted instantiation: abinary.c:_fr_dbuff_out_uint64 Unexecuted instantiation: abinary.c:_fr_dbuff_out_int16 Unexecuted instantiation: abinary.c:_fr_dbuff_out_int32 Unexecuted instantiation: abinary.c:_fr_dbuff_out_int64 Unexecuted instantiation: auth.c:_fr_dbuff_out_uint16 Unexecuted instantiation: auth.c:_fr_dbuff_out_uint32 Unexecuted instantiation: auth.c:_fr_dbuff_out_uint64 Unexecuted instantiation: auth.c:_fr_dbuff_out_int16 Unexecuted instantiation: auth.c:_fr_dbuff_out_int32 Unexecuted instantiation: auth.c:_fr_dbuff_out_int64 Unexecuted instantiation: cf_file.c:_fr_dbuff_out_uint16 Unexecuted instantiation: cf_file.c:_fr_dbuff_out_uint32 Unexecuted instantiation: cf_file.c:_fr_dbuff_out_uint64 Unexecuted instantiation: cf_file.c:_fr_dbuff_out_int16 Unexecuted instantiation: cf_file.c:_fr_dbuff_out_int32 Unexecuted instantiation: cf_file.c:_fr_dbuff_out_int64 Unexecuted instantiation: cf_parse.c:_fr_dbuff_out_uint16 Unexecuted instantiation: cf_parse.c:_fr_dbuff_out_uint32 Unexecuted instantiation: cf_parse.c:_fr_dbuff_out_uint64 Unexecuted instantiation: cf_parse.c:_fr_dbuff_out_int16 Unexecuted instantiation: cf_parse.c:_fr_dbuff_out_int32 Unexecuted instantiation: cf_parse.c:_fr_dbuff_out_int64 Unexecuted instantiation: cf_util.c:_fr_dbuff_out_uint16 Unexecuted instantiation: cf_util.c:_fr_dbuff_out_uint32 Unexecuted instantiation: cf_util.c:_fr_dbuff_out_uint64 Unexecuted instantiation: cf_util.c:_fr_dbuff_out_int16 Unexecuted instantiation: cf_util.c:_fr_dbuff_out_int32 Unexecuted instantiation: cf_util.c:_fr_dbuff_out_int64 Unexecuted instantiation: client.c:_fr_dbuff_out_uint16 Unexecuted instantiation: client.c:_fr_dbuff_out_uint32 Unexecuted instantiation: client.c:_fr_dbuff_out_uint64 Unexecuted instantiation: client.c:_fr_dbuff_out_int16 Unexecuted instantiation: client.c:_fr_dbuff_out_int32 Unexecuted instantiation: client.c:_fr_dbuff_out_int64 Unexecuted instantiation: command.c:_fr_dbuff_out_uint16 Unexecuted instantiation: command.c:_fr_dbuff_out_uint32 Unexecuted instantiation: command.c:_fr_dbuff_out_uint64 Unexecuted instantiation: command.c:_fr_dbuff_out_int16 Unexecuted instantiation: command.c:_fr_dbuff_out_int32 Unexecuted instantiation: command.c:_fr_dbuff_out_int64 Unexecuted instantiation: connection.c:_fr_dbuff_out_uint16 Unexecuted instantiation: connection.c:_fr_dbuff_out_uint32 Unexecuted instantiation: connection.c:_fr_dbuff_out_uint64 Unexecuted instantiation: connection.c:_fr_dbuff_out_int16 Unexecuted instantiation: connection.c:_fr_dbuff_out_int32 Unexecuted instantiation: connection.c:_fr_dbuff_out_int64 Unexecuted instantiation: dependency.c:_fr_dbuff_out_uint16 Unexecuted instantiation: dependency.c:_fr_dbuff_out_uint32 Unexecuted instantiation: dependency.c:_fr_dbuff_out_uint64 Unexecuted instantiation: dependency.c:_fr_dbuff_out_int16 Unexecuted instantiation: dependency.c:_fr_dbuff_out_int32 Unexecuted instantiation: dependency.c:_fr_dbuff_out_int64 Unexecuted instantiation: dl_module.c:_fr_dbuff_out_uint16 Unexecuted instantiation: dl_module.c:_fr_dbuff_out_uint32 Unexecuted instantiation: dl_module.c:_fr_dbuff_out_uint64 Unexecuted instantiation: dl_module.c:_fr_dbuff_out_int16 Unexecuted instantiation: dl_module.c:_fr_dbuff_out_int32 Unexecuted instantiation: dl_module.c:_fr_dbuff_out_int64 Unexecuted instantiation: exec.c:_fr_dbuff_out_uint16 Unexecuted instantiation: exec.c:_fr_dbuff_out_uint32 Unexecuted instantiation: exec.c:_fr_dbuff_out_uint64 Unexecuted instantiation: exec.c:_fr_dbuff_out_int16 Unexecuted instantiation: exec.c:_fr_dbuff_out_int32 Unexecuted instantiation: exec.c:_fr_dbuff_out_int64 Unexecuted instantiation: exec_legacy.c:_fr_dbuff_out_uint16 Unexecuted instantiation: exec_legacy.c:_fr_dbuff_out_uint32 Unexecuted instantiation: exec_legacy.c:_fr_dbuff_out_uint64 Unexecuted instantiation: exec_legacy.c:_fr_dbuff_out_int16 Unexecuted instantiation: exec_legacy.c:_fr_dbuff_out_int32 Unexecuted instantiation: exec_legacy.c:_fr_dbuff_out_int64 Unexecuted instantiation: exfile.c:_fr_dbuff_out_uint16 Unexecuted instantiation: exfile.c:_fr_dbuff_out_uint32 Unexecuted instantiation: exfile.c:_fr_dbuff_out_uint64 Unexecuted instantiation: exfile.c:_fr_dbuff_out_int16 Unexecuted instantiation: exfile.c:_fr_dbuff_out_int32 Unexecuted instantiation: exfile.c:_fr_dbuff_out_int64 Unexecuted instantiation: global_lib.c:_fr_dbuff_out_uint16 Unexecuted instantiation: global_lib.c:_fr_dbuff_out_uint32 Unexecuted instantiation: global_lib.c:_fr_dbuff_out_uint64 Unexecuted instantiation: global_lib.c:_fr_dbuff_out_int16 Unexecuted instantiation: global_lib.c:_fr_dbuff_out_int32 Unexecuted instantiation: global_lib.c:_fr_dbuff_out_int64 Unexecuted instantiation: main_config.c:_fr_dbuff_out_uint16 Unexecuted instantiation: main_config.c:_fr_dbuff_out_uint32 Unexecuted instantiation: main_config.c:_fr_dbuff_out_uint64 Unexecuted instantiation: main_config.c:_fr_dbuff_out_int16 Unexecuted instantiation: main_config.c:_fr_dbuff_out_int32 Unexecuted instantiation: main_config.c:_fr_dbuff_out_int64 Unexecuted instantiation: main_loop.c:_fr_dbuff_out_uint16 Unexecuted instantiation: main_loop.c:_fr_dbuff_out_uint32 Unexecuted instantiation: main_loop.c:_fr_dbuff_out_uint64 Unexecuted instantiation: main_loop.c:_fr_dbuff_out_int16 Unexecuted instantiation: main_loop.c:_fr_dbuff_out_int32 Unexecuted instantiation: main_loop.c:_fr_dbuff_out_int64 Unexecuted instantiation: map.c:_fr_dbuff_out_uint16 Unexecuted instantiation: map.c:_fr_dbuff_out_uint32 Unexecuted instantiation: map.c:_fr_dbuff_out_uint64 Unexecuted instantiation: map.c:_fr_dbuff_out_int16 Unexecuted instantiation: map.c:_fr_dbuff_out_int32 Unexecuted instantiation: map.c:_fr_dbuff_out_int64 Unexecuted instantiation: map_proc.c:_fr_dbuff_out_uint16 Unexecuted instantiation: map_proc.c:_fr_dbuff_out_uint32 Unexecuted instantiation: map_proc.c:_fr_dbuff_out_uint64 Unexecuted instantiation: map_proc.c:_fr_dbuff_out_int16 Unexecuted instantiation: map_proc.c:_fr_dbuff_out_int32 Unexecuted instantiation: map_proc.c:_fr_dbuff_out_int64 Unexecuted instantiation: module.c:_fr_dbuff_out_uint16 Unexecuted instantiation: module.c:_fr_dbuff_out_uint32 Unexecuted instantiation: module.c:_fr_dbuff_out_uint64 Unexecuted instantiation: module.c:_fr_dbuff_out_int16 Unexecuted instantiation: module.c:_fr_dbuff_out_int32 Unexecuted instantiation: module.c:_fr_dbuff_out_int64 Unexecuted instantiation: module_method.c:_fr_dbuff_out_uint16 Unexecuted instantiation: module_method.c:_fr_dbuff_out_uint32 Unexecuted instantiation: module_method.c:_fr_dbuff_out_uint64 Unexecuted instantiation: module_method.c:_fr_dbuff_out_int16 Unexecuted instantiation: module_method.c:_fr_dbuff_out_int32 Unexecuted instantiation: module_method.c:_fr_dbuff_out_int64 Unexecuted instantiation: module_rlm.c:_fr_dbuff_out_uint16 Unexecuted instantiation: module_rlm.c:_fr_dbuff_out_uint32 Unexecuted instantiation: module_rlm.c:_fr_dbuff_out_uint64 Unexecuted instantiation: module_rlm.c:_fr_dbuff_out_int16 Unexecuted instantiation: module_rlm.c:_fr_dbuff_out_int32 Unexecuted instantiation: module_rlm.c:_fr_dbuff_out_int64 Unexecuted instantiation: paircmp.c:_fr_dbuff_out_uint16 Unexecuted instantiation: paircmp.c:_fr_dbuff_out_uint32 Unexecuted instantiation: paircmp.c:_fr_dbuff_out_uint64 Unexecuted instantiation: paircmp.c:_fr_dbuff_out_int16 Unexecuted instantiation: paircmp.c:_fr_dbuff_out_int32 Unexecuted instantiation: paircmp.c:_fr_dbuff_out_int64 Unexecuted instantiation: pairmove.c:_fr_dbuff_out_uint16 Unexecuted instantiation: pairmove.c:_fr_dbuff_out_uint32 Unexecuted instantiation: pairmove.c:_fr_dbuff_out_uint64 Unexecuted instantiation: pairmove.c:_fr_dbuff_out_int16 Unexecuted instantiation: pairmove.c:_fr_dbuff_out_int32 Unexecuted instantiation: pairmove.c:_fr_dbuff_out_int64 Unexecuted instantiation: password.c:_fr_dbuff_out_uint16 Unexecuted instantiation: password.c:_fr_dbuff_out_uint32 Unexecuted instantiation: password.c:_fr_dbuff_out_uint64 Unexecuted instantiation: password.c:_fr_dbuff_out_int16 Unexecuted instantiation: password.c:_fr_dbuff_out_int32 Unexecuted instantiation: password.c:_fr_dbuff_out_int64 Unexecuted instantiation: pool.c:_fr_dbuff_out_uint16 Unexecuted instantiation: pool.c:_fr_dbuff_out_uint32 Unexecuted instantiation: pool.c:_fr_dbuff_out_uint64 Unexecuted instantiation: pool.c:_fr_dbuff_out_int16 Unexecuted instantiation: pool.c:_fr_dbuff_out_int32 Unexecuted instantiation: pool.c:_fr_dbuff_out_int64 Unexecuted instantiation: request.c:_fr_dbuff_out_uint16 Unexecuted instantiation: request.c:_fr_dbuff_out_uint32 Unexecuted instantiation: request.c:_fr_dbuff_out_uint64 Unexecuted instantiation: request.c:_fr_dbuff_out_int16 Unexecuted instantiation: request.c:_fr_dbuff_out_int32 Unexecuted instantiation: request.c:_fr_dbuff_out_int64 Unexecuted instantiation: request_data.c:_fr_dbuff_out_uint16 Unexecuted instantiation: request_data.c:_fr_dbuff_out_uint32 Unexecuted instantiation: request_data.c:_fr_dbuff_out_uint64 Unexecuted instantiation: request_data.c:_fr_dbuff_out_int16 Unexecuted instantiation: request_data.c:_fr_dbuff_out_int32 Unexecuted instantiation: request_data.c:_fr_dbuff_out_int64 Unexecuted instantiation: snmp.c:_fr_dbuff_out_uint16 Unexecuted instantiation: snmp.c:_fr_dbuff_out_uint32 Unexecuted instantiation: snmp.c:_fr_dbuff_out_uint64 Unexecuted instantiation: snmp.c:_fr_dbuff_out_int16 Unexecuted instantiation: snmp.c:_fr_dbuff_out_int32 Unexecuted instantiation: snmp.c:_fr_dbuff_out_int64 Unexecuted instantiation: state.c:_fr_dbuff_out_uint16 Unexecuted instantiation: state.c:_fr_dbuff_out_uint32 Unexecuted instantiation: state.c:_fr_dbuff_out_uint64 Unexecuted instantiation: state.c:_fr_dbuff_out_int16 Unexecuted instantiation: state.c:_fr_dbuff_out_int32 Unexecuted instantiation: state.c:_fr_dbuff_out_int64 Unexecuted instantiation: tmpl_dcursor.c:_fr_dbuff_out_uint16 Unexecuted instantiation: tmpl_dcursor.c:_fr_dbuff_out_uint32 Unexecuted instantiation: tmpl_dcursor.c:_fr_dbuff_out_uint64 Unexecuted instantiation: tmpl_dcursor.c:_fr_dbuff_out_int16 Unexecuted instantiation: tmpl_dcursor.c:_fr_dbuff_out_int32 Unexecuted instantiation: tmpl_dcursor.c:_fr_dbuff_out_int64 Unexecuted instantiation: tmpl_eval.c:_fr_dbuff_out_uint16 Unexecuted instantiation: tmpl_eval.c:_fr_dbuff_out_uint32 Unexecuted instantiation: tmpl_eval.c:_fr_dbuff_out_uint64 Unexecuted instantiation: tmpl_eval.c:_fr_dbuff_out_int16 Unexecuted instantiation: tmpl_eval.c:_fr_dbuff_out_int32 Unexecuted instantiation: tmpl_eval.c:_fr_dbuff_out_int64 Unexecuted instantiation: tmpl_tokenize.c:_fr_dbuff_out_uint16 Unexecuted instantiation: tmpl_tokenize.c:_fr_dbuff_out_uint32 Unexecuted instantiation: tmpl_tokenize.c:_fr_dbuff_out_uint64 Unexecuted instantiation: tmpl_tokenize.c:_fr_dbuff_out_int16 Unexecuted instantiation: tmpl_tokenize.c:_fr_dbuff_out_int32 Unexecuted instantiation: tmpl_tokenize.c:_fr_dbuff_out_int64 Unexecuted instantiation: trigger.c:_fr_dbuff_out_uint16 Unexecuted instantiation: trigger.c:_fr_dbuff_out_uint32 Unexecuted instantiation: trigger.c:_fr_dbuff_out_uint64 Unexecuted instantiation: trigger.c:_fr_dbuff_out_int16 Unexecuted instantiation: trigger.c:_fr_dbuff_out_int32 Unexecuted instantiation: trigger.c:_fr_dbuff_out_int64 Unexecuted instantiation: trunk.c:_fr_dbuff_out_uint16 Unexecuted instantiation: trunk.c:_fr_dbuff_out_uint32 Unexecuted instantiation: trunk.c:_fr_dbuff_out_uint64 Unexecuted instantiation: trunk.c:_fr_dbuff_out_int16 Unexecuted instantiation: trunk.c:_fr_dbuff_out_int32 Unexecuted instantiation: trunk.c:_fr_dbuff_out_int64 Unexecuted instantiation: users_file.c:_fr_dbuff_out_uint16 Unexecuted instantiation: users_file.c:_fr_dbuff_out_uint32 Unexecuted instantiation: users_file.c:_fr_dbuff_out_uint64 Unexecuted instantiation: users_file.c:_fr_dbuff_out_int16 Unexecuted instantiation: users_file.c:_fr_dbuff_out_int32 Unexecuted instantiation: users_file.c:_fr_dbuff_out_int64 Unexecuted instantiation: util.c:_fr_dbuff_out_uint16 Unexecuted instantiation: util.c:_fr_dbuff_out_uint32 Unexecuted instantiation: util.c:_fr_dbuff_out_uint64 Unexecuted instantiation: util.c:_fr_dbuff_out_int16 Unexecuted instantiation: util.c:_fr_dbuff_out_int32 Unexecuted instantiation: util.c:_fr_dbuff_out_int64 Unexecuted instantiation: virtual_servers.c:_fr_dbuff_out_uint16 Unexecuted instantiation: virtual_servers.c:_fr_dbuff_out_uint32 Unexecuted instantiation: virtual_servers.c:_fr_dbuff_out_uint64 Unexecuted instantiation: virtual_servers.c:_fr_dbuff_out_int16 Unexecuted instantiation: virtual_servers.c:_fr_dbuff_out_int32 Unexecuted instantiation: virtual_servers.c:_fr_dbuff_out_int64 Unexecuted instantiation: call.c:_fr_dbuff_out_uint16 Unexecuted instantiation: call.c:_fr_dbuff_out_uint32 Unexecuted instantiation: call.c:_fr_dbuff_out_uint64 Unexecuted instantiation: call.c:_fr_dbuff_out_int16 Unexecuted instantiation: call.c:_fr_dbuff_out_int32 Unexecuted instantiation: call.c:_fr_dbuff_out_int64 Unexecuted instantiation: call_env.c:_fr_dbuff_out_uint16 Unexecuted instantiation: call_env.c:_fr_dbuff_out_uint32 Unexecuted instantiation: call_env.c:_fr_dbuff_out_uint64 Unexecuted instantiation: call_env.c:_fr_dbuff_out_int16 Unexecuted instantiation: call_env.c:_fr_dbuff_out_int32 Unexecuted instantiation: call_env.c:_fr_dbuff_out_int64 Unexecuted instantiation: caller.c:_fr_dbuff_out_uint16 Unexecuted instantiation: caller.c:_fr_dbuff_out_uint32 Unexecuted instantiation: caller.c:_fr_dbuff_out_uint64 Unexecuted instantiation: caller.c:_fr_dbuff_out_int16 Unexecuted instantiation: caller.c:_fr_dbuff_out_int32 Unexecuted instantiation: caller.c:_fr_dbuff_out_int64 Unexecuted instantiation: catch.c:_fr_dbuff_out_uint16 Unexecuted instantiation: catch.c:_fr_dbuff_out_uint32 Unexecuted instantiation: catch.c:_fr_dbuff_out_uint64 Unexecuted instantiation: catch.c:_fr_dbuff_out_int16 Unexecuted instantiation: catch.c:_fr_dbuff_out_int32 Unexecuted instantiation: catch.c:_fr_dbuff_out_int64 Unexecuted instantiation: child_request.c:_fr_dbuff_out_uint16 Unexecuted instantiation: child_request.c:_fr_dbuff_out_uint32 Unexecuted instantiation: child_request.c:_fr_dbuff_out_uint64 Unexecuted instantiation: child_request.c:_fr_dbuff_out_int16 Unexecuted instantiation: child_request.c:_fr_dbuff_out_int32 Unexecuted instantiation: child_request.c:_fr_dbuff_out_int64 Unexecuted instantiation: compile.c:_fr_dbuff_out_uint16 Unexecuted instantiation: compile.c:_fr_dbuff_out_uint32 Unexecuted instantiation: compile.c:_fr_dbuff_out_uint64 Unexecuted instantiation: compile.c:_fr_dbuff_out_int16 Unexecuted instantiation: compile.c:_fr_dbuff_out_int32 Unexecuted instantiation: compile.c:_fr_dbuff_out_int64 Unexecuted instantiation: condition.c:_fr_dbuff_out_uint16 Unexecuted instantiation: condition.c:_fr_dbuff_out_uint32 Unexecuted instantiation: condition.c:_fr_dbuff_out_uint64 Unexecuted instantiation: condition.c:_fr_dbuff_out_int16 Unexecuted instantiation: condition.c:_fr_dbuff_out_int32 Unexecuted instantiation: condition.c:_fr_dbuff_out_int64 Unexecuted instantiation: detach.c:_fr_dbuff_out_uint16 Unexecuted instantiation: detach.c:_fr_dbuff_out_uint32 Unexecuted instantiation: detach.c:_fr_dbuff_out_uint64 Unexecuted instantiation: detach.c:_fr_dbuff_out_int16 Unexecuted instantiation: detach.c:_fr_dbuff_out_int32 Unexecuted instantiation: detach.c:_fr_dbuff_out_int64 Unexecuted instantiation: finally.c:_fr_dbuff_out_uint16 Unexecuted instantiation: finally.c:_fr_dbuff_out_uint32 Unexecuted instantiation: finally.c:_fr_dbuff_out_uint64 Unexecuted instantiation: finally.c:_fr_dbuff_out_int16 Unexecuted instantiation: finally.c:_fr_dbuff_out_int32 Unexecuted instantiation: finally.c:_fr_dbuff_out_int64 Unexecuted instantiation: foreach.c:_fr_dbuff_out_uint16 Unexecuted instantiation: foreach.c:_fr_dbuff_out_uint32 Unexecuted instantiation: foreach.c:_fr_dbuff_out_uint64 Unexecuted instantiation: foreach.c:_fr_dbuff_out_int16 Unexecuted instantiation: foreach.c:_fr_dbuff_out_int32 Unexecuted instantiation: foreach.c:_fr_dbuff_out_int64 Unexecuted instantiation: function.c:_fr_dbuff_out_uint16 Unexecuted instantiation: function.c:_fr_dbuff_out_uint32 Unexecuted instantiation: function.c:_fr_dbuff_out_uint64 Unexecuted instantiation: function.c:_fr_dbuff_out_int16 Unexecuted instantiation: function.c:_fr_dbuff_out_int32 Unexecuted instantiation: function.c:_fr_dbuff_out_int64 Unexecuted instantiation: group.c:_fr_dbuff_out_uint16 Unexecuted instantiation: group.c:_fr_dbuff_out_uint32 Unexecuted instantiation: group.c:_fr_dbuff_out_uint64 Unexecuted instantiation: group.c:_fr_dbuff_out_int16 Unexecuted instantiation: group.c:_fr_dbuff_out_int32 Unexecuted instantiation: group.c:_fr_dbuff_out_int64 Unexecuted instantiation: interpret.c:_fr_dbuff_out_uint16 Unexecuted instantiation: interpret.c:_fr_dbuff_out_uint32 Unexecuted instantiation: interpret.c:_fr_dbuff_out_uint64 Unexecuted instantiation: interpret.c:_fr_dbuff_out_int16 Unexecuted instantiation: interpret.c:_fr_dbuff_out_int32 Unexecuted instantiation: interpret.c:_fr_dbuff_out_int64 Unexecuted instantiation: interpret_synchronous.c:_fr_dbuff_out_uint16 Unexecuted instantiation: interpret_synchronous.c:_fr_dbuff_out_uint32 Unexecuted instantiation: interpret_synchronous.c:_fr_dbuff_out_uint64 Unexecuted instantiation: interpret_synchronous.c:_fr_dbuff_out_int16 Unexecuted instantiation: interpret_synchronous.c:_fr_dbuff_out_int32 Unexecuted instantiation: interpret_synchronous.c:_fr_dbuff_out_int64 Unexecuted instantiation: io.c:_fr_dbuff_out_uint16 Unexecuted instantiation: io.c:_fr_dbuff_out_uint32 Unexecuted instantiation: io.c:_fr_dbuff_out_uint64 Unexecuted instantiation: io.c:_fr_dbuff_out_int16 Unexecuted instantiation: io.c:_fr_dbuff_out_int32 Unexecuted instantiation: io.c:_fr_dbuff_out_int64 Unexecuted instantiation: limit.c:_fr_dbuff_out_uint16 Unexecuted instantiation: limit.c:_fr_dbuff_out_uint32 Unexecuted instantiation: limit.c:_fr_dbuff_out_uint64 Unexecuted instantiation: limit.c:_fr_dbuff_out_int16 Unexecuted instantiation: limit.c:_fr_dbuff_out_int32 Unexecuted instantiation: limit.c:_fr_dbuff_out_int64 Unexecuted instantiation: load_balance.c:_fr_dbuff_out_uint16 Unexecuted instantiation: load_balance.c:_fr_dbuff_out_uint32 Unexecuted instantiation: load_balance.c:_fr_dbuff_out_uint64 Unexecuted instantiation: load_balance.c:_fr_dbuff_out_int16 Unexecuted instantiation: load_balance.c:_fr_dbuff_out_int32 Unexecuted instantiation: load_balance.c:_fr_dbuff_out_int64 Unexecuted instantiation: map_builtin.c:_fr_dbuff_out_uint16 Unexecuted instantiation: map_builtin.c:_fr_dbuff_out_uint32 Unexecuted instantiation: map_builtin.c:_fr_dbuff_out_uint64 Unexecuted instantiation: map_builtin.c:_fr_dbuff_out_int16 Unexecuted instantiation: map_builtin.c:_fr_dbuff_out_int32 Unexecuted instantiation: map_builtin.c:_fr_dbuff_out_int64 Unexecuted instantiation: parallel.c:_fr_dbuff_out_uint16 Unexecuted instantiation: parallel.c:_fr_dbuff_out_uint32 Unexecuted instantiation: parallel.c:_fr_dbuff_out_uint64 Unexecuted instantiation: parallel.c:_fr_dbuff_out_int16 Unexecuted instantiation: parallel.c:_fr_dbuff_out_int32 Unexecuted instantiation: parallel.c:_fr_dbuff_out_int64 Unexecuted instantiation: return.c:_fr_dbuff_out_uint16 Unexecuted instantiation: return.c:_fr_dbuff_out_uint32 Unexecuted instantiation: return.c:_fr_dbuff_out_uint64 Unexecuted instantiation: return.c:_fr_dbuff_out_int16 Unexecuted instantiation: return.c:_fr_dbuff_out_int32 Unexecuted instantiation: return.c:_fr_dbuff_out_int64 Unexecuted instantiation: subrequest.c:_fr_dbuff_out_uint16 Unexecuted instantiation: subrequest.c:_fr_dbuff_out_uint32 Unexecuted instantiation: subrequest.c:_fr_dbuff_out_uint64 Unexecuted instantiation: subrequest.c:_fr_dbuff_out_int16 Unexecuted instantiation: subrequest.c:_fr_dbuff_out_int32 Unexecuted instantiation: subrequest.c:_fr_dbuff_out_int64 Unexecuted instantiation: switch.c:_fr_dbuff_out_uint16 Unexecuted instantiation: switch.c:_fr_dbuff_out_uint32 Unexecuted instantiation: switch.c:_fr_dbuff_out_uint64 Unexecuted instantiation: switch.c:_fr_dbuff_out_int16 Unexecuted instantiation: switch.c:_fr_dbuff_out_int32 Unexecuted instantiation: switch.c:_fr_dbuff_out_int64 Unexecuted instantiation: timeout.c:_fr_dbuff_out_uint16 Unexecuted instantiation: timeout.c:_fr_dbuff_out_uint32 Unexecuted instantiation: timeout.c:_fr_dbuff_out_uint64 Unexecuted instantiation: timeout.c:_fr_dbuff_out_int16 Unexecuted instantiation: timeout.c:_fr_dbuff_out_int32 Unexecuted instantiation: timeout.c:_fr_dbuff_out_int64 Unexecuted instantiation: tmpl.c:_fr_dbuff_out_uint16 Unexecuted instantiation: tmpl.c:_fr_dbuff_out_uint32 Unexecuted instantiation: tmpl.c:_fr_dbuff_out_uint64 Unexecuted instantiation: tmpl.c:_fr_dbuff_out_int16 Unexecuted instantiation: tmpl.c:_fr_dbuff_out_int32 Unexecuted instantiation: tmpl.c:_fr_dbuff_out_int64 Unexecuted instantiation: try.c:_fr_dbuff_out_uint16 Unexecuted instantiation: try.c:_fr_dbuff_out_uint32 Unexecuted instantiation: try.c:_fr_dbuff_out_uint64 Unexecuted instantiation: try.c:_fr_dbuff_out_int16 Unexecuted instantiation: try.c:_fr_dbuff_out_int32 Unexecuted instantiation: try.c:_fr_dbuff_out_int64 Unexecuted instantiation: transaction.c:_fr_dbuff_out_uint16 Unexecuted instantiation: transaction.c:_fr_dbuff_out_uint32 Unexecuted instantiation: transaction.c:_fr_dbuff_out_uint64 Unexecuted instantiation: transaction.c:_fr_dbuff_out_int16 Unexecuted instantiation: transaction.c:_fr_dbuff_out_int32 Unexecuted instantiation: transaction.c:_fr_dbuff_out_int64 Unexecuted instantiation: xlat.c:_fr_dbuff_out_uint16 Unexecuted instantiation: xlat.c:_fr_dbuff_out_uint32 Unexecuted instantiation: xlat.c:_fr_dbuff_out_uint64 Unexecuted instantiation: xlat.c:_fr_dbuff_out_int16 Unexecuted instantiation: xlat.c:_fr_dbuff_out_int32 Unexecuted instantiation: xlat.c:_fr_dbuff_out_int64 Unexecuted instantiation: xlat_alloc.c:_fr_dbuff_out_uint16 Unexecuted instantiation: xlat_alloc.c:_fr_dbuff_out_uint32 Unexecuted instantiation: xlat_alloc.c:_fr_dbuff_out_uint64 Unexecuted instantiation: xlat_alloc.c:_fr_dbuff_out_int16 Unexecuted instantiation: xlat_alloc.c:_fr_dbuff_out_int32 Unexecuted instantiation: xlat_alloc.c:_fr_dbuff_out_int64 Unexecuted instantiation: xlat_builtin.c:_fr_dbuff_out_uint16 Unexecuted instantiation: xlat_builtin.c:_fr_dbuff_out_uint32 Unexecuted instantiation: xlat_builtin.c:_fr_dbuff_out_uint64 Unexecuted instantiation: xlat_builtin.c:_fr_dbuff_out_int16 Unexecuted instantiation: xlat_builtin.c:_fr_dbuff_out_int32 Unexecuted instantiation: xlat_builtin.c:_fr_dbuff_out_int64 Unexecuted instantiation: xlat_eval.c:_fr_dbuff_out_uint16 Unexecuted instantiation: xlat_eval.c:_fr_dbuff_out_uint32 Unexecuted instantiation: xlat_eval.c:_fr_dbuff_out_uint64 Unexecuted instantiation: xlat_eval.c:_fr_dbuff_out_int16 Unexecuted instantiation: xlat_eval.c:_fr_dbuff_out_int32 Unexecuted instantiation: xlat_eval.c:_fr_dbuff_out_int64 Unexecuted instantiation: xlat_expr.c:_fr_dbuff_out_uint16 Unexecuted instantiation: xlat_expr.c:_fr_dbuff_out_uint32 Unexecuted instantiation: xlat_expr.c:_fr_dbuff_out_uint64 Unexecuted instantiation: xlat_expr.c:_fr_dbuff_out_int16 Unexecuted instantiation: xlat_expr.c:_fr_dbuff_out_int32 Unexecuted instantiation: xlat_expr.c:_fr_dbuff_out_int64 Unexecuted instantiation: xlat_func.c:_fr_dbuff_out_uint16 Unexecuted instantiation: xlat_func.c:_fr_dbuff_out_uint32 Unexecuted instantiation: xlat_func.c:_fr_dbuff_out_uint64 Unexecuted instantiation: xlat_func.c:_fr_dbuff_out_int16 Unexecuted instantiation: xlat_func.c:_fr_dbuff_out_int32 Unexecuted instantiation: xlat_func.c:_fr_dbuff_out_int64 Unexecuted instantiation: xlat_inst.c:_fr_dbuff_out_uint16 Unexecuted instantiation: xlat_inst.c:_fr_dbuff_out_uint32 Unexecuted instantiation: xlat_inst.c:_fr_dbuff_out_uint64 Unexecuted instantiation: xlat_inst.c:_fr_dbuff_out_int16 Unexecuted instantiation: xlat_inst.c:_fr_dbuff_out_int32 Unexecuted instantiation: xlat_inst.c:_fr_dbuff_out_int64 Unexecuted instantiation: xlat_pair.c:_fr_dbuff_out_uint16 Unexecuted instantiation: xlat_pair.c:_fr_dbuff_out_uint32 Unexecuted instantiation: xlat_pair.c:_fr_dbuff_out_uint64 Unexecuted instantiation: xlat_pair.c:_fr_dbuff_out_int16 Unexecuted instantiation: xlat_pair.c:_fr_dbuff_out_int32 Unexecuted instantiation: xlat_pair.c:_fr_dbuff_out_int64 Unexecuted instantiation: xlat_purify.c:_fr_dbuff_out_uint16 Unexecuted instantiation: xlat_purify.c:_fr_dbuff_out_uint32 Unexecuted instantiation: xlat_purify.c:_fr_dbuff_out_uint64 Unexecuted instantiation: xlat_purify.c:_fr_dbuff_out_int16 Unexecuted instantiation: xlat_purify.c:_fr_dbuff_out_int32 Unexecuted instantiation: xlat_purify.c:_fr_dbuff_out_int64 Unexecuted instantiation: xlat_redundant.c:_fr_dbuff_out_uint16 Unexecuted instantiation: xlat_redundant.c:_fr_dbuff_out_uint32 Unexecuted instantiation: xlat_redundant.c:_fr_dbuff_out_uint64 Unexecuted instantiation: xlat_redundant.c:_fr_dbuff_out_int16 Unexecuted instantiation: xlat_redundant.c:_fr_dbuff_out_int32 Unexecuted instantiation: xlat_redundant.c:_fr_dbuff_out_int64 Unexecuted instantiation: xlat_tokenize.c:_fr_dbuff_out_uint16 Unexecuted instantiation: xlat_tokenize.c:_fr_dbuff_out_uint32 Unexecuted instantiation: xlat_tokenize.c:_fr_dbuff_out_uint64 Unexecuted instantiation: xlat_tokenize.c:_fr_dbuff_out_int16 Unexecuted instantiation: xlat_tokenize.c:_fr_dbuff_out_int32 Unexecuted instantiation: xlat_tokenize.c:_fr_dbuff_out_int64 Unexecuted instantiation: app_io.c:_fr_dbuff_out_uint16 Unexecuted instantiation: app_io.c:_fr_dbuff_out_uint32 Unexecuted instantiation: app_io.c:_fr_dbuff_out_uint64 Unexecuted instantiation: app_io.c:_fr_dbuff_out_int16 Unexecuted instantiation: app_io.c:_fr_dbuff_out_int32 Unexecuted instantiation: app_io.c:_fr_dbuff_out_int64 Unexecuted instantiation: channel.c:_fr_dbuff_out_uint16 Unexecuted instantiation: channel.c:_fr_dbuff_out_uint32 Unexecuted instantiation: channel.c:_fr_dbuff_out_uint64 Unexecuted instantiation: channel.c:_fr_dbuff_out_int16 Unexecuted instantiation: channel.c:_fr_dbuff_out_int32 Unexecuted instantiation: channel.c:_fr_dbuff_out_int64 Unexecuted instantiation: coord.c:_fr_dbuff_out_uint16 Unexecuted instantiation: coord.c:_fr_dbuff_out_uint32 Unexecuted instantiation: coord.c:_fr_dbuff_out_uint64 Unexecuted instantiation: coord.c:_fr_dbuff_out_int16 Unexecuted instantiation: coord.c:_fr_dbuff_out_int32 Unexecuted instantiation: coord.c:_fr_dbuff_out_int64 Unexecuted instantiation: coord_pair.c:_fr_dbuff_out_uint16 Unexecuted instantiation: coord_pair.c:_fr_dbuff_out_uint32 Unexecuted instantiation: coord_pair.c:_fr_dbuff_out_uint64 Unexecuted instantiation: coord_pair.c:_fr_dbuff_out_int16 Unexecuted instantiation: coord_pair.c:_fr_dbuff_out_int32 Unexecuted instantiation: coord_pair.c:_fr_dbuff_out_int64 Unexecuted instantiation: master.c:_fr_dbuff_out_uint16 Unexecuted instantiation: master.c:_fr_dbuff_out_uint32 Unexecuted instantiation: master.c:_fr_dbuff_out_uint64 Unexecuted instantiation: master.c:_fr_dbuff_out_int16 Unexecuted instantiation: master.c:_fr_dbuff_out_int32 Unexecuted instantiation: master.c:_fr_dbuff_out_int64 Unexecuted instantiation: network.c:_fr_dbuff_out_uint16 Unexecuted instantiation: network.c:_fr_dbuff_out_uint32 Unexecuted instantiation: network.c:_fr_dbuff_out_uint64 Unexecuted instantiation: network.c:_fr_dbuff_out_int16 Unexecuted instantiation: network.c:_fr_dbuff_out_int32 Unexecuted instantiation: network.c:_fr_dbuff_out_int64 Unexecuted instantiation: schedule.c:_fr_dbuff_out_uint16 Unexecuted instantiation: schedule.c:_fr_dbuff_out_uint32 Unexecuted instantiation: schedule.c:_fr_dbuff_out_uint64 Unexecuted instantiation: schedule.c:_fr_dbuff_out_int16 Unexecuted instantiation: schedule.c:_fr_dbuff_out_int32 Unexecuted instantiation: schedule.c:_fr_dbuff_out_int64 Unexecuted instantiation: thread.c:_fr_dbuff_out_uint16 Unexecuted instantiation: thread.c:_fr_dbuff_out_uint32 Unexecuted instantiation: thread.c:_fr_dbuff_out_uint64 Unexecuted instantiation: thread.c:_fr_dbuff_out_int16 Unexecuted instantiation: thread.c:_fr_dbuff_out_int32 Unexecuted instantiation: thread.c:_fr_dbuff_out_int64 Unexecuted instantiation: worker.c:_fr_dbuff_out_uint16 Unexecuted instantiation: worker.c:_fr_dbuff_out_uint32 Unexecuted instantiation: worker.c:_fr_dbuff_out_uint64 Unexecuted instantiation: worker.c:_fr_dbuff_out_int16 Unexecuted instantiation: worker.c:_fr_dbuff_out_int32 Unexecuted instantiation: worker.c:_fr_dbuff_out_int64 Unexecuted instantiation: vmps.c:_fr_dbuff_out_uint16 Unexecuted instantiation: vmps.c:_fr_dbuff_out_uint32 Unexecuted instantiation: vmps.c:_fr_dbuff_out_uint64 Unexecuted instantiation: vmps.c:_fr_dbuff_out_int16 Unexecuted instantiation: vmps.c:_fr_dbuff_out_int32 Unexecuted instantiation: vmps.c:_fr_dbuff_out_int64 |
1775 | | |
1776 | 111k | FR_DBUFF_OUT_DEF(uint16) Unexecuted instantiation: cbor.c:_fr_dbuff_out_uint16 Unexecuted instantiation: value.c:_fr_dbuff_out_uint16 |
1777 | 17.4k | FR_DBUFF_OUT_DEF(uint32) Unexecuted instantiation: cbor.c:_fr_dbuff_out_uint32 Unexecuted instantiation: value.c:_fr_dbuff_out_uint32 |
1778 | 4.05k | FR_DBUFF_OUT_DEF(uint64) Unexecuted instantiation: cbor.c:_fr_dbuff_out_uint64 Unexecuted instantiation: value.c:_fr_dbuff_out_uint64 |
1779 | 194 | FR_DBUFF_OUT_DEF(int16) |
1780 | 265 | FR_DBUFF_OUT_DEF(int32) |
1781 | 194 | FR_DBUFF_OUT_DEF(int64) |
1782 | | |
1783 | | #define FR_DBUFF_OUT_DEF_NO_SWAP(_type) \ |
1784 | 1.95M | static inline ssize_t _fr_dbuff_out_##_type(_type##_t *out, uint8_t **pos_p, fr_dbuff_t *in) \ |
1785 | 1.95M | { \ |
1786 | 1.95M | fr_assert(out); \ |
1787 | 1.95M | FR_DBUFF_EXTEND_LOWAT_OR_RETURN(in, sizeof(_type##_t)); \ |
1788 | 1.95M | *out = **pos_p; \ |
1789 | 1.95M | return _fr_dbuff_set(pos_p, in, (*pos_p) + sizeof(_type##_t)); \ |
1790 | 1.95M | } Unexecuted instantiation: fuzzer_dhcpv6.c:_fr_dbuff_out_uint8 Unexecuted instantiation: fuzzer_dhcpv6.c:_fr_dbuff_out_int8 Unexecuted instantiation: fuzzer_util.c:_fr_dbuff_out_uint8 Unexecuted instantiation: fuzzer_util.c:_fr_dbuff_out_int8 Unexecuted instantiation: fuzzer_dhcpv4.c:_fr_dbuff_out_uint8 Unexecuted instantiation: fuzzer_dhcpv4.c:_fr_dbuff_out_int8 Unexecuted instantiation: fuzzer_cbor.c:_fr_dbuff_out_uint8 Unexecuted instantiation: fuzzer_cbor.c:_fr_dbuff_out_int8 Unexecuted instantiation: fuzzer_der.c:_fr_dbuff_out_uint8 Unexecuted instantiation: fuzzer_der.c:_fr_dbuff_out_int8 Unexecuted instantiation: fuzzer_dns.c:_fr_dbuff_out_uint8 Unexecuted instantiation: fuzzer_dns.c:_fr_dbuff_out_int8 Unexecuted instantiation: fuzzer_tacacs.c:_fr_dbuff_out_uint8 Unexecuted instantiation: fuzzer_tacacs.c:_fr_dbuff_out_int8 Unexecuted instantiation: fuzzer_bfd.c:_fr_dbuff_out_uint8 Unexecuted instantiation: fuzzer_bfd.c:_fr_dbuff_out_int8 Unexecuted instantiation: fuzzer_radius.c:_fr_dbuff_out_uint8 Unexecuted instantiation: fuzzer_radius.c:_fr_dbuff_out_int8 Unexecuted instantiation: fuzzer_tftp.c:_fr_dbuff_out_uint8 Unexecuted instantiation: fuzzer_tftp.c:_fr_dbuff_out_int8 Unexecuted instantiation: fuzzer_vmps.c:_fr_dbuff_out_uint8 Unexecuted instantiation: fuzzer_vmps.c:_fr_dbuff_out_int8 Unexecuted instantiation: base16.c:_fr_dbuff_out_uint8 Unexecuted instantiation: base16.c:_fr_dbuff_out_int8 Unexecuted instantiation: base32.c:_fr_dbuff_out_uint8 Unexecuted instantiation: base32.c:_fr_dbuff_out_int8 Unexecuted instantiation: base64.c:_fr_dbuff_out_uint8 Unexecuted instantiation: base64.c:_fr_dbuff_out_int8 Unexecuted instantiation: calc.c:_fr_dbuff_out_uint8 Unexecuted instantiation: calc.c:_fr_dbuff_out_int8 Unexecuted instantiation: cbor.c:_fr_dbuff_out_int8 Unexecuted instantiation: dbuff.c:_fr_dbuff_out_uint8 Unexecuted instantiation: dbuff.c:_fr_dbuff_out_int8 Unexecuted instantiation: decode.c:_fr_dbuff_out_int8 Unexecuted instantiation: dict_ext.c:_fr_dbuff_out_uint8 Unexecuted instantiation: dict_ext.c:_fr_dbuff_out_int8 Unexecuted instantiation: dict_fixup.c:_fr_dbuff_out_uint8 Unexecuted instantiation: dict_fixup.c:_fr_dbuff_out_int8 Unexecuted instantiation: dict_print.c:_fr_dbuff_out_uint8 Unexecuted instantiation: dict_print.c:_fr_dbuff_out_int8 Unexecuted instantiation: dict_test.c:_fr_dbuff_out_uint8 Unexecuted instantiation: dict_test.c:_fr_dbuff_out_int8 Unexecuted instantiation: dict_tokenize.c:_fr_dbuff_out_uint8 Unexecuted instantiation: dict_tokenize.c:_fr_dbuff_out_int8 Unexecuted instantiation: dict_unknown.c:_fr_dbuff_out_uint8 Unexecuted instantiation: dict_unknown.c:_fr_dbuff_out_int8 Unexecuted instantiation: dict_util.c:_fr_dbuff_out_uint8 Unexecuted instantiation: dict_util.c:_fr_dbuff_out_int8 Unexecuted instantiation: dict_validate.c:_fr_dbuff_out_uint8 Unexecuted instantiation: dict_validate.c:_fr_dbuff_out_int8 Unexecuted instantiation: dl.c:_fr_dbuff_out_uint8 Unexecuted instantiation: dl.c:_fr_dbuff_out_int8 Unexecuted instantiation: dns.c:_fr_dbuff_out_uint8 Unexecuted instantiation: dns.c:_fr_dbuff_out_int8 Unexecuted instantiation: edit.c:_fr_dbuff_out_uint8 Unexecuted instantiation: edit.c:_fr_dbuff_out_int8 Unexecuted instantiation: encode.c:_fr_dbuff_out_uint8 Unexecuted instantiation: encode.c:_fr_dbuff_out_int8 Unexecuted instantiation: timer.c:_fr_dbuff_out_uint8 Unexecuted instantiation: timer.c:_fr_dbuff_out_int8 Unexecuted instantiation: file.c:_fr_dbuff_out_uint8 Unexecuted instantiation: file.c:_fr_dbuff_out_int8 Unexecuted instantiation: inet.c:_fr_dbuff_out_uint8 Unexecuted instantiation: inet.c:_fr_dbuff_out_int8 Unexecuted instantiation: iovec.c:_fr_dbuff_out_uint8 Unexecuted instantiation: iovec.c:_fr_dbuff_out_int8 Unexecuted instantiation: log.c:_fr_dbuff_out_uint8 Unexecuted instantiation: log.c:_fr_dbuff_out_int8 Unexecuted instantiation: misc.c:_fr_dbuff_out_uint8 Unexecuted instantiation: misc.c:_fr_dbuff_out_int8 Unexecuted instantiation: packet.c:_fr_dbuff_out_uint8 Unexecuted instantiation: packet.c:_fr_dbuff_out_int8 Unexecuted instantiation: pair.c:_fr_dbuff_out_uint8 Unexecuted instantiation: pair.c:_fr_dbuff_out_int8 Unexecuted instantiation: pair_inline.c:_fr_dbuff_out_uint8 Unexecuted instantiation: pair_inline.c:_fr_dbuff_out_int8 Unexecuted instantiation: pair_legacy.c:_fr_dbuff_out_uint8 Unexecuted instantiation: pair_legacy.c:_fr_dbuff_out_int8 Unexecuted instantiation: pair_print.c:_fr_dbuff_out_uint8 Unexecuted instantiation: pair_print.c:_fr_dbuff_out_int8 Unexecuted instantiation: pair_tokenize.c:_fr_dbuff_out_uint8 Unexecuted instantiation: pair_tokenize.c:_fr_dbuff_out_int8 Unexecuted instantiation: print.c:_fr_dbuff_out_uint8 Unexecuted instantiation: print.c:_fr_dbuff_out_int8 Unexecuted instantiation: proto.c:_fr_dbuff_out_uint8 Unexecuted instantiation: proto.c:_fr_dbuff_out_int8 Unexecuted instantiation: regex.c:_fr_dbuff_out_uint8 Unexecuted instantiation: regex.c:_fr_dbuff_out_int8 Unexecuted instantiation: socket.c:_fr_dbuff_out_uint8 Unexecuted instantiation: socket.c:_fr_dbuff_out_int8 Unexecuted instantiation: stats.c:_fr_dbuff_out_uint8 Unexecuted instantiation: stats.c:_fr_dbuff_out_int8 Unexecuted instantiation: struct.c:_fr_dbuff_out_uint8 Unexecuted instantiation: struct.c:_fr_dbuff_out_int8 Unexecuted instantiation: types.c:_fr_dbuff_out_uint8 Unexecuted instantiation: types.c:_fr_dbuff_out_int8 Unexecuted instantiation: uri.c:_fr_dbuff_out_uint8 Unexecuted instantiation: uri.c:_fr_dbuff_out_int8 Unexecuted instantiation: fuzzer.c:_fr_dbuff_out_uint8 Unexecuted instantiation: fuzzer.c:_fr_dbuff_out_int8 Unexecuted instantiation: base.c:_fr_dbuff_out_int8 Unexecuted instantiation: raw.c:_fr_dbuff_out_uint8 Unexecuted instantiation: raw.c:_fr_dbuff_out_int8 Unexecuted instantiation: udp.c:_fr_dbuff_out_uint8 Unexecuted instantiation: udp.c:_fr_dbuff_out_int8 Unexecuted instantiation: json.c:_fr_dbuff_out_uint8 Unexecuted instantiation: json.c:_fr_dbuff_out_int8 Unexecuted instantiation: jpath.c:_fr_dbuff_out_uint8 Unexecuted instantiation: jpath.c:_fr_dbuff_out_int8 Unexecuted instantiation: bio.c:_fr_dbuff_out_uint8 Unexecuted instantiation: bio.c:_fr_dbuff_out_int8 Unexecuted instantiation: cache.c:_fr_dbuff_out_uint8 Unexecuted instantiation: cache.c:_fr_dbuff_out_int8 Unexecuted instantiation: cert.c:_fr_dbuff_out_uint8 Unexecuted instantiation: cert.c:_fr_dbuff_out_int8 Unexecuted instantiation: conf.c:_fr_dbuff_out_uint8 Unexecuted instantiation: conf.c:_fr_dbuff_out_int8 Unexecuted instantiation: ctx.c:_fr_dbuff_out_uint8 Unexecuted instantiation: ctx.c:_fr_dbuff_out_int8 Unexecuted instantiation: engine.c:_fr_dbuff_out_uint8 Unexecuted instantiation: engine.c:_fr_dbuff_out_int8 Unexecuted instantiation: pairs.c:_fr_dbuff_out_uint8 Unexecuted instantiation: pairs.c:_fr_dbuff_out_int8 Unexecuted instantiation: session.c:_fr_dbuff_out_uint8 Unexecuted instantiation: session.c:_fr_dbuff_out_int8 Unexecuted instantiation: strerror.c:_fr_dbuff_out_uint8 Unexecuted instantiation: strerror.c:_fr_dbuff_out_int8 Unexecuted instantiation: utils.c:_fr_dbuff_out_uint8 Unexecuted instantiation: utils.c:_fr_dbuff_out_int8 Unexecuted instantiation: verify.c:_fr_dbuff_out_uint8 Unexecuted instantiation: verify.c:_fr_dbuff_out_int8 Unexecuted instantiation: version.c:_fr_dbuff_out_uint8 Unexecuted instantiation: version.c:_fr_dbuff_out_int8 Unexecuted instantiation: virtual_server.c:_fr_dbuff_out_uint8 Unexecuted instantiation: virtual_server.c:_fr_dbuff_out_int8 Unexecuted instantiation: list.c:_fr_dbuff_out_uint8 Unexecuted instantiation: list.c:_fr_dbuff_out_int8 Unexecuted instantiation: tcp.c:_fr_dbuff_out_uint8 Unexecuted instantiation: tcp.c:_fr_dbuff_out_int8 Unexecuted instantiation: abinary.c:_fr_dbuff_out_uint8 Unexecuted instantiation: abinary.c:_fr_dbuff_out_int8 Unexecuted instantiation: auth.c:_fr_dbuff_out_uint8 Unexecuted instantiation: auth.c:_fr_dbuff_out_int8 Unexecuted instantiation: cf_file.c:_fr_dbuff_out_uint8 Unexecuted instantiation: cf_file.c:_fr_dbuff_out_int8 Unexecuted instantiation: cf_parse.c:_fr_dbuff_out_uint8 Unexecuted instantiation: cf_parse.c:_fr_dbuff_out_int8 Unexecuted instantiation: cf_util.c:_fr_dbuff_out_uint8 Unexecuted instantiation: cf_util.c:_fr_dbuff_out_int8 Unexecuted instantiation: client.c:_fr_dbuff_out_uint8 Unexecuted instantiation: client.c:_fr_dbuff_out_int8 Unexecuted instantiation: command.c:_fr_dbuff_out_uint8 Unexecuted instantiation: command.c:_fr_dbuff_out_int8 Unexecuted instantiation: connection.c:_fr_dbuff_out_uint8 Unexecuted instantiation: connection.c:_fr_dbuff_out_int8 Unexecuted instantiation: dependency.c:_fr_dbuff_out_uint8 Unexecuted instantiation: dependency.c:_fr_dbuff_out_int8 Unexecuted instantiation: dl_module.c:_fr_dbuff_out_uint8 Unexecuted instantiation: dl_module.c:_fr_dbuff_out_int8 Unexecuted instantiation: exec.c:_fr_dbuff_out_uint8 Unexecuted instantiation: exec.c:_fr_dbuff_out_int8 Unexecuted instantiation: exec_legacy.c:_fr_dbuff_out_uint8 Unexecuted instantiation: exec_legacy.c:_fr_dbuff_out_int8 Unexecuted instantiation: exfile.c:_fr_dbuff_out_uint8 Unexecuted instantiation: exfile.c:_fr_dbuff_out_int8 Unexecuted instantiation: global_lib.c:_fr_dbuff_out_uint8 Unexecuted instantiation: global_lib.c:_fr_dbuff_out_int8 Unexecuted instantiation: main_config.c:_fr_dbuff_out_uint8 Unexecuted instantiation: main_config.c:_fr_dbuff_out_int8 Unexecuted instantiation: main_loop.c:_fr_dbuff_out_uint8 Unexecuted instantiation: main_loop.c:_fr_dbuff_out_int8 Unexecuted instantiation: map.c:_fr_dbuff_out_uint8 Unexecuted instantiation: map.c:_fr_dbuff_out_int8 Unexecuted instantiation: map_proc.c:_fr_dbuff_out_uint8 Unexecuted instantiation: map_proc.c:_fr_dbuff_out_int8 Unexecuted instantiation: module.c:_fr_dbuff_out_uint8 Unexecuted instantiation: module.c:_fr_dbuff_out_int8 Unexecuted instantiation: module_method.c:_fr_dbuff_out_uint8 Unexecuted instantiation: module_method.c:_fr_dbuff_out_int8 Unexecuted instantiation: module_rlm.c:_fr_dbuff_out_uint8 Unexecuted instantiation: module_rlm.c:_fr_dbuff_out_int8 Unexecuted instantiation: paircmp.c:_fr_dbuff_out_uint8 Unexecuted instantiation: paircmp.c:_fr_dbuff_out_int8 Unexecuted instantiation: pairmove.c:_fr_dbuff_out_uint8 Unexecuted instantiation: pairmove.c:_fr_dbuff_out_int8 Unexecuted instantiation: password.c:_fr_dbuff_out_uint8 Unexecuted instantiation: password.c:_fr_dbuff_out_int8 Unexecuted instantiation: pool.c:_fr_dbuff_out_uint8 Unexecuted instantiation: pool.c:_fr_dbuff_out_int8 Unexecuted instantiation: request.c:_fr_dbuff_out_uint8 Unexecuted instantiation: request.c:_fr_dbuff_out_int8 Unexecuted instantiation: request_data.c:_fr_dbuff_out_uint8 Unexecuted instantiation: request_data.c:_fr_dbuff_out_int8 Unexecuted instantiation: snmp.c:_fr_dbuff_out_uint8 Unexecuted instantiation: snmp.c:_fr_dbuff_out_int8 Unexecuted instantiation: state.c:_fr_dbuff_out_uint8 Unexecuted instantiation: state.c:_fr_dbuff_out_int8 Unexecuted instantiation: tmpl_dcursor.c:_fr_dbuff_out_uint8 Unexecuted instantiation: tmpl_dcursor.c:_fr_dbuff_out_int8 Unexecuted instantiation: tmpl_eval.c:_fr_dbuff_out_uint8 Unexecuted instantiation: tmpl_eval.c:_fr_dbuff_out_int8 Unexecuted instantiation: tmpl_tokenize.c:_fr_dbuff_out_uint8 Unexecuted instantiation: tmpl_tokenize.c:_fr_dbuff_out_int8 Unexecuted instantiation: trigger.c:_fr_dbuff_out_uint8 Unexecuted instantiation: trigger.c:_fr_dbuff_out_int8 Unexecuted instantiation: trunk.c:_fr_dbuff_out_uint8 Unexecuted instantiation: trunk.c:_fr_dbuff_out_int8 Unexecuted instantiation: users_file.c:_fr_dbuff_out_uint8 Unexecuted instantiation: users_file.c:_fr_dbuff_out_int8 Unexecuted instantiation: util.c:_fr_dbuff_out_uint8 Unexecuted instantiation: util.c:_fr_dbuff_out_int8 Unexecuted instantiation: virtual_servers.c:_fr_dbuff_out_uint8 Unexecuted instantiation: virtual_servers.c:_fr_dbuff_out_int8 Unexecuted instantiation: call.c:_fr_dbuff_out_uint8 Unexecuted instantiation: call.c:_fr_dbuff_out_int8 Unexecuted instantiation: call_env.c:_fr_dbuff_out_uint8 Unexecuted instantiation: call_env.c:_fr_dbuff_out_int8 Unexecuted instantiation: caller.c:_fr_dbuff_out_uint8 Unexecuted instantiation: caller.c:_fr_dbuff_out_int8 Unexecuted instantiation: catch.c:_fr_dbuff_out_uint8 Unexecuted instantiation: catch.c:_fr_dbuff_out_int8 Unexecuted instantiation: child_request.c:_fr_dbuff_out_uint8 Unexecuted instantiation: child_request.c:_fr_dbuff_out_int8 Unexecuted instantiation: compile.c:_fr_dbuff_out_uint8 Unexecuted instantiation: compile.c:_fr_dbuff_out_int8 Unexecuted instantiation: condition.c:_fr_dbuff_out_uint8 Unexecuted instantiation: condition.c:_fr_dbuff_out_int8 Unexecuted instantiation: detach.c:_fr_dbuff_out_uint8 Unexecuted instantiation: detach.c:_fr_dbuff_out_int8 Unexecuted instantiation: finally.c:_fr_dbuff_out_uint8 Unexecuted instantiation: finally.c:_fr_dbuff_out_int8 Unexecuted instantiation: foreach.c:_fr_dbuff_out_uint8 Unexecuted instantiation: foreach.c:_fr_dbuff_out_int8 Unexecuted instantiation: function.c:_fr_dbuff_out_uint8 Unexecuted instantiation: function.c:_fr_dbuff_out_int8 Unexecuted instantiation: group.c:_fr_dbuff_out_uint8 Unexecuted instantiation: group.c:_fr_dbuff_out_int8 Unexecuted instantiation: interpret.c:_fr_dbuff_out_uint8 Unexecuted instantiation: interpret.c:_fr_dbuff_out_int8 Unexecuted instantiation: interpret_synchronous.c:_fr_dbuff_out_uint8 Unexecuted instantiation: interpret_synchronous.c:_fr_dbuff_out_int8 Unexecuted instantiation: io.c:_fr_dbuff_out_uint8 Unexecuted instantiation: io.c:_fr_dbuff_out_int8 Unexecuted instantiation: limit.c:_fr_dbuff_out_uint8 Unexecuted instantiation: limit.c:_fr_dbuff_out_int8 Unexecuted instantiation: load_balance.c:_fr_dbuff_out_uint8 Unexecuted instantiation: load_balance.c:_fr_dbuff_out_int8 Unexecuted instantiation: map_builtin.c:_fr_dbuff_out_uint8 Unexecuted instantiation: map_builtin.c:_fr_dbuff_out_int8 Unexecuted instantiation: parallel.c:_fr_dbuff_out_uint8 Unexecuted instantiation: parallel.c:_fr_dbuff_out_int8 Unexecuted instantiation: return.c:_fr_dbuff_out_uint8 Unexecuted instantiation: return.c:_fr_dbuff_out_int8 Unexecuted instantiation: subrequest.c:_fr_dbuff_out_uint8 Unexecuted instantiation: subrequest.c:_fr_dbuff_out_int8 Unexecuted instantiation: switch.c:_fr_dbuff_out_uint8 Unexecuted instantiation: switch.c:_fr_dbuff_out_int8 Unexecuted instantiation: timeout.c:_fr_dbuff_out_uint8 Unexecuted instantiation: timeout.c:_fr_dbuff_out_int8 Unexecuted instantiation: tmpl.c:_fr_dbuff_out_uint8 Unexecuted instantiation: tmpl.c:_fr_dbuff_out_int8 Unexecuted instantiation: try.c:_fr_dbuff_out_uint8 Unexecuted instantiation: try.c:_fr_dbuff_out_int8 Unexecuted instantiation: transaction.c:_fr_dbuff_out_uint8 Unexecuted instantiation: transaction.c:_fr_dbuff_out_int8 Unexecuted instantiation: xlat.c:_fr_dbuff_out_uint8 Unexecuted instantiation: xlat.c:_fr_dbuff_out_int8 Unexecuted instantiation: xlat_alloc.c:_fr_dbuff_out_uint8 Unexecuted instantiation: xlat_alloc.c:_fr_dbuff_out_int8 Unexecuted instantiation: xlat_builtin.c:_fr_dbuff_out_uint8 Unexecuted instantiation: xlat_builtin.c:_fr_dbuff_out_int8 Unexecuted instantiation: xlat_eval.c:_fr_dbuff_out_uint8 Unexecuted instantiation: xlat_eval.c:_fr_dbuff_out_int8 Unexecuted instantiation: xlat_expr.c:_fr_dbuff_out_uint8 Unexecuted instantiation: xlat_expr.c:_fr_dbuff_out_int8 Unexecuted instantiation: xlat_func.c:_fr_dbuff_out_uint8 Unexecuted instantiation: xlat_func.c:_fr_dbuff_out_int8 Unexecuted instantiation: xlat_inst.c:_fr_dbuff_out_uint8 Unexecuted instantiation: xlat_inst.c:_fr_dbuff_out_int8 Unexecuted instantiation: xlat_pair.c:_fr_dbuff_out_uint8 Unexecuted instantiation: xlat_pair.c:_fr_dbuff_out_int8 Unexecuted instantiation: xlat_purify.c:_fr_dbuff_out_uint8 Unexecuted instantiation: xlat_purify.c:_fr_dbuff_out_int8 Unexecuted instantiation: xlat_redundant.c:_fr_dbuff_out_uint8 Unexecuted instantiation: xlat_redundant.c:_fr_dbuff_out_int8 Unexecuted instantiation: xlat_tokenize.c:_fr_dbuff_out_uint8 Unexecuted instantiation: xlat_tokenize.c:_fr_dbuff_out_int8 Unexecuted instantiation: app_io.c:_fr_dbuff_out_uint8 Unexecuted instantiation: app_io.c:_fr_dbuff_out_int8 Unexecuted instantiation: channel.c:_fr_dbuff_out_uint8 Unexecuted instantiation: channel.c:_fr_dbuff_out_int8 Unexecuted instantiation: coord.c:_fr_dbuff_out_uint8 Unexecuted instantiation: coord.c:_fr_dbuff_out_int8 Unexecuted instantiation: coord_pair.c:_fr_dbuff_out_uint8 Unexecuted instantiation: coord_pair.c:_fr_dbuff_out_int8 Unexecuted instantiation: master.c:_fr_dbuff_out_uint8 Unexecuted instantiation: master.c:_fr_dbuff_out_int8 Unexecuted instantiation: network.c:_fr_dbuff_out_uint8 Unexecuted instantiation: network.c:_fr_dbuff_out_int8 Unexecuted instantiation: schedule.c:_fr_dbuff_out_uint8 Unexecuted instantiation: schedule.c:_fr_dbuff_out_int8 Unexecuted instantiation: thread.c:_fr_dbuff_out_uint8 Unexecuted instantiation: thread.c:_fr_dbuff_out_int8 Unexecuted instantiation: worker.c:_fr_dbuff_out_uint8 Unexecuted instantiation: worker.c:_fr_dbuff_out_int8 Unexecuted instantiation: vmps.c:_fr_dbuff_out_uint8 Unexecuted instantiation: vmps.c:_fr_dbuff_out_int8 |
1791 | | |
1792 | 1.95M | FR_DBUFF_OUT_DEF_NO_SWAP(uint8) Unexecuted instantiation: cbor.c:_fr_dbuff_out_uint8 Unexecuted instantiation: value.c:_fr_dbuff_out_uint8 Unexecuted instantiation: encode.c:_fr_dbuff_out_uint8 Unexecuted instantiation: base.c:_fr_dbuff_out_uint8 Unexecuted instantiation: decode.c:_fr_dbuff_out_uint8 |
1793 | 205 | FR_DBUFF_OUT_DEF_NO_SWAP(int8) |
1794 | | /** @endcond */ |
1795 | | |
1796 | | /** Copy data from a dbuff or marker to a fixed sized C type |
1797 | | * |
1798 | | * @param[out] _out Where to write the data. If out is an integer type |
1799 | | * a byteswap will be performed if native endianness |
1800 | | * is not big endian. |
1801 | | * @param[in] _dbuff_or_marker to copy data from. Will be advanced by the number |
1802 | | * of bytes consumed, i.e. if out is a uin16_t *, |
1803 | | * _dbuff_or_marker will be advanced by two bytes. |
1804 | | * @return |
1805 | | * - <0 the number of bytes we would have needed to complete the conversion. |
1806 | | * - >0 the number of bytes _in was advanced by. |
1807 | | */ |
1808 | | #define fr_dbuff_out(_out, _dbuff_or_marker) \ |
1809 | 2.08M | _Generic((_out), \ |
1810 | 2.08M | uint8_t * : _fr_dbuff_out_uint8((uint8_t *)(_out), _fr_dbuff_current_ptr(_dbuff_or_marker), fr_dbuff_ptr(_dbuff_or_marker)), \ |
1811 | 2.08M | uint16_t * : _fr_dbuff_out_uint16((uint16_t *)(_out), _fr_dbuff_current_ptr(_dbuff_or_marker), fr_dbuff_ptr(_dbuff_or_marker)), \ |
1812 | 2.08M | uint32_t * : _fr_dbuff_out_uint32((uint32_t *)(_out), _fr_dbuff_current_ptr(_dbuff_or_marker), fr_dbuff_ptr(_dbuff_or_marker)), \ |
1813 | 2.08M | uint64_t * : _fr_dbuff_out_uint64((uint64_t *)(_out), _fr_dbuff_current_ptr(_dbuff_or_marker), fr_dbuff_ptr(_dbuff_or_marker)), \ |
1814 | 2.08M | int8_t * : _fr_dbuff_out_int8((int8_t *)(_out), _fr_dbuff_current_ptr(_dbuff_or_marker), fr_dbuff_ptr(_dbuff_or_marker)), \ |
1815 | 2.08M | int16_t * : _fr_dbuff_out_int16((int16_t *)(_out), _fr_dbuff_current_ptr(_dbuff_or_marker), fr_dbuff_ptr(_dbuff_or_marker)), \ |
1816 | 2.08M | int32_t * : _fr_dbuff_out_int32((int32_t *)(_out), _fr_dbuff_current_ptr(_dbuff_or_marker), fr_dbuff_ptr(_dbuff_or_marker)), \ |
1817 | 2.08M | int64_t * : _fr_dbuff_out_int64((int64_t *)(_out), _fr_dbuff_current_ptr(_dbuff_or_marker), fr_dbuff_ptr(_dbuff_or_marker)), \ |
1818 | 2.08M | float * : _fr_dbuff_out_uint32((uint32_t *)(_out), _fr_dbuff_current_ptr(_dbuff_or_marker), fr_dbuff_ptr(_dbuff_or_marker)), \ |
1819 | 2.08M | double * : _fr_dbuff_out_uint64((uint64_t *)(_out), _fr_dbuff_current_ptr(_dbuff_or_marker), fr_dbuff_ptr(_dbuff_or_marker)) \ |
1820 | 2.08M | ) |
1821 | | |
1822 | | /** Copy data from a dbuff or marker to a fixed sized C type returning if there is insufficient data |
1823 | | * |
1824 | | * @copydetails fr_dbuff_out |
1825 | | */ |
1826 | | #ifndef STATIC_ANALYZER |
1827 | 2.03M | #define FR_DBUFF_OUT_RETURN(_out, _dbuff_or_marker) FR_DBUFF_RETURN(fr_dbuff_out, _out, _dbuff_or_marker) |
1828 | | #else |
1829 | | #define FR_DBUFF_OUT_RETURN(_out, _dbuff_or_marker) do { *_out = 0; FR_DBUFF_RETURN(fr_dbuff_out, _out, _dbuff_or_marker); } while (0) |
1830 | | #endif |
1831 | | |
1832 | | /** Internal function - do not call directly |
1833 | | * @private |
1834 | | */ |
1835 | | static inline ssize_t _fr_dbuff_out_uint64v(uint64_t *num, uint8_t **pos_p, fr_dbuff_t *dbuff, size_t length) |
1836 | 3.19M | { |
1837 | 3.19M | ssize_t slen; |
1838 | | |
1839 | 3.19M | fr_assert(length > 0 && length <= sizeof(uint64_t)); |
1840 | | |
1841 | 3.19M | *num = 0; |
1842 | 3.19M | slen = _fr_dbuff_out_memcpy(((uint8_t *) num) + (8 - length), pos_p, dbuff, length); |
1843 | 3.19M | if (slen <= 0) return slen; |
1844 | | |
1845 | 3.19M | *num = fr_nbo_to_uint64((uint8_t const *)num); |
1846 | 3.19M | return length; |
1847 | 3.19M | } Unexecuted instantiation: fuzzer_dhcpv6.c:_fr_dbuff_out_uint64v Unexecuted instantiation: fuzzer_util.c:_fr_dbuff_out_uint64v Unexecuted instantiation: fuzzer_dhcpv4.c:_fr_dbuff_out_uint64v Unexecuted instantiation: fuzzer_cbor.c:_fr_dbuff_out_uint64v Unexecuted instantiation: fuzzer_der.c:_fr_dbuff_out_uint64v Unexecuted instantiation: fuzzer_dns.c:_fr_dbuff_out_uint64v Unexecuted instantiation: fuzzer_tacacs.c:_fr_dbuff_out_uint64v Unexecuted instantiation: fuzzer_bfd.c:_fr_dbuff_out_uint64v Unexecuted instantiation: fuzzer_radius.c:_fr_dbuff_out_uint64v Unexecuted instantiation: fuzzer_tftp.c:_fr_dbuff_out_uint64v Unexecuted instantiation: fuzzer_vmps.c:_fr_dbuff_out_uint64v Unexecuted instantiation: base16.c:_fr_dbuff_out_uint64v Unexecuted instantiation: base32.c:_fr_dbuff_out_uint64v Unexecuted instantiation: base64.c:_fr_dbuff_out_uint64v Unexecuted instantiation: calc.c:_fr_dbuff_out_uint64v Unexecuted instantiation: cbor.c:_fr_dbuff_out_uint64v Unexecuted instantiation: dbuff.c:_fr_dbuff_out_uint64v Unexecuted instantiation: decode.c:_fr_dbuff_out_uint64v Unexecuted instantiation: dict_ext.c:_fr_dbuff_out_uint64v Unexecuted instantiation: dict_fixup.c:_fr_dbuff_out_uint64v Unexecuted instantiation: dict_print.c:_fr_dbuff_out_uint64v Unexecuted instantiation: dict_test.c:_fr_dbuff_out_uint64v Unexecuted instantiation: dict_tokenize.c:_fr_dbuff_out_uint64v Unexecuted instantiation: dict_unknown.c:_fr_dbuff_out_uint64v Unexecuted instantiation: dict_util.c:_fr_dbuff_out_uint64v Unexecuted instantiation: dict_validate.c:_fr_dbuff_out_uint64v Unexecuted instantiation: dl.c:_fr_dbuff_out_uint64v Unexecuted instantiation: dns.c:_fr_dbuff_out_uint64v Unexecuted instantiation: edit.c:_fr_dbuff_out_uint64v Unexecuted instantiation: encode.c:_fr_dbuff_out_uint64v Unexecuted instantiation: timer.c:_fr_dbuff_out_uint64v Unexecuted instantiation: file.c:_fr_dbuff_out_uint64v Unexecuted instantiation: inet.c:_fr_dbuff_out_uint64v Unexecuted instantiation: iovec.c:_fr_dbuff_out_uint64v Unexecuted instantiation: log.c:_fr_dbuff_out_uint64v Unexecuted instantiation: misc.c:_fr_dbuff_out_uint64v Unexecuted instantiation: packet.c:_fr_dbuff_out_uint64v Unexecuted instantiation: pair.c:_fr_dbuff_out_uint64v Unexecuted instantiation: pair_inline.c:_fr_dbuff_out_uint64v Unexecuted instantiation: pair_legacy.c:_fr_dbuff_out_uint64v Unexecuted instantiation: pair_print.c:_fr_dbuff_out_uint64v Unexecuted instantiation: pair_tokenize.c:_fr_dbuff_out_uint64v Unexecuted instantiation: print.c:_fr_dbuff_out_uint64v Unexecuted instantiation: proto.c:_fr_dbuff_out_uint64v Unexecuted instantiation: regex.c:_fr_dbuff_out_uint64v Unexecuted instantiation: socket.c:_fr_dbuff_out_uint64v Unexecuted instantiation: stats.c:_fr_dbuff_out_uint64v Unexecuted instantiation: struct.c:_fr_dbuff_out_uint64v Unexecuted instantiation: types.c:_fr_dbuff_out_uint64v Unexecuted instantiation: uri.c:_fr_dbuff_out_uint64v value.c:_fr_dbuff_out_uint64v Line | Count | Source | 1836 | 7.68k | { | 1837 | 7.68k | ssize_t slen; | 1838 | | | 1839 | 7.68k | fr_assert(length > 0 && length <= sizeof(uint64_t)); | 1840 | | | 1841 | 7.68k | *num = 0; | 1842 | 7.68k | slen = _fr_dbuff_out_memcpy(((uint8_t *) num) + (8 - length), pos_p, dbuff, length); | 1843 | 7.68k | if (slen <= 0) return slen; | 1844 | | | 1845 | 7.35k | *num = fr_nbo_to_uint64((uint8_t const *)num); | 1846 | 7.35k | return length; | 1847 | 7.68k | } |
Unexecuted instantiation: fuzzer.c:_fr_dbuff_out_uint64v Unexecuted instantiation: base.c:_fr_dbuff_out_uint64v Unexecuted instantiation: raw.c:_fr_dbuff_out_uint64v Unexecuted instantiation: udp.c:_fr_dbuff_out_uint64v Unexecuted instantiation: json.c:_fr_dbuff_out_uint64v Unexecuted instantiation: jpath.c:_fr_dbuff_out_uint64v decode.c:_fr_dbuff_out_uint64v Line | Count | Source | 1836 | 3.18M | { | 1837 | 3.18M | ssize_t slen; | 1838 | | | 1839 | 3.18M | fr_assert(length > 0 && length <= sizeof(uint64_t)); | 1840 | | | 1841 | 3.18M | *num = 0; | 1842 | 3.18M | slen = _fr_dbuff_out_memcpy(((uint8_t *) num) + (8 - length), pos_p, dbuff, length); | 1843 | 3.18M | if (slen <= 0) return slen; | 1844 | | | 1845 | 3.18M | *num = fr_nbo_to_uint64((uint8_t const *)num); | 1846 | 3.18M | return length; | 1847 | 3.18M | } |
Unexecuted instantiation: bio.c:_fr_dbuff_out_uint64v Unexecuted instantiation: cache.c:_fr_dbuff_out_uint64v Unexecuted instantiation: cert.c:_fr_dbuff_out_uint64v Unexecuted instantiation: conf.c:_fr_dbuff_out_uint64v Unexecuted instantiation: ctx.c:_fr_dbuff_out_uint64v Unexecuted instantiation: engine.c:_fr_dbuff_out_uint64v Unexecuted instantiation: pairs.c:_fr_dbuff_out_uint64v Unexecuted instantiation: session.c:_fr_dbuff_out_uint64v Unexecuted instantiation: strerror.c:_fr_dbuff_out_uint64v Unexecuted instantiation: utils.c:_fr_dbuff_out_uint64v Unexecuted instantiation: verify.c:_fr_dbuff_out_uint64v Unexecuted instantiation: version.c:_fr_dbuff_out_uint64v Unexecuted instantiation: virtual_server.c:_fr_dbuff_out_uint64v Unexecuted instantiation: list.c:_fr_dbuff_out_uint64v Unexecuted instantiation: tcp.c:_fr_dbuff_out_uint64v Unexecuted instantiation: abinary.c:_fr_dbuff_out_uint64v Unexecuted instantiation: auth.c:_fr_dbuff_out_uint64v Unexecuted instantiation: cf_file.c:_fr_dbuff_out_uint64v Unexecuted instantiation: cf_parse.c:_fr_dbuff_out_uint64v Unexecuted instantiation: cf_util.c:_fr_dbuff_out_uint64v Unexecuted instantiation: client.c:_fr_dbuff_out_uint64v Unexecuted instantiation: command.c:_fr_dbuff_out_uint64v Unexecuted instantiation: connection.c:_fr_dbuff_out_uint64v Unexecuted instantiation: dependency.c:_fr_dbuff_out_uint64v Unexecuted instantiation: dl_module.c:_fr_dbuff_out_uint64v Unexecuted instantiation: exec.c:_fr_dbuff_out_uint64v Unexecuted instantiation: exec_legacy.c:_fr_dbuff_out_uint64v Unexecuted instantiation: exfile.c:_fr_dbuff_out_uint64v Unexecuted instantiation: global_lib.c:_fr_dbuff_out_uint64v Unexecuted instantiation: main_config.c:_fr_dbuff_out_uint64v Unexecuted instantiation: main_loop.c:_fr_dbuff_out_uint64v Unexecuted instantiation: map.c:_fr_dbuff_out_uint64v Unexecuted instantiation: map_proc.c:_fr_dbuff_out_uint64v Unexecuted instantiation: module.c:_fr_dbuff_out_uint64v Unexecuted instantiation: module_method.c:_fr_dbuff_out_uint64v Unexecuted instantiation: module_rlm.c:_fr_dbuff_out_uint64v Unexecuted instantiation: paircmp.c:_fr_dbuff_out_uint64v Unexecuted instantiation: pairmove.c:_fr_dbuff_out_uint64v Unexecuted instantiation: password.c:_fr_dbuff_out_uint64v Unexecuted instantiation: pool.c:_fr_dbuff_out_uint64v Unexecuted instantiation: request.c:_fr_dbuff_out_uint64v Unexecuted instantiation: request_data.c:_fr_dbuff_out_uint64v Unexecuted instantiation: snmp.c:_fr_dbuff_out_uint64v Unexecuted instantiation: state.c:_fr_dbuff_out_uint64v Unexecuted instantiation: tmpl_dcursor.c:_fr_dbuff_out_uint64v Unexecuted instantiation: tmpl_eval.c:_fr_dbuff_out_uint64v Unexecuted instantiation: tmpl_tokenize.c:_fr_dbuff_out_uint64v Unexecuted instantiation: trigger.c:_fr_dbuff_out_uint64v Unexecuted instantiation: trunk.c:_fr_dbuff_out_uint64v Unexecuted instantiation: users_file.c:_fr_dbuff_out_uint64v Unexecuted instantiation: util.c:_fr_dbuff_out_uint64v Unexecuted instantiation: virtual_servers.c:_fr_dbuff_out_uint64v Unexecuted instantiation: call.c:_fr_dbuff_out_uint64v Unexecuted instantiation: call_env.c:_fr_dbuff_out_uint64v Unexecuted instantiation: caller.c:_fr_dbuff_out_uint64v Unexecuted instantiation: catch.c:_fr_dbuff_out_uint64v Unexecuted instantiation: child_request.c:_fr_dbuff_out_uint64v Unexecuted instantiation: compile.c:_fr_dbuff_out_uint64v Unexecuted instantiation: condition.c:_fr_dbuff_out_uint64v Unexecuted instantiation: detach.c:_fr_dbuff_out_uint64v Unexecuted instantiation: finally.c:_fr_dbuff_out_uint64v Unexecuted instantiation: foreach.c:_fr_dbuff_out_uint64v Unexecuted instantiation: function.c:_fr_dbuff_out_uint64v Unexecuted instantiation: group.c:_fr_dbuff_out_uint64v Unexecuted instantiation: interpret.c:_fr_dbuff_out_uint64v Unexecuted instantiation: interpret_synchronous.c:_fr_dbuff_out_uint64v Unexecuted instantiation: io.c:_fr_dbuff_out_uint64v Unexecuted instantiation: limit.c:_fr_dbuff_out_uint64v Unexecuted instantiation: load_balance.c:_fr_dbuff_out_uint64v Unexecuted instantiation: map_builtin.c:_fr_dbuff_out_uint64v Unexecuted instantiation: parallel.c:_fr_dbuff_out_uint64v Unexecuted instantiation: return.c:_fr_dbuff_out_uint64v Unexecuted instantiation: subrequest.c:_fr_dbuff_out_uint64v Unexecuted instantiation: switch.c:_fr_dbuff_out_uint64v Unexecuted instantiation: timeout.c:_fr_dbuff_out_uint64v Unexecuted instantiation: tmpl.c:_fr_dbuff_out_uint64v Unexecuted instantiation: try.c:_fr_dbuff_out_uint64v Unexecuted instantiation: transaction.c:_fr_dbuff_out_uint64v Unexecuted instantiation: xlat.c:_fr_dbuff_out_uint64v Unexecuted instantiation: xlat_alloc.c:_fr_dbuff_out_uint64v Unexecuted instantiation: xlat_builtin.c:_fr_dbuff_out_uint64v Unexecuted instantiation: xlat_eval.c:_fr_dbuff_out_uint64v Unexecuted instantiation: xlat_expr.c:_fr_dbuff_out_uint64v Unexecuted instantiation: xlat_func.c:_fr_dbuff_out_uint64v Unexecuted instantiation: xlat_inst.c:_fr_dbuff_out_uint64v Unexecuted instantiation: xlat_pair.c:_fr_dbuff_out_uint64v Unexecuted instantiation: xlat_purify.c:_fr_dbuff_out_uint64v Unexecuted instantiation: xlat_redundant.c:_fr_dbuff_out_uint64v Unexecuted instantiation: xlat_tokenize.c:_fr_dbuff_out_uint64v Unexecuted instantiation: app_io.c:_fr_dbuff_out_uint64v Unexecuted instantiation: channel.c:_fr_dbuff_out_uint64v Unexecuted instantiation: coord.c:_fr_dbuff_out_uint64v Unexecuted instantiation: coord_pair.c:_fr_dbuff_out_uint64v Unexecuted instantiation: master.c:_fr_dbuff_out_uint64v Unexecuted instantiation: network.c:_fr_dbuff_out_uint64v Unexecuted instantiation: schedule.c:_fr_dbuff_out_uint64v Unexecuted instantiation: thread.c:_fr_dbuff_out_uint64v Unexecuted instantiation: worker.c:_fr_dbuff_out_uint64v Unexecuted instantiation: vmps.c:_fr_dbuff_out_uint64v |
1848 | | |
1849 | | /** Read bytes from a dbuff or marker and interpret them as a network order unsigned integer |
1850 | | * @param[in] _num points to a uint64_t to store the integer in |
1851 | | * @param[in] _dbuff_or_marker data to copy bytes from |
1852 | | * @param[in] _len number of bytes to read (must be positive and less than eight) |
1853 | | * |
1854 | | * @return |
1855 | | * - 0 no data read. |
1856 | | * - >0 the number of bytes read. |
1857 | | * - <0 the number of bytes we would have needed |
1858 | | * to complete the read operation. |
1859 | | */ |
1860 | | #define fr_dbuff_out_uint64v(_num, _dbuff_or_marker, _len) \ |
1861 | 3.19M | _fr_dbuff_out_uint64v(_num, _fr_dbuff_current_ptr(_dbuff_or_marker), fr_dbuff_ptr(_dbuff_or_marker), _len) |
1862 | | |
1863 | | /** Read bytes from a dbuff or marker and interpret them as a network order unsigned integer |
1864 | | * |
1865 | | * @copydetails fr_dbuff_out_uint64v |
1866 | | */ |
1867 | 3.19M | #define FR_DBUFF_OUT_UINT64V_RETURN(_num, _dbuff_or_marker, _len) FR_DBUFF_RETURN(fr_dbuff_out_uint64v, _num, _dbuff_or_marker, _len) |
1868 | | |
1869 | | /** Internal function - do not call directly |
1870 | | * @private |
1871 | | */ |
1872 | | static inline ssize_t _fr_dbuff_out_int64v(int64_t *num, uint8_t **pos_p, fr_dbuff_t *dbuff, size_t length) |
1873 | 9.69k | { |
1874 | 9.69k | ssize_t slen; |
1875 | 9.69k | uint8_t msb = **pos_p; |
1876 | | |
1877 | 9.69k | fr_assert(length > 0 && length <= sizeof(uint64_t)); |
1878 | | |
1879 | 9.69k | *num = 0; |
1880 | 9.69k | slen = _fr_dbuff_out_memcpy(((uint8_t *) num) + (8 - length), pos_p, dbuff, length); |
1881 | 9.69k | if (slen <= 0) return slen; |
1882 | | |
1883 | 9.43k | if (msb & 0x80) memset(((uint8_t *)num), 0xff, sizeof(*num) - length); |
1884 | 9.43k | *num = fr_nbo_to_int64((uint8_t const *)num); |
1885 | | |
1886 | 9.43k | return length; |
1887 | 9.69k | } Unexecuted instantiation: fuzzer_dhcpv6.c:_fr_dbuff_out_int64v Unexecuted instantiation: fuzzer_util.c:_fr_dbuff_out_int64v Unexecuted instantiation: fuzzer_dhcpv4.c:_fr_dbuff_out_int64v Unexecuted instantiation: fuzzer_cbor.c:_fr_dbuff_out_int64v Unexecuted instantiation: fuzzer_der.c:_fr_dbuff_out_int64v Unexecuted instantiation: fuzzer_dns.c:_fr_dbuff_out_int64v Unexecuted instantiation: fuzzer_tacacs.c:_fr_dbuff_out_int64v Unexecuted instantiation: fuzzer_bfd.c:_fr_dbuff_out_int64v Unexecuted instantiation: fuzzer_radius.c:_fr_dbuff_out_int64v Unexecuted instantiation: fuzzer_tftp.c:_fr_dbuff_out_int64v Unexecuted instantiation: fuzzer_vmps.c:_fr_dbuff_out_int64v Unexecuted instantiation: base16.c:_fr_dbuff_out_int64v Unexecuted instantiation: base32.c:_fr_dbuff_out_int64v Unexecuted instantiation: base64.c:_fr_dbuff_out_int64v Unexecuted instantiation: calc.c:_fr_dbuff_out_int64v Unexecuted instantiation: cbor.c:_fr_dbuff_out_int64v Unexecuted instantiation: dbuff.c:_fr_dbuff_out_int64v Unexecuted instantiation: decode.c:_fr_dbuff_out_int64v Unexecuted instantiation: dict_ext.c:_fr_dbuff_out_int64v Unexecuted instantiation: dict_fixup.c:_fr_dbuff_out_int64v Unexecuted instantiation: dict_print.c:_fr_dbuff_out_int64v Unexecuted instantiation: dict_test.c:_fr_dbuff_out_int64v Unexecuted instantiation: dict_tokenize.c:_fr_dbuff_out_int64v Unexecuted instantiation: dict_unknown.c:_fr_dbuff_out_int64v Unexecuted instantiation: dict_util.c:_fr_dbuff_out_int64v Unexecuted instantiation: dict_validate.c:_fr_dbuff_out_int64v Unexecuted instantiation: dl.c:_fr_dbuff_out_int64v Unexecuted instantiation: dns.c:_fr_dbuff_out_int64v Unexecuted instantiation: edit.c:_fr_dbuff_out_int64v Unexecuted instantiation: encode.c:_fr_dbuff_out_int64v Unexecuted instantiation: timer.c:_fr_dbuff_out_int64v Unexecuted instantiation: file.c:_fr_dbuff_out_int64v Unexecuted instantiation: inet.c:_fr_dbuff_out_int64v Unexecuted instantiation: iovec.c:_fr_dbuff_out_int64v Unexecuted instantiation: log.c:_fr_dbuff_out_int64v Unexecuted instantiation: misc.c:_fr_dbuff_out_int64v Unexecuted instantiation: packet.c:_fr_dbuff_out_int64v Unexecuted instantiation: pair.c:_fr_dbuff_out_int64v Unexecuted instantiation: pair_inline.c:_fr_dbuff_out_int64v Unexecuted instantiation: pair_legacy.c:_fr_dbuff_out_int64v Unexecuted instantiation: pair_print.c:_fr_dbuff_out_int64v Unexecuted instantiation: pair_tokenize.c:_fr_dbuff_out_int64v Unexecuted instantiation: print.c:_fr_dbuff_out_int64v Unexecuted instantiation: proto.c:_fr_dbuff_out_int64v Unexecuted instantiation: regex.c:_fr_dbuff_out_int64v Unexecuted instantiation: socket.c:_fr_dbuff_out_int64v Unexecuted instantiation: stats.c:_fr_dbuff_out_int64v Unexecuted instantiation: struct.c:_fr_dbuff_out_int64v Unexecuted instantiation: types.c:_fr_dbuff_out_int64v Unexecuted instantiation: uri.c:_fr_dbuff_out_int64v value.c:_fr_dbuff_out_int64v Line | Count | Source | 1873 | 9.69k | { | 1874 | 9.69k | ssize_t slen; | 1875 | 9.69k | uint8_t msb = **pos_p; | 1876 | | | 1877 | 9.69k | fr_assert(length > 0 && length <= sizeof(uint64_t)); | 1878 | | | 1879 | 9.69k | *num = 0; | 1880 | 9.69k | slen = _fr_dbuff_out_memcpy(((uint8_t *) num) + (8 - length), pos_p, dbuff, length); | 1881 | 9.69k | if (slen <= 0) return slen; | 1882 | | | 1883 | 9.43k | if (msb & 0x80) memset(((uint8_t *)num), 0xff, sizeof(*num) - length); | 1884 | 9.43k | *num = fr_nbo_to_int64((uint8_t const *)num); | 1885 | | | 1886 | 9.43k | return length; | 1887 | 9.69k | } |
Unexecuted instantiation: fuzzer.c:_fr_dbuff_out_int64v Unexecuted instantiation: base.c:_fr_dbuff_out_int64v Unexecuted instantiation: raw.c:_fr_dbuff_out_int64v Unexecuted instantiation: udp.c:_fr_dbuff_out_int64v Unexecuted instantiation: json.c:_fr_dbuff_out_int64v Unexecuted instantiation: jpath.c:_fr_dbuff_out_int64v Unexecuted instantiation: bio.c:_fr_dbuff_out_int64v Unexecuted instantiation: cache.c:_fr_dbuff_out_int64v Unexecuted instantiation: cert.c:_fr_dbuff_out_int64v Unexecuted instantiation: conf.c:_fr_dbuff_out_int64v Unexecuted instantiation: ctx.c:_fr_dbuff_out_int64v Unexecuted instantiation: engine.c:_fr_dbuff_out_int64v Unexecuted instantiation: pairs.c:_fr_dbuff_out_int64v Unexecuted instantiation: session.c:_fr_dbuff_out_int64v Unexecuted instantiation: strerror.c:_fr_dbuff_out_int64v Unexecuted instantiation: utils.c:_fr_dbuff_out_int64v Unexecuted instantiation: verify.c:_fr_dbuff_out_int64v Unexecuted instantiation: version.c:_fr_dbuff_out_int64v Unexecuted instantiation: virtual_server.c:_fr_dbuff_out_int64v Unexecuted instantiation: list.c:_fr_dbuff_out_int64v Unexecuted instantiation: tcp.c:_fr_dbuff_out_int64v Unexecuted instantiation: abinary.c:_fr_dbuff_out_int64v Unexecuted instantiation: auth.c:_fr_dbuff_out_int64v Unexecuted instantiation: cf_file.c:_fr_dbuff_out_int64v Unexecuted instantiation: cf_parse.c:_fr_dbuff_out_int64v Unexecuted instantiation: cf_util.c:_fr_dbuff_out_int64v Unexecuted instantiation: client.c:_fr_dbuff_out_int64v Unexecuted instantiation: command.c:_fr_dbuff_out_int64v Unexecuted instantiation: connection.c:_fr_dbuff_out_int64v Unexecuted instantiation: dependency.c:_fr_dbuff_out_int64v Unexecuted instantiation: dl_module.c:_fr_dbuff_out_int64v Unexecuted instantiation: exec.c:_fr_dbuff_out_int64v Unexecuted instantiation: exec_legacy.c:_fr_dbuff_out_int64v Unexecuted instantiation: exfile.c:_fr_dbuff_out_int64v Unexecuted instantiation: global_lib.c:_fr_dbuff_out_int64v Unexecuted instantiation: main_config.c:_fr_dbuff_out_int64v Unexecuted instantiation: main_loop.c:_fr_dbuff_out_int64v Unexecuted instantiation: map.c:_fr_dbuff_out_int64v Unexecuted instantiation: map_proc.c:_fr_dbuff_out_int64v Unexecuted instantiation: module.c:_fr_dbuff_out_int64v Unexecuted instantiation: module_method.c:_fr_dbuff_out_int64v Unexecuted instantiation: module_rlm.c:_fr_dbuff_out_int64v Unexecuted instantiation: paircmp.c:_fr_dbuff_out_int64v Unexecuted instantiation: pairmove.c:_fr_dbuff_out_int64v Unexecuted instantiation: password.c:_fr_dbuff_out_int64v Unexecuted instantiation: pool.c:_fr_dbuff_out_int64v Unexecuted instantiation: request.c:_fr_dbuff_out_int64v Unexecuted instantiation: request_data.c:_fr_dbuff_out_int64v Unexecuted instantiation: snmp.c:_fr_dbuff_out_int64v Unexecuted instantiation: state.c:_fr_dbuff_out_int64v Unexecuted instantiation: tmpl_dcursor.c:_fr_dbuff_out_int64v Unexecuted instantiation: tmpl_eval.c:_fr_dbuff_out_int64v Unexecuted instantiation: tmpl_tokenize.c:_fr_dbuff_out_int64v Unexecuted instantiation: trigger.c:_fr_dbuff_out_int64v Unexecuted instantiation: trunk.c:_fr_dbuff_out_int64v Unexecuted instantiation: users_file.c:_fr_dbuff_out_int64v Unexecuted instantiation: util.c:_fr_dbuff_out_int64v Unexecuted instantiation: virtual_servers.c:_fr_dbuff_out_int64v Unexecuted instantiation: call.c:_fr_dbuff_out_int64v Unexecuted instantiation: call_env.c:_fr_dbuff_out_int64v Unexecuted instantiation: caller.c:_fr_dbuff_out_int64v Unexecuted instantiation: catch.c:_fr_dbuff_out_int64v Unexecuted instantiation: child_request.c:_fr_dbuff_out_int64v Unexecuted instantiation: compile.c:_fr_dbuff_out_int64v Unexecuted instantiation: condition.c:_fr_dbuff_out_int64v Unexecuted instantiation: detach.c:_fr_dbuff_out_int64v Unexecuted instantiation: finally.c:_fr_dbuff_out_int64v Unexecuted instantiation: foreach.c:_fr_dbuff_out_int64v Unexecuted instantiation: function.c:_fr_dbuff_out_int64v Unexecuted instantiation: group.c:_fr_dbuff_out_int64v Unexecuted instantiation: interpret.c:_fr_dbuff_out_int64v Unexecuted instantiation: interpret_synchronous.c:_fr_dbuff_out_int64v Unexecuted instantiation: io.c:_fr_dbuff_out_int64v Unexecuted instantiation: limit.c:_fr_dbuff_out_int64v Unexecuted instantiation: load_balance.c:_fr_dbuff_out_int64v Unexecuted instantiation: map_builtin.c:_fr_dbuff_out_int64v Unexecuted instantiation: parallel.c:_fr_dbuff_out_int64v Unexecuted instantiation: return.c:_fr_dbuff_out_int64v Unexecuted instantiation: subrequest.c:_fr_dbuff_out_int64v Unexecuted instantiation: switch.c:_fr_dbuff_out_int64v Unexecuted instantiation: timeout.c:_fr_dbuff_out_int64v Unexecuted instantiation: tmpl.c:_fr_dbuff_out_int64v Unexecuted instantiation: try.c:_fr_dbuff_out_int64v Unexecuted instantiation: transaction.c:_fr_dbuff_out_int64v Unexecuted instantiation: xlat.c:_fr_dbuff_out_int64v Unexecuted instantiation: xlat_alloc.c:_fr_dbuff_out_int64v Unexecuted instantiation: xlat_builtin.c:_fr_dbuff_out_int64v Unexecuted instantiation: xlat_eval.c:_fr_dbuff_out_int64v Unexecuted instantiation: xlat_expr.c:_fr_dbuff_out_int64v Unexecuted instantiation: xlat_func.c:_fr_dbuff_out_int64v Unexecuted instantiation: xlat_inst.c:_fr_dbuff_out_int64v Unexecuted instantiation: xlat_pair.c:_fr_dbuff_out_int64v Unexecuted instantiation: xlat_purify.c:_fr_dbuff_out_int64v Unexecuted instantiation: xlat_redundant.c:_fr_dbuff_out_int64v Unexecuted instantiation: xlat_tokenize.c:_fr_dbuff_out_int64v Unexecuted instantiation: app_io.c:_fr_dbuff_out_int64v Unexecuted instantiation: channel.c:_fr_dbuff_out_int64v Unexecuted instantiation: coord.c:_fr_dbuff_out_int64v Unexecuted instantiation: coord_pair.c:_fr_dbuff_out_int64v Unexecuted instantiation: master.c:_fr_dbuff_out_int64v Unexecuted instantiation: network.c:_fr_dbuff_out_int64v Unexecuted instantiation: schedule.c:_fr_dbuff_out_int64v Unexecuted instantiation: thread.c:_fr_dbuff_out_int64v Unexecuted instantiation: worker.c:_fr_dbuff_out_int64v Unexecuted instantiation: vmps.c:_fr_dbuff_out_int64v |
1888 | | |
1889 | | /** Read bytes from a dbuff or marker and interpret them as a network order signed integer |
1890 | | * @param[in] _num points to an int64_t to store the integer in |
1891 | | * @param[in] _dbuff_or_marker data to copy bytes from |
1892 | | * @param[in] _len number of bytes to read (must be positive and less than eight) |
1893 | | * |
1894 | | * @return |
1895 | | * - 0 no data read. |
1896 | | * - >0 the number of bytes read. |
1897 | | * - <0 the number of bytes we would have needed |
1898 | | * to complete the read operation. |
1899 | | */ |
1900 | | #define fr_dbuff_out_int64v(_num, _dbuff_or_marker, _len) \ |
1901 | 9.69k | _fr_dbuff_out_int64v(_num, _fr_dbuff_current_ptr(_dbuff_or_marker), fr_dbuff_ptr(_dbuff_or_marker), _len) |
1902 | | |
1903 | | /** Read bytes from a dbuff or marker and interpret them as a network order unsigned integer |
1904 | | * |
1905 | | * @copydetails fr_dbuff_out_int64v |
1906 | | */ |
1907 | 9.69k | #define FR_DBUFF_OUT_INT64V_RETURN(_num, _dbuff_or_marker, _len) FR_DBUFF_RETURN(fr_dbuff_out_int64v, _num, _dbuff_or_marker, _len) |
1908 | | |
1909 | | /** @} */ |
1910 | | #ifdef __cplusplus |
1911 | | } |
1912 | | #endif |