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