Line | Count | Source (jump to first uncovered line) |
1 | | /* |
2 | | * - various general purpose functions |
3 | | * |
4 | | * Copyright (C) 2001-2003 FhG Fokus |
5 | | * |
6 | | * This file is part of opensips, a free SIP server. |
7 | | * |
8 | | * opensips is free software; you can redistribute it and/or modify |
9 | | * it under the terms of the GNU General Public License as published by |
10 | | * the Free Software Foundation; either version 2 of the License, or |
11 | | * (at your option) any later version |
12 | | * |
13 | | * opensips is distributed in the hope that it will be useful, |
14 | | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
15 | | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
16 | | * GNU General Public License for more details. |
17 | | * |
18 | | * You should have received a copy of the GNU General Public License |
19 | | * along with this program; if not, write to the Free Software |
20 | | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA |
21 | | * |
22 | | */ |
23 | | |
24 | | |
25 | | #ifndef ut_h |
26 | | #define ut_h |
27 | | |
28 | | #include <sys/types.h> |
29 | | #include <sys/select.h> |
30 | | #include <sys/time.h> |
31 | | #include <limits.h> |
32 | | #include <unistd.h> |
33 | | #include <ctype.h> |
34 | | |
35 | | #include "config.h" |
36 | | #include "dprint.h" |
37 | | #include "sr_module.h" |
38 | | #include "action.h" |
39 | | #include "str.h" |
40 | | #include "evi/evi_modules.h" |
41 | | #include "evi/evi_core.h" |
42 | | |
43 | | #include "mem/mem.h" |
44 | | #include "mem/shm_mem.h" |
45 | | |
46 | | #include "lib/str2const.h" |
47 | | |
48 | | typedef struct _int_str_t { |
49 | | union { |
50 | | int i; |
51 | | str s; |
52 | | }; |
53 | | unsigned char is_str; |
54 | | } int_str_t; |
55 | | |
56 | | struct sip_msg; |
57 | | |
58 | | /* the amount of decimals to be displayed for "float" and "double" values */ |
59 | | #define FLOATING_POINT_PRECISION 8 |
60 | | |
61 | | /* zero-string wrapper */ |
62 | 0 | #define ZSW(_c) ((_c)?(_c):"") |
63 | | |
64 | | /* returns string beginning and length without insignificant chars */ |
65 | | #define trim_len( _len, _begin, _mystr ) \ |
66 | 0 | do{ static char _c; \ |
67 | 0 | (_len)=(_mystr).len; \ |
68 | 0 | while ((_len) && ((_c=(_mystr).s[(_len)-1])==0 || is_ws(_c))) \ |
69 | 0 | (_len)--; \ |
70 | 0 | (_begin)=(_mystr).s; \ |
71 | 0 | while ((_len) && ((_c=*(_begin))==' ' || _c=='\t')) { \ |
72 | 0 | (_len)--;\ |
73 | 0 | (_begin)++; \ |
74 | 0 | } \ |
75 | 0 | }while(0) |
76 | | |
77 | | #define trim_r( _mystr ) \ |
78 | 1.17M | do{ static char _c; \ |
79 | 2.43M | while( ((_mystr).len) && ( ((_c=(_mystr).s[(_mystr).len-1]))==0 ||\ |
80 | 1.84M | _c=='\r' || _c=='\n' ) \ |
81 | 1.17M | ) \ |
82 | 1.26M | (_mystr).len--; \ |
83 | 1.17M | }while(0) |
84 | | |
85 | | /* right and left space trimming */ |
86 | | #define trim_spaces_lr(_s_) \ |
87 | | do{\ |
88 | | for(;(_s_).s[(_s_).len-1]==' ';(_s_).s[--(_s_).len]=0);\ |
89 | | for(;(_s_).s[0]==' ';(_s_).s=(_s_).s+1,(_s_).len--);\ |
90 | | }while(0); |
91 | | |
92 | | /* right and left space trimming without '0' padding */ |
93 | | #define str_trim_spaces_lr(_s_) \ |
94 | | do{\ |
95 | | for(;(_s_).s[(_s_).len-1]==' ';--(_s_).len);\ |
96 | | for(;(_s_).s[0]==' ';(_s_).s=(_s_).s+1,(_s_).len--);\ |
97 | | }while(0); |
98 | | |
99 | | |
100 | | #define translate_pointer( _new_buf , _org_buf , _p) \ |
101 | 0 | ( (_p)?(_new_buf + (_p-_org_buf)):(0) ) |
102 | | |
103 | | #define TIMEVAL_MS_DIFF(_tva, _tvb) \ |
104 | | ((((_tvb).tv_sec * 1000000UL + (_tvb).tv_usec) - \ |
105 | | ((_tva).tv_sec * 1000000UL + (_tva).tv_usec)) / 1000UL) |
106 | | |
107 | | /** |
108 | | * _add_last() - Walk the @next_member field of any struct and append last. |
109 | | * @what: Pointer to the struct that is to be appended. |
110 | | * @where: Pointer to the list that is to be appended to. |
111 | | * @next_member: The name of the member used to link to the next ones. |
112 | | * |
113 | | * If the list @where is NULL, @what will be assigned to it. |
114 | | */ |
115 | | #define _add_last(what, where, next_member) \ |
116 | 219k | do { \ |
117 | 219k | if (!(where)) { \ |
118 | 4.82k | (where) = (what); \ |
119 | 214k | } else { \ |
120 | 214k | typeof(where) __wit = (where); \ |
121 | 37.2M | while (__wit->next_member) \ |
122 | 36.9M | __wit = __wit->next_member; \ |
123 | 214k | __wit->next_member = (what); \ |
124 | 214k | } \ |
125 | 219k | } while (0) |
126 | | |
127 | | /** |
128 | | * add_last() - Walk the "->next" field of any struct and append last. |
129 | | * @what: Pointer to the struct that is to be appended. |
130 | | * @where: Pointer to the list that is to be appended to. |
131 | | * |
132 | | * If the list @where is NULL, @what will be assigned to it. |
133 | | */ |
134 | | #define add_last(what, where) \ |
135 | 0 | _add_last(what, where, next) |
136 | | |
137 | | /** |
138 | | * pkg_free_all() - pkg_free() each element of the given (circular) list. |
139 | | * @things: Pointer to the list that is to be freed in succession. |
140 | | * |
141 | | * The list is walked using "->next". |
142 | | */ |
143 | | #define pkg_free_all(things) \ |
144 | | do { \ |
145 | | typeof(things) pos = NULL, head = (things); \ |
146 | | while ((things) && ((things) != head || !pos)) \ |
147 | | { pos = (things); (things) = (things)->next; pkg_free(pos); } \ |
148 | | } while (0) |
149 | | |
150 | | /** |
151 | | * shm_free_all() - shm_free() each element of the given (circular) list. |
152 | | * @things: Pointer to the list that is to be freed in succession. |
153 | | * |
154 | | * The list is walked using "->next". |
155 | | */ |
156 | | #define shm_free_all(things) \ |
157 | | do { \ |
158 | | typeof(things) pos = NULL, head = (things); \ |
159 | | while ((things) && ((things) != head || !pos)) \ |
160 | | { pos = (things); (things) = (things)->next; shm_free(pos); } \ |
161 | | } while (0) |
162 | | |
163 | | #define via_len(_via) \ |
164 | | ((_via)->bsize-((_via)->name.s-\ |
165 | | ((_via)->hdr.s+(_via)->hdr.len))) |
166 | | |
167 | | #ifdef __GNUC__ |
168 | | #define ALLOW_UNUSED __attribute__ ((unused)) |
169 | | #else |
170 | | #define ALLOW_UNUSED |
171 | | #endif |
172 | | |
173 | | #define PTR_STRING_SIZE 2+16+1 |
174 | | #define PTR_STR_SIZE 2+16 |
175 | | |
176 | | /* char to hex conversion table */ |
177 | | static char fourbits2char[16] = { '0', '1', '2', '3', '4', '5', |
178 | | '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f' }; |
179 | | |
180 | | |
181 | | /* converts a str to an u. short, returns the u. short and sets *err on |
182 | | * error and if err!=null |
183 | | */ |
184 | | static inline unsigned short str2s(const char* s, unsigned int len, |
185 | | int *err) |
186 | 3.11k | { |
187 | 3.11k | unsigned short ret; |
188 | 3.11k | int i; |
189 | 3.11k | unsigned char *limit; |
190 | 3.11k | unsigned char *str; |
191 | | |
192 | | /*init*/ |
193 | 3.11k | str=(unsigned char*)s; |
194 | 3.11k | ret=i=0; |
195 | 3.11k | limit=str+len; |
196 | | |
197 | 7.96k | for(;str<limit ;str++){ |
198 | 4.87k | if ( (*str <= '9' ) && (*str >= '0') ){ |
199 | 4.86k | ret=ret*10+*str-'0'; |
200 | 4.86k | i++; |
201 | 4.86k | if (i>5) goto error_digits; |
202 | 4.86k | }else{ |
203 | | //error unknown char |
204 | 12 | goto error_char; |
205 | 12 | } |
206 | 4.87k | } |
207 | 3.09k | if (err) *err=0; |
208 | 3.09k | return ret; |
209 | | |
210 | 5 | error_digits: |
211 | 5 | LM_DBG("too many letters in [%.*s]\n", (int)len, s); |
212 | 5 | if (err) *err=1; |
213 | 5 | return 0; |
214 | 12 | error_char: |
215 | 12 | LM_DBG("unexpected char %c in %.*s\n", *str, (int)len, s); |
216 | 12 | if (err) *err=1; |
217 | 12 | return 0; |
218 | 3.11k | } Unexecuted instantiation: msg_parser.c:str2s Unexecuted instantiation: parse_uri.c:str2s Unexecuted instantiation: parse_fline.c:str2s Unexecuted instantiation: parse_hname2.c:str2s Unexecuted instantiation: parse_content.c:str2s Unexecuted instantiation: hf.c:str2s Unexecuted instantiation: parse_to.c:str2s Line | Count | Source | 186 | 3.11k | { | 187 | 3.11k | unsigned short ret; | 188 | 3.11k | int i; | 189 | 3.11k | unsigned char *limit; | 190 | 3.11k | unsigned char *str; | 191 | | | 192 | | /*init*/ | 193 | 3.11k | str=(unsigned char*)s; | 194 | 3.11k | ret=i=0; | 195 | 3.11k | limit=str+len; | 196 | | | 197 | 7.96k | for(;str<limit ;str++){ | 198 | 4.87k | if ( (*str <= '9' ) && (*str >= '0') ){ | 199 | 4.86k | ret=ret*10+*str-'0'; | 200 | 4.86k | i++; | 201 | 4.86k | if (i>5) goto error_digits; | 202 | 4.86k | }else{ | 203 | | //error unknown char | 204 | 12 | goto error_char; | 205 | 12 | } | 206 | 4.87k | } | 207 | 3.09k | if (err) *err=0; | 208 | 3.09k | return ret; | 209 | | | 210 | 5 | error_digits: | 211 | 5 | LM_DBG("too many letters in [%.*s]\n", (int)len, s); | 212 | 5 | if (err) *err=1; | 213 | 5 | return 0; | 214 | 12 | error_char: | 215 | 12 | LM_DBG("unexpected char %c in %.*s\n", *str, (int)len, s); | 216 | 12 | if (err) *err=1; | 217 | 12 | return 0; | 218 | 3.11k | } |
Unexecuted instantiation: dprint.c:str2s Unexecuted instantiation: pt.c:str2s Unexecuted instantiation: strcommon.c:str2s Unexecuted instantiation: ut.c:str2s Unexecuted instantiation: sdp_ops.c:str2s Unexecuted instantiation: statistics.c:str2s Unexecuted instantiation: pvar.c:str2s Unexecuted instantiation: route.c:str2s Unexecuted instantiation: socket_info.c:str2s Unexecuted instantiation: ipc.c:str2s Unexecuted instantiation: core_stats.c:str2s Unexecuted instantiation: route_struct.c:str2s Unexecuted instantiation: dset.c:str2s Unexecuted instantiation: pt_scaling.c:str2s Unexecuted instantiation: pt_load.c:str2s Unexecuted instantiation: sr_module.c:str2s Unexecuted instantiation: action.c:str2s Unexecuted instantiation: flags.c:str2s Unexecuted instantiation: db_insertq.c:str2s Unexecuted instantiation: db.c:str2s Unexecuted instantiation: proto_tcp.c:str2s Unexecuted instantiation: proto_udp.c:str2s Unexecuted instantiation: trans.c:str2s Unexecuted instantiation: net_tcp_proc.c:str2s Unexecuted instantiation: net_tcp.c:str2s Unexecuted instantiation: tcp_common.c:str2s Unexecuted instantiation: net_udp.c:str2s Unexecuted instantiation: tcp_conn_profile.c:str2s Unexecuted instantiation: trans_trace.c:str2s Unexecuted instantiation: net_tcp_report.c:str2s Unexecuted instantiation: mi.c:str2s Unexecuted instantiation: item.c:str2s Unexecuted instantiation: sdp.c:str2s Unexecuted instantiation: sdp_helpr_funcs.c:str2s Unexecuted instantiation: digest_parser.c:str2s Unexecuted instantiation: param_parser.c:str2s Unexecuted instantiation: parse_contact.c:str2s Unexecuted instantiation: parse_body.c:str2s Unexecuted instantiation: parse_security.c:str2s Unexecuted instantiation: parse_call_info.c:str2s Unexecuted instantiation: parse_event.c:str2s Unexecuted instantiation: parse_disposition.c:str2s Unexecuted instantiation: parse_authenticate.c:str2s Unexecuted instantiation: parser_f.c:str2s Unexecuted instantiation: parse_rpid.c:str2s Unexecuted instantiation: parse_ppi.c:str2s Unexecuted instantiation: parse_fcaps.c:str2s Unexecuted instantiation: parse_rr.c:str2s Unexecuted instantiation: parse_param.c:str2s Unexecuted instantiation: parse_diversion.c:str2s Unexecuted instantiation: parse_nameaddr.c:str2s Unexecuted instantiation: parse_expires.c:str2s Unexecuted instantiation: parse_refer_to.c:str2s Unexecuted instantiation: parse_from.c:str2s Unexecuted instantiation: parse_pai.c:str2s Unexecuted instantiation: event_interface.c:str2s Unexecuted instantiation: receive.c:str2s Unexecuted instantiation: ip_addr.c:str2s Unexecuted instantiation: async.c:str2s Unexecuted instantiation: daemonize.c:str2s Unexecuted instantiation: timer.c:str2s Unexecuted instantiation: trace_api.c:str2s Unexecuted instantiation: mod_fix.c:str2s Unexecuted instantiation: reactor.c:str2s Unexecuted instantiation: forward.c:str2s Unexecuted instantiation: xlog.c:str2s Unexecuted instantiation: blacklists.c:str2s Unexecuted instantiation: usr_avp.c:str2s Unexecuted instantiation: resolve.c:str2s Unexecuted instantiation: io_wait.c:str2s Unexecuted instantiation: transformations.c:str2s Unexecuted instantiation: sr_module_deps.c:str2s Unexecuted instantiation: cfg_reload.c:str2s Unexecuted instantiation: time_rec.c:str2s Unexecuted instantiation: status_report.c:str2s Unexecuted instantiation: signals.c:str2s Unexecuted instantiation: db_id.c:str2s Unexecuted instantiation: csv.c:str2s Unexecuted instantiation: msg_translator.c:str2s Unexecuted instantiation: md5utils.c:str2s Unexecuted instantiation: cfg.tab.c:str2s Unexecuted instantiation: modparam.c:str2s Unexecuted instantiation: crc.c:str2s Unexecuted instantiation: lex.yy.c:str2s Unexecuted instantiation: cfg_pp.c:str2s Unexecuted instantiation: shutdown.c:str2s Unexecuted instantiation: core_cmds.c:str2s Unexecuted instantiation: cachedb.c:str2s Unexecuted instantiation: cachedb_id.c:str2s |
219 | | |
220 | | |
221 | | static inline int btostr( char *p, unsigned char val) |
222 | 0 | { |
223 | 0 | unsigned int a,b,i =0; |
224 | 0 |
|
225 | 0 | if ( (a=val/100)!=0 ) |
226 | 0 | *(p+(i++)) = a+'0'; /*first digit*/ |
227 | 0 | if ( (b=val%100/10)!=0 || a) |
228 | 0 | *(p+(i++)) = b+'0'; /*second digit*/ |
229 | 0 | *(p+(i++)) = '0'+val%10; /*third digit*/ |
230 | 0 |
|
231 | 0 | return i; |
232 | 0 | } Unexecuted instantiation: msg_parser.c:btostr Unexecuted instantiation: parse_uri.c:btostr Unexecuted instantiation: parse_fline.c:btostr Unexecuted instantiation: parse_hname2.c:btostr Unexecuted instantiation: parse_content.c:btostr Unexecuted instantiation: hf.c:btostr Unexecuted instantiation: parse_to.c:btostr Unexecuted instantiation: parse_via.c:btostr Unexecuted instantiation: dprint.c:btostr Unexecuted instantiation: pt.c:btostr Unexecuted instantiation: strcommon.c:btostr Unexecuted instantiation: ut.c:btostr Unexecuted instantiation: sdp_ops.c:btostr Unexecuted instantiation: statistics.c:btostr Unexecuted instantiation: pvar.c:btostr Unexecuted instantiation: route.c:btostr Unexecuted instantiation: socket_info.c:btostr Unexecuted instantiation: ipc.c:btostr Unexecuted instantiation: core_stats.c:btostr Unexecuted instantiation: route_struct.c:btostr Unexecuted instantiation: dset.c:btostr Unexecuted instantiation: pt_scaling.c:btostr Unexecuted instantiation: pt_load.c:btostr Unexecuted instantiation: sr_module.c:btostr Unexecuted instantiation: action.c:btostr Unexecuted instantiation: flags.c:btostr Unexecuted instantiation: db_insertq.c:btostr Unexecuted instantiation: db.c:btostr Unexecuted instantiation: proto_tcp.c:btostr Unexecuted instantiation: proto_udp.c:btostr Unexecuted instantiation: trans.c:btostr Unexecuted instantiation: net_tcp_proc.c:btostr Unexecuted instantiation: net_tcp.c:btostr Unexecuted instantiation: tcp_common.c:btostr Unexecuted instantiation: net_udp.c:btostr Unexecuted instantiation: tcp_conn_profile.c:btostr Unexecuted instantiation: trans_trace.c:btostr Unexecuted instantiation: net_tcp_report.c:btostr Unexecuted instantiation: mi.c:btostr Unexecuted instantiation: item.c:btostr Unexecuted instantiation: sdp.c:btostr Unexecuted instantiation: sdp_helpr_funcs.c:btostr Unexecuted instantiation: digest_parser.c:btostr Unexecuted instantiation: param_parser.c:btostr Unexecuted instantiation: parse_contact.c:btostr Unexecuted instantiation: parse_body.c:btostr Unexecuted instantiation: parse_security.c:btostr Unexecuted instantiation: parse_call_info.c:btostr Unexecuted instantiation: parse_event.c:btostr Unexecuted instantiation: parse_disposition.c:btostr Unexecuted instantiation: parse_authenticate.c:btostr Unexecuted instantiation: parser_f.c:btostr Unexecuted instantiation: parse_rpid.c:btostr Unexecuted instantiation: parse_ppi.c:btostr Unexecuted instantiation: parse_fcaps.c:btostr Unexecuted instantiation: parse_rr.c:btostr Unexecuted instantiation: parse_param.c:btostr Unexecuted instantiation: parse_diversion.c:btostr Unexecuted instantiation: parse_nameaddr.c:btostr Unexecuted instantiation: parse_expires.c:btostr Unexecuted instantiation: parse_refer_to.c:btostr Unexecuted instantiation: parse_from.c:btostr Unexecuted instantiation: parse_pai.c:btostr Unexecuted instantiation: event_interface.c:btostr Unexecuted instantiation: receive.c:btostr Unexecuted instantiation: ip_addr.c:btostr Unexecuted instantiation: async.c:btostr Unexecuted instantiation: daemonize.c:btostr Unexecuted instantiation: timer.c:btostr Unexecuted instantiation: trace_api.c:btostr Unexecuted instantiation: mod_fix.c:btostr Unexecuted instantiation: reactor.c:btostr Unexecuted instantiation: forward.c:btostr Unexecuted instantiation: xlog.c:btostr Unexecuted instantiation: blacklists.c:btostr Unexecuted instantiation: usr_avp.c:btostr Unexecuted instantiation: resolve.c:btostr Unexecuted instantiation: io_wait.c:btostr Unexecuted instantiation: transformations.c:btostr Unexecuted instantiation: sr_module_deps.c:btostr Unexecuted instantiation: cfg_reload.c:btostr Unexecuted instantiation: time_rec.c:btostr Unexecuted instantiation: status_report.c:btostr Unexecuted instantiation: signals.c:btostr Unexecuted instantiation: db_id.c:btostr Unexecuted instantiation: csv.c:btostr Unexecuted instantiation: msg_translator.c:btostr Unexecuted instantiation: md5utils.c:btostr Unexecuted instantiation: cfg.tab.c:btostr Unexecuted instantiation: modparam.c:btostr Unexecuted instantiation: crc.c:btostr Unexecuted instantiation: lex.yy.c:btostr Unexecuted instantiation: cfg_pp.c:btostr Unexecuted instantiation: shutdown.c:btostr Unexecuted instantiation: core_cmds.c:btostr Unexecuted instantiation: cachedb.c:btostr Unexecuted instantiation: cachedb_id.c:btostr |
233 | | |
234 | | static inline int rctostr( char *p, unsigned int val) |
235 | 0 | { |
236 | 0 | unsigned int a,b,i =0; |
237 | 0 |
|
238 | 0 | if ( (a=val/100)!=0 ) |
239 | 0 | *(p+(i++)) = a+'0'; /*first digit*/ |
240 | 0 | if ( (b=val%100/10)!=0 || a) |
241 | 0 | *(p+(i++)) = b+'0'; /*second digit*/ |
242 | 0 | *(p+(i++)) = '0'+val%10; /*third digit*/ |
243 | 0 |
|
244 | 0 | return i; |
245 | 0 | } Unexecuted instantiation: msg_parser.c:rctostr Unexecuted instantiation: parse_uri.c:rctostr Unexecuted instantiation: parse_fline.c:rctostr Unexecuted instantiation: parse_hname2.c:rctostr Unexecuted instantiation: parse_content.c:rctostr Unexecuted instantiation: hf.c:rctostr Unexecuted instantiation: parse_to.c:rctostr Unexecuted instantiation: parse_via.c:rctostr Unexecuted instantiation: dprint.c:rctostr Unexecuted instantiation: pt.c:rctostr Unexecuted instantiation: strcommon.c:rctostr Unexecuted instantiation: ut.c:rctostr Unexecuted instantiation: sdp_ops.c:rctostr Unexecuted instantiation: statistics.c:rctostr Unexecuted instantiation: pvar.c:rctostr Unexecuted instantiation: route.c:rctostr Unexecuted instantiation: socket_info.c:rctostr Unexecuted instantiation: ipc.c:rctostr Unexecuted instantiation: core_stats.c:rctostr Unexecuted instantiation: route_struct.c:rctostr Unexecuted instantiation: dset.c:rctostr Unexecuted instantiation: pt_scaling.c:rctostr Unexecuted instantiation: pt_load.c:rctostr Unexecuted instantiation: sr_module.c:rctostr Unexecuted instantiation: action.c:rctostr Unexecuted instantiation: flags.c:rctostr Unexecuted instantiation: db_insertq.c:rctostr Unexecuted instantiation: db.c:rctostr Unexecuted instantiation: proto_tcp.c:rctostr Unexecuted instantiation: proto_udp.c:rctostr Unexecuted instantiation: trans.c:rctostr Unexecuted instantiation: net_tcp_proc.c:rctostr Unexecuted instantiation: net_tcp.c:rctostr Unexecuted instantiation: tcp_common.c:rctostr Unexecuted instantiation: net_udp.c:rctostr Unexecuted instantiation: tcp_conn_profile.c:rctostr Unexecuted instantiation: trans_trace.c:rctostr Unexecuted instantiation: net_tcp_report.c:rctostr Unexecuted instantiation: mi.c:rctostr Unexecuted instantiation: item.c:rctostr Unexecuted instantiation: sdp.c:rctostr Unexecuted instantiation: sdp_helpr_funcs.c:rctostr Unexecuted instantiation: digest_parser.c:rctostr Unexecuted instantiation: param_parser.c:rctostr Unexecuted instantiation: parse_contact.c:rctostr Unexecuted instantiation: parse_body.c:rctostr Unexecuted instantiation: parse_security.c:rctostr Unexecuted instantiation: parse_call_info.c:rctostr Unexecuted instantiation: parse_event.c:rctostr Unexecuted instantiation: parse_disposition.c:rctostr Unexecuted instantiation: parse_authenticate.c:rctostr Unexecuted instantiation: parser_f.c:rctostr Unexecuted instantiation: parse_rpid.c:rctostr Unexecuted instantiation: parse_ppi.c:rctostr Unexecuted instantiation: parse_fcaps.c:rctostr Unexecuted instantiation: parse_rr.c:rctostr Unexecuted instantiation: parse_param.c:rctostr Unexecuted instantiation: parse_diversion.c:rctostr Unexecuted instantiation: parse_nameaddr.c:rctostr Unexecuted instantiation: parse_expires.c:rctostr Unexecuted instantiation: parse_refer_to.c:rctostr Unexecuted instantiation: parse_from.c:rctostr Unexecuted instantiation: parse_pai.c:rctostr Unexecuted instantiation: event_interface.c:rctostr Unexecuted instantiation: receive.c:rctostr Unexecuted instantiation: ip_addr.c:rctostr Unexecuted instantiation: async.c:rctostr Unexecuted instantiation: daemonize.c:rctostr Unexecuted instantiation: timer.c:rctostr Unexecuted instantiation: trace_api.c:rctostr Unexecuted instantiation: mod_fix.c:rctostr Unexecuted instantiation: reactor.c:rctostr Unexecuted instantiation: forward.c:rctostr Unexecuted instantiation: xlog.c:rctostr Unexecuted instantiation: blacklists.c:rctostr Unexecuted instantiation: usr_avp.c:rctostr Unexecuted instantiation: resolve.c:rctostr Unexecuted instantiation: io_wait.c:rctostr Unexecuted instantiation: transformations.c:rctostr Unexecuted instantiation: sr_module_deps.c:rctostr Unexecuted instantiation: cfg_reload.c:rctostr Unexecuted instantiation: time_rec.c:rctostr Unexecuted instantiation: status_report.c:rctostr Unexecuted instantiation: signals.c:rctostr Unexecuted instantiation: db_id.c:rctostr Unexecuted instantiation: csv.c:rctostr Unexecuted instantiation: msg_translator.c:rctostr Unexecuted instantiation: md5utils.c:rctostr Unexecuted instantiation: cfg.tab.c:rctostr Unexecuted instantiation: modparam.c:rctostr Unexecuted instantiation: crc.c:rctostr Unexecuted instantiation: lex.yy.c:rctostr Unexecuted instantiation: cfg_pp.c:rctostr Unexecuted instantiation: shutdown.c:rctostr Unexecuted instantiation: core_cmds.c:rctostr Unexecuted instantiation: cachedb.c:rctostr Unexecuted instantiation: cachedb_id.c:rctostr |
246 | | |
247 | | /* 2^64~= 16*10^18 => 19+1+1 sign + digits + \0 */ |
248 | 0 | #define INT2STR_MAX_LEN (1+19+1+1) |
249 | | |
250 | | /* INTeger-TO-Buffer-STRing : converts a 64-bit integer to a string |
251 | | * IMPORTANT: the provided buffer must be at least INT2STR_MAX_LEN size !! */ |
252 | | static inline char* int2bstr(uint64_t l, char *s, int* len) |
253 | 0 | { |
254 | 0 | int i; |
255 | |
|
256 | 0 | i=INT2STR_MAX_LEN-2; |
257 | 0 | s[INT2STR_MAX_LEN-1]=0; /* null terminate */ |
258 | 0 | do{ |
259 | 0 | s[i]=l%10+'0'; |
260 | 0 | i--; |
261 | 0 | l/=10; |
262 | 0 | }while(l && (i>=0)); |
263 | 0 | if (l && (i<0)){ |
264 | 0 | LM_CRIT("overflow error\n"); |
265 | 0 | } |
266 | 0 | if (len) *len=(INT2STR_MAX_LEN-2)-i; |
267 | 0 | return &s[i+1]; |
268 | 0 | } Unexecuted instantiation: msg_parser.c:int2bstr Unexecuted instantiation: parse_uri.c:int2bstr Unexecuted instantiation: parse_fline.c:int2bstr Unexecuted instantiation: parse_hname2.c:int2bstr Unexecuted instantiation: parse_content.c:int2bstr Unexecuted instantiation: hf.c:int2bstr Unexecuted instantiation: parse_to.c:int2bstr Unexecuted instantiation: parse_via.c:int2bstr Unexecuted instantiation: dprint.c:int2bstr Unexecuted instantiation: pt.c:int2bstr Unexecuted instantiation: strcommon.c:int2bstr Unexecuted instantiation: ut.c:int2bstr Unexecuted instantiation: sdp_ops.c:int2bstr Unexecuted instantiation: statistics.c:int2bstr Unexecuted instantiation: pvar.c:int2bstr Unexecuted instantiation: route.c:int2bstr Unexecuted instantiation: socket_info.c:int2bstr Unexecuted instantiation: ipc.c:int2bstr Unexecuted instantiation: core_stats.c:int2bstr Unexecuted instantiation: route_struct.c:int2bstr Unexecuted instantiation: dset.c:int2bstr Unexecuted instantiation: pt_scaling.c:int2bstr Unexecuted instantiation: pt_load.c:int2bstr Unexecuted instantiation: sr_module.c:int2bstr Unexecuted instantiation: action.c:int2bstr Unexecuted instantiation: flags.c:int2bstr Unexecuted instantiation: db_insertq.c:int2bstr Unexecuted instantiation: db.c:int2bstr Unexecuted instantiation: proto_tcp.c:int2bstr Unexecuted instantiation: proto_udp.c:int2bstr Unexecuted instantiation: trans.c:int2bstr Unexecuted instantiation: net_tcp_proc.c:int2bstr Unexecuted instantiation: net_tcp.c:int2bstr Unexecuted instantiation: tcp_common.c:int2bstr Unexecuted instantiation: net_udp.c:int2bstr Unexecuted instantiation: tcp_conn_profile.c:int2bstr Unexecuted instantiation: trans_trace.c:int2bstr Unexecuted instantiation: net_tcp_report.c:int2bstr Unexecuted instantiation: mi.c:int2bstr Unexecuted instantiation: item.c:int2bstr Unexecuted instantiation: sdp.c:int2bstr Unexecuted instantiation: sdp_helpr_funcs.c:int2bstr Unexecuted instantiation: digest_parser.c:int2bstr Unexecuted instantiation: param_parser.c:int2bstr Unexecuted instantiation: parse_contact.c:int2bstr Unexecuted instantiation: parse_body.c:int2bstr Unexecuted instantiation: parse_security.c:int2bstr Unexecuted instantiation: parse_call_info.c:int2bstr Unexecuted instantiation: parse_event.c:int2bstr Unexecuted instantiation: parse_disposition.c:int2bstr Unexecuted instantiation: parse_authenticate.c:int2bstr Unexecuted instantiation: parser_f.c:int2bstr Unexecuted instantiation: parse_rpid.c:int2bstr Unexecuted instantiation: parse_ppi.c:int2bstr Unexecuted instantiation: parse_fcaps.c:int2bstr Unexecuted instantiation: parse_rr.c:int2bstr Unexecuted instantiation: parse_param.c:int2bstr Unexecuted instantiation: parse_diversion.c:int2bstr Unexecuted instantiation: parse_nameaddr.c:int2bstr Unexecuted instantiation: parse_expires.c:int2bstr Unexecuted instantiation: parse_refer_to.c:int2bstr Unexecuted instantiation: parse_from.c:int2bstr Unexecuted instantiation: parse_pai.c:int2bstr Unexecuted instantiation: event_interface.c:int2bstr Unexecuted instantiation: receive.c:int2bstr Unexecuted instantiation: ip_addr.c:int2bstr Unexecuted instantiation: async.c:int2bstr Unexecuted instantiation: daemonize.c:int2bstr Unexecuted instantiation: timer.c:int2bstr Unexecuted instantiation: trace_api.c:int2bstr Unexecuted instantiation: mod_fix.c:int2bstr Unexecuted instantiation: reactor.c:int2bstr Unexecuted instantiation: forward.c:int2bstr Unexecuted instantiation: xlog.c:int2bstr Unexecuted instantiation: blacklists.c:int2bstr Unexecuted instantiation: usr_avp.c:int2bstr Unexecuted instantiation: resolve.c:int2bstr Unexecuted instantiation: io_wait.c:int2bstr Unexecuted instantiation: transformations.c:int2bstr Unexecuted instantiation: sr_module_deps.c:int2bstr Unexecuted instantiation: cfg_reload.c:int2bstr Unexecuted instantiation: time_rec.c:int2bstr Unexecuted instantiation: status_report.c:int2bstr Unexecuted instantiation: signals.c:int2bstr Unexecuted instantiation: db_id.c:int2bstr Unexecuted instantiation: csv.c:int2bstr Unexecuted instantiation: msg_translator.c:int2bstr Unexecuted instantiation: md5utils.c:int2bstr Unexecuted instantiation: cfg.tab.c:int2bstr Unexecuted instantiation: modparam.c:int2bstr Unexecuted instantiation: crc.c:int2bstr Unexecuted instantiation: lex.yy.c:int2bstr Unexecuted instantiation: cfg_pp.c:int2bstr Unexecuted instantiation: shutdown.c:int2bstr Unexecuted instantiation: core_cmds.c:int2bstr Unexecuted instantiation: cachedb.c:int2bstr Unexecuted instantiation: cachedb_id.c:int2bstr |
269 | | |
270 | | |
271 | | /* INTeger-TO-STRing : convers a 64-bit integer to a string |
272 | | * returns a pointer to a static buffer containing l in asciiz & sets len */ |
273 | 0 | #define INT2STR_BUF_NO 7 |
274 | | extern unsigned int int2str_buf_index; |
275 | | extern char int2str_buf[INT2STR_BUF_NO][INT2STR_MAX_LEN]; |
276 | 0 | static inline unsigned int getstrbufindex(void) { |
277 | 0 | return ((int2str_buf_index++) % INT2STR_BUF_NO); |
278 | 0 | } Unexecuted instantiation: msg_parser.c:getstrbufindex Unexecuted instantiation: parse_uri.c:getstrbufindex Unexecuted instantiation: parse_fline.c:getstrbufindex Unexecuted instantiation: parse_hname2.c:getstrbufindex Unexecuted instantiation: parse_content.c:getstrbufindex Unexecuted instantiation: hf.c:getstrbufindex Unexecuted instantiation: parse_to.c:getstrbufindex Unexecuted instantiation: parse_via.c:getstrbufindex Unexecuted instantiation: dprint.c:getstrbufindex Unexecuted instantiation: pt.c:getstrbufindex Unexecuted instantiation: strcommon.c:getstrbufindex Unexecuted instantiation: ut.c:getstrbufindex Unexecuted instantiation: sdp_ops.c:getstrbufindex Unexecuted instantiation: statistics.c:getstrbufindex Unexecuted instantiation: pvar.c:getstrbufindex Unexecuted instantiation: route.c:getstrbufindex Unexecuted instantiation: socket_info.c:getstrbufindex Unexecuted instantiation: ipc.c:getstrbufindex Unexecuted instantiation: core_stats.c:getstrbufindex Unexecuted instantiation: route_struct.c:getstrbufindex Unexecuted instantiation: dset.c:getstrbufindex Unexecuted instantiation: pt_scaling.c:getstrbufindex Unexecuted instantiation: pt_load.c:getstrbufindex Unexecuted instantiation: sr_module.c:getstrbufindex Unexecuted instantiation: action.c:getstrbufindex Unexecuted instantiation: flags.c:getstrbufindex Unexecuted instantiation: db_insertq.c:getstrbufindex Unexecuted instantiation: db.c:getstrbufindex Unexecuted instantiation: proto_tcp.c:getstrbufindex Unexecuted instantiation: proto_udp.c:getstrbufindex Unexecuted instantiation: trans.c:getstrbufindex Unexecuted instantiation: net_tcp_proc.c:getstrbufindex Unexecuted instantiation: net_tcp.c:getstrbufindex Unexecuted instantiation: tcp_common.c:getstrbufindex Unexecuted instantiation: net_udp.c:getstrbufindex Unexecuted instantiation: tcp_conn_profile.c:getstrbufindex Unexecuted instantiation: trans_trace.c:getstrbufindex Unexecuted instantiation: net_tcp_report.c:getstrbufindex Unexecuted instantiation: mi.c:getstrbufindex Unexecuted instantiation: item.c:getstrbufindex Unexecuted instantiation: sdp.c:getstrbufindex Unexecuted instantiation: sdp_helpr_funcs.c:getstrbufindex Unexecuted instantiation: digest_parser.c:getstrbufindex Unexecuted instantiation: param_parser.c:getstrbufindex Unexecuted instantiation: parse_contact.c:getstrbufindex Unexecuted instantiation: parse_body.c:getstrbufindex Unexecuted instantiation: parse_security.c:getstrbufindex Unexecuted instantiation: parse_call_info.c:getstrbufindex Unexecuted instantiation: parse_event.c:getstrbufindex Unexecuted instantiation: parse_disposition.c:getstrbufindex Unexecuted instantiation: parse_authenticate.c:getstrbufindex Unexecuted instantiation: parser_f.c:getstrbufindex Unexecuted instantiation: parse_rpid.c:getstrbufindex Unexecuted instantiation: parse_ppi.c:getstrbufindex Unexecuted instantiation: parse_fcaps.c:getstrbufindex Unexecuted instantiation: parse_rr.c:getstrbufindex Unexecuted instantiation: parse_param.c:getstrbufindex Unexecuted instantiation: parse_diversion.c:getstrbufindex Unexecuted instantiation: parse_nameaddr.c:getstrbufindex Unexecuted instantiation: parse_expires.c:getstrbufindex Unexecuted instantiation: parse_refer_to.c:getstrbufindex Unexecuted instantiation: parse_from.c:getstrbufindex Unexecuted instantiation: parse_pai.c:getstrbufindex Unexecuted instantiation: event_interface.c:getstrbufindex Unexecuted instantiation: receive.c:getstrbufindex Unexecuted instantiation: ip_addr.c:getstrbufindex Unexecuted instantiation: async.c:getstrbufindex Unexecuted instantiation: daemonize.c:getstrbufindex Unexecuted instantiation: timer.c:getstrbufindex Unexecuted instantiation: trace_api.c:getstrbufindex Unexecuted instantiation: mod_fix.c:getstrbufindex Unexecuted instantiation: reactor.c:getstrbufindex Unexecuted instantiation: forward.c:getstrbufindex Unexecuted instantiation: xlog.c:getstrbufindex Unexecuted instantiation: blacklists.c:getstrbufindex Unexecuted instantiation: usr_avp.c:getstrbufindex Unexecuted instantiation: resolve.c:getstrbufindex Unexecuted instantiation: io_wait.c:getstrbufindex Unexecuted instantiation: transformations.c:getstrbufindex Unexecuted instantiation: sr_module_deps.c:getstrbufindex Unexecuted instantiation: cfg_reload.c:getstrbufindex Unexecuted instantiation: time_rec.c:getstrbufindex Unexecuted instantiation: status_report.c:getstrbufindex Unexecuted instantiation: signals.c:getstrbufindex Unexecuted instantiation: db_id.c:getstrbufindex Unexecuted instantiation: csv.c:getstrbufindex Unexecuted instantiation: msg_translator.c:getstrbufindex Unexecuted instantiation: md5utils.c:getstrbufindex Unexecuted instantiation: cfg.tab.c:getstrbufindex Unexecuted instantiation: modparam.c:getstrbufindex Unexecuted instantiation: crc.c:getstrbufindex Unexecuted instantiation: lex.yy.c:getstrbufindex Unexecuted instantiation: cfg_pp.c:getstrbufindex Unexecuted instantiation: shutdown.c:getstrbufindex Unexecuted instantiation: core_cmds.c:getstrbufindex Unexecuted instantiation: cachedb.c:getstrbufindex Unexecuted instantiation: cachedb_id.c:getstrbufindex |
279 | | |
280 | | static inline char* int2str(uint64_t l, int* len) |
281 | 0 | { |
282 | 0 | return int2bstr( l, int2str_buf[getstrbufindex()], len); |
283 | 0 | } Unexecuted instantiation: msg_parser.c:int2str Unexecuted instantiation: parse_uri.c:int2str Unexecuted instantiation: parse_fline.c:int2str Unexecuted instantiation: parse_hname2.c:int2str Unexecuted instantiation: parse_content.c:int2str Unexecuted instantiation: hf.c:int2str Unexecuted instantiation: parse_to.c:int2str Unexecuted instantiation: parse_via.c:int2str Unexecuted instantiation: dprint.c:int2str Unexecuted instantiation: pt.c:int2str Unexecuted instantiation: strcommon.c:int2str Unexecuted instantiation: ut.c:int2str Unexecuted instantiation: sdp_ops.c:int2str Unexecuted instantiation: statistics.c:int2str Unexecuted instantiation: pvar.c:int2str Unexecuted instantiation: route.c:int2str Unexecuted instantiation: socket_info.c:int2str Unexecuted instantiation: ipc.c:int2str Unexecuted instantiation: core_stats.c:int2str Unexecuted instantiation: route_struct.c:int2str Unexecuted instantiation: dset.c:int2str Unexecuted instantiation: pt_scaling.c:int2str Unexecuted instantiation: pt_load.c:int2str Unexecuted instantiation: sr_module.c:int2str Unexecuted instantiation: action.c:int2str Unexecuted instantiation: flags.c:int2str Unexecuted instantiation: db_insertq.c:int2str Unexecuted instantiation: db.c:int2str Unexecuted instantiation: proto_tcp.c:int2str Unexecuted instantiation: proto_udp.c:int2str Unexecuted instantiation: trans.c:int2str Unexecuted instantiation: net_tcp_proc.c:int2str Unexecuted instantiation: net_tcp.c:int2str Unexecuted instantiation: tcp_common.c:int2str Unexecuted instantiation: net_udp.c:int2str Unexecuted instantiation: tcp_conn_profile.c:int2str Unexecuted instantiation: trans_trace.c:int2str Unexecuted instantiation: net_tcp_report.c:int2str Unexecuted instantiation: mi.c:int2str Unexecuted instantiation: item.c:int2str Unexecuted instantiation: sdp.c:int2str Unexecuted instantiation: sdp_helpr_funcs.c:int2str Unexecuted instantiation: digest_parser.c:int2str Unexecuted instantiation: param_parser.c:int2str Unexecuted instantiation: parse_contact.c:int2str Unexecuted instantiation: parse_body.c:int2str Unexecuted instantiation: parse_security.c:int2str Unexecuted instantiation: parse_call_info.c:int2str Unexecuted instantiation: parse_event.c:int2str Unexecuted instantiation: parse_disposition.c:int2str Unexecuted instantiation: parse_authenticate.c:int2str Unexecuted instantiation: parser_f.c:int2str Unexecuted instantiation: parse_rpid.c:int2str Unexecuted instantiation: parse_ppi.c:int2str Unexecuted instantiation: parse_fcaps.c:int2str Unexecuted instantiation: parse_rr.c:int2str Unexecuted instantiation: parse_param.c:int2str Unexecuted instantiation: parse_diversion.c:int2str Unexecuted instantiation: parse_nameaddr.c:int2str Unexecuted instantiation: parse_expires.c:int2str Unexecuted instantiation: parse_refer_to.c:int2str Unexecuted instantiation: parse_from.c:int2str Unexecuted instantiation: parse_pai.c:int2str Unexecuted instantiation: event_interface.c:int2str Unexecuted instantiation: receive.c:int2str Unexecuted instantiation: ip_addr.c:int2str Unexecuted instantiation: async.c:int2str Unexecuted instantiation: daemonize.c:int2str Unexecuted instantiation: timer.c:int2str Unexecuted instantiation: trace_api.c:int2str Unexecuted instantiation: mod_fix.c:int2str Unexecuted instantiation: reactor.c:int2str Unexecuted instantiation: forward.c:int2str Unexecuted instantiation: xlog.c:int2str Unexecuted instantiation: blacklists.c:int2str Unexecuted instantiation: usr_avp.c:int2str Unexecuted instantiation: resolve.c:int2str Unexecuted instantiation: io_wait.c:int2str Unexecuted instantiation: transformations.c:int2str Unexecuted instantiation: sr_module_deps.c:int2str Unexecuted instantiation: cfg_reload.c:int2str Unexecuted instantiation: time_rec.c:int2str Unexecuted instantiation: status_report.c:int2str Unexecuted instantiation: signals.c:int2str Unexecuted instantiation: db_id.c:int2str Unexecuted instantiation: csv.c:int2str Unexecuted instantiation: msg_translator.c:int2str Unexecuted instantiation: md5utils.c:int2str Unexecuted instantiation: cfg.tab.c:int2str Unexecuted instantiation: modparam.c:int2str Unexecuted instantiation: crc.c:int2str Unexecuted instantiation: lex.yy.c:int2str Unexecuted instantiation: cfg_pp.c:int2str Unexecuted instantiation: shutdown.c:int2str Unexecuted instantiation: core_cmds.c:int2str Unexecuted instantiation: cachedb.c:int2str Unexecuted instantiation: cachedb_id.c:int2str |
284 | | |
285 | | |
286 | | /* Signed INTeger-TO-STRing: convers a long to a string |
287 | | * returns a pointer to a static buffer containing l in asciiz & sets len */ |
288 | | static inline char* sint2str(long l, int* len) |
289 | 0 | { |
290 | 0 | int sign; |
291 | 0 | char *p; |
292 | |
|
293 | 0 | sign = 0; |
294 | 0 | if(l<0) { |
295 | 0 | sign = 1; |
296 | 0 | l = -l; |
297 | 0 | } |
298 | 0 | p = int2str((unsigned long)l, len); |
299 | 0 | if(sign) { |
300 | 0 | *(--p) = '-'; |
301 | 0 | if (len) (*len)++; |
302 | 0 | } |
303 | 0 | return p; |
304 | 0 | } Unexecuted instantiation: msg_parser.c:sint2str Unexecuted instantiation: parse_uri.c:sint2str Unexecuted instantiation: parse_fline.c:sint2str Unexecuted instantiation: parse_hname2.c:sint2str Unexecuted instantiation: parse_content.c:sint2str Unexecuted instantiation: hf.c:sint2str Unexecuted instantiation: parse_to.c:sint2str Unexecuted instantiation: parse_via.c:sint2str Unexecuted instantiation: dprint.c:sint2str Unexecuted instantiation: pt.c:sint2str Unexecuted instantiation: strcommon.c:sint2str Unexecuted instantiation: ut.c:sint2str Unexecuted instantiation: sdp_ops.c:sint2str Unexecuted instantiation: statistics.c:sint2str Unexecuted instantiation: pvar.c:sint2str Unexecuted instantiation: route.c:sint2str Unexecuted instantiation: socket_info.c:sint2str Unexecuted instantiation: ipc.c:sint2str Unexecuted instantiation: core_stats.c:sint2str Unexecuted instantiation: route_struct.c:sint2str Unexecuted instantiation: dset.c:sint2str Unexecuted instantiation: pt_scaling.c:sint2str Unexecuted instantiation: pt_load.c:sint2str Unexecuted instantiation: sr_module.c:sint2str Unexecuted instantiation: action.c:sint2str Unexecuted instantiation: flags.c:sint2str Unexecuted instantiation: db_insertq.c:sint2str Unexecuted instantiation: db.c:sint2str Unexecuted instantiation: proto_tcp.c:sint2str Unexecuted instantiation: proto_udp.c:sint2str Unexecuted instantiation: trans.c:sint2str Unexecuted instantiation: net_tcp_proc.c:sint2str Unexecuted instantiation: net_tcp.c:sint2str Unexecuted instantiation: tcp_common.c:sint2str Unexecuted instantiation: net_udp.c:sint2str Unexecuted instantiation: tcp_conn_profile.c:sint2str Unexecuted instantiation: trans_trace.c:sint2str Unexecuted instantiation: net_tcp_report.c:sint2str Unexecuted instantiation: mi.c:sint2str Unexecuted instantiation: item.c:sint2str Unexecuted instantiation: sdp.c:sint2str Unexecuted instantiation: sdp_helpr_funcs.c:sint2str Unexecuted instantiation: digest_parser.c:sint2str Unexecuted instantiation: param_parser.c:sint2str Unexecuted instantiation: parse_contact.c:sint2str Unexecuted instantiation: parse_body.c:sint2str Unexecuted instantiation: parse_security.c:sint2str Unexecuted instantiation: parse_call_info.c:sint2str Unexecuted instantiation: parse_event.c:sint2str Unexecuted instantiation: parse_disposition.c:sint2str Unexecuted instantiation: parse_authenticate.c:sint2str Unexecuted instantiation: parser_f.c:sint2str Unexecuted instantiation: parse_rpid.c:sint2str Unexecuted instantiation: parse_ppi.c:sint2str Unexecuted instantiation: parse_fcaps.c:sint2str Unexecuted instantiation: parse_rr.c:sint2str Unexecuted instantiation: parse_param.c:sint2str Unexecuted instantiation: parse_diversion.c:sint2str Unexecuted instantiation: parse_nameaddr.c:sint2str Unexecuted instantiation: parse_expires.c:sint2str Unexecuted instantiation: parse_refer_to.c:sint2str Unexecuted instantiation: parse_from.c:sint2str Unexecuted instantiation: parse_pai.c:sint2str Unexecuted instantiation: event_interface.c:sint2str Unexecuted instantiation: receive.c:sint2str Unexecuted instantiation: ip_addr.c:sint2str Unexecuted instantiation: async.c:sint2str Unexecuted instantiation: daemonize.c:sint2str Unexecuted instantiation: timer.c:sint2str Unexecuted instantiation: trace_api.c:sint2str Unexecuted instantiation: mod_fix.c:sint2str Unexecuted instantiation: reactor.c:sint2str Unexecuted instantiation: forward.c:sint2str Unexecuted instantiation: xlog.c:sint2str Unexecuted instantiation: blacklists.c:sint2str Unexecuted instantiation: usr_avp.c:sint2str Unexecuted instantiation: resolve.c:sint2str Unexecuted instantiation: io_wait.c:sint2str Unexecuted instantiation: transformations.c:sint2str Unexecuted instantiation: sr_module_deps.c:sint2str Unexecuted instantiation: cfg_reload.c:sint2str Unexecuted instantiation: time_rec.c:sint2str Unexecuted instantiation: status_report.c:sint2str Unexecuted instantiation: signals.c:sint2str Unexecuted instantiation: db_id.c:sint2str Unexecuted instantiation: csv.c:sint2str Unexecuted instantiation: msg_translator.c:sint2str Unexecuted instantiation: md5utils.c:sint2str Unexecuted instantiation: cfg.tab.c:sint2str Unexecuted instantiation: modparam.c:sint2str Unexecuted instantiation: crc.c:sint2str Unexecuted instantiation: lex.yy.c:sint2str Unexecuted instantiation: cfg_pp.c:sint2str Unexecuted instantiation: shutdown.c:sint2str Unexecuted instantiation: core_cmds.c:sint2str Unexecuted instantiation: cachedb.c:sint2str Unexecuted instantiation: cachedb_id.c:sint2str |
305 | | |
306 | | #define DOUBLE2STR_MAX_LEN INT2STR_MAX_LEN |
307 | | static inline char* double2str(double d, int* len) |
308 | 0 | { |
309 | 0 | unsigned int buf; |
310 | 0 |
|
311 | 0 | buf = getstrbufindex(); |
312 | 0 | *len = snprintf(int2str_buf[buf], INT2STR_MAX_LEN - 1, "%0.*lf", |
313 | 0 | FLOATING_POINT_PRECISION, d); |
314 | 0 | int2str_buf[buf][*len] = '\0'; |
315 | 0 |
|
316 | 0 | return int2str_buf[buf]; |
317 | 0 | } Unexecuted instantiation: msg_parser.c:double2str Unexecuted instantiation: parse_uri.c:double2str Unexecuted instantiation: parse_fline.c:double2str Unexecuted instantiation: parse_hname2.c:double2str Unexecuted instantiation: parse_content.c:double2str Unexecuted instantiation: hf.c:double2str Unexecuted instantiation: parse_to.c:double2str Unexecuted instantiation: parse_via.c:double2str Unexecuted instantiation: dprint.c:double2str Unexecuted instantiation: pt.c:double2str Unexecuted instantiation: strcommon.c:double2str Unexecuted instantiation: ut.c:double2str Unexecuted instantiation: sdp_ops.c:double2str Unexecuted instantiation: statistics.c:double2str Unexecuted instantiation: pvar.c:double2str Unexecuted instantiation: route.c:double2str Unexecuted instantiation: socket_info.c:double2str Unexecuted instantiation: ipc.c:double2str Unexecuted instantiation: core_stats.c:double2str Unexecuted instantiation: route_struct.c:double2str Unexecuted instantiation: dset.c:double2str Unexecuted instantiation: pt_scaling.c:double2str Unexecuted instantiation: pt_load.c:double2str Unexecuted instantiation: sr_module.c:double2str Unexecuted instantiation: action.c:double2str Unexecuted instantiation: flags.c:double2str Unexecuted instantiation: db_insertq.c:double2str Unexecuted instantiation: db.c:double2str Unexecuted instantiation: proto_tcp.c:double2str Unexecuted instantiation: proto_udp.c:double2str Unexecuted instantiation: trans.c:double2str Unexecuted instantiation: net_tcp_proc.c:double2str Unexecuted instantiation: net_tcp.c:double2str Unexecuted instantiation: tcp_common.c:double2str Unexecuted instantiation: net_udp.c:double2str Unexecuted instantiation: tcp_conn_profile.c:double2str Unexecuted instantiation: trans_trace.c:double2str Unexecuted instantiation: net_tcp_report.c:double2str Unexecuted instantiation: mi.c:double2str Unexecuted instantiation: item.c:double2str Unexecuted instantiation: sdp.c:double2str Unexecuted instantiation: sdp_helpr_funcs.c:double2str Unexecuted instantiation: digest_parser.c:double2str Unexecuted instantiation: param_parser.c:double2str Unexecuted instantiation: parse_contact.c:double2str Unexecuted instantiation: parse_body.c:double2str Unexecuted instantiation: parse_security.c:double2str Unexecuted instantiation: parse_call_info.c:double2str Unexecuted instantiation: parse_event.c:double2str Unexecuted instantiation: parse_disposition.c:double2str Unexecuted instantiation: parse_authenticate.c:double2str Unexecuted instantiation: parser_f.c:double2str Unexecuted instantiation: parse_rpid.c:double2str Unexecuted instantiation: parse_ppi.c:double2str Unexecuted instantiation: parse_fcaps.c:double2str Unexecuted instantiation: parse_rr.c:double2str Unexecuted instantiation: parse_param.c:double2str Unexecuted instantiation: parse_diversion.c:double2str Unexecuted instantiation: parse_nameaddr.c:double2str Unexecuted instantiation: parse_expires.c:double2str Unexecuted instantiation: parse_refer_to.c:double2str Unexecuted instantiation: parse_from.c:double2str Unexecuted instantiation: parse_pai.c:double2str Unexecuted instantiation: event_interface.c:double2str Unexecuted instantiation: receive.c:double2str Unexecuted instantiation: ip_addr.c:double2str Unexecuted instantiation: async.c:double2str Unexecuted instantiation: daemonize.c:double2str Unexecuted instantiation: timer.c:double2str Unexecuted instantiation: trace_api.c:double2str Unexecuted instantiation: mod_fix.c:double2str Unexecuted instantiation: reactor.c:double2str Unexecuted instantiation: forward.c:double2str Unexecuted instantiation: xlog.c:double2str Unexecuted instantiation: blacklists.c:double2str Unexecuted instantiation: usr_avp.c:double2str Unexecuted instantiation: resolve.c:double2str Unexecuted instantiation: io_wait.c:double2str Unexecuted instantiation: transformations.c:double2str Unexecuted instantiation: sr_module_deps.c:double2str Unexecuted instantiation: cfg_reload.c:double2str Unexecuted instantiation: time_rec.c:double2str Unexecuted instantiation: status_report.c:double2str Unexecuted instantiation: signals.c:double2str Unexecuted instantiation: db_id.c:double2str Unexecuted instantiation: csv.c:double2str Unexecuted instantiation: msg_translator.c:double2str Unexecuted instantiation: md5utils.c:double2str Unexecuted instantiation: cfg.tab.c:double2str Unexecuted instantiation: modparam.c:double2str Unexecuted instantiation: crc.c:double2str Unexecuted instantiation: lex.yy.c:double2str Unexecuted instantiation: cfg_pp.c:double2str Unexecuted instantiation: shutdown.c:double2str Unexecuted instantiation: core_cmds.c:double2str Unexecuted instantiation: cachedb.c:double2str Unexecuted instantiation: cachedb_id.c:double2str |
318 | | |
319 | | #define BIGINT2STR_MAX_LEN INT2STR_MAX_LEN |
320 | | static inline char* bigint2str(long long l, int* len) |
321 | 0 | { |
322 | 0 | unsigned int buf; |
323 | 0 |
|
324 | 0 | buf = getstrbufindex(); |
325 | 0 | *len = snprintf(int2str_buf[buf], INT2STR_MAX_LEN - 1, "%lld", l); |
326 | 0 | int2str_buf[buf][*len] = '\0'; |
327 | 0 |
|
328 | 0 | return int2str_buf[buf]; |
329 | 0 | } Unexecuted instantiation: msg_parser.c:bigint2str Unexecuted instantiation: parse_uri.c:bigint2str Unexecuted instantiation: parse_fline.c:bigint2str Unexecuted instantiation: parse_hname2.c:bigint2str Unexecuted instantiation: parse_content.c:bigint2str Unexecuted instantiation: hf.c:bigint2str Unexecuted instantiation: parse_to.c:bigint2str Unexecuted instantiation: parse_via.c:bigint2str Unexecuted instantiation: dprint.c:bigint2str Unexecuted instantiation: pt.c:bigint2str Unexecuted instantiation: strcommon.c:bigint2str Unexecuted instantiation: ut.c:bigint2str Unexecuted instantiation: sdp_ops.c:bigint2str Unexecuted instantiation: statistics.c:bigint2str Unexecuted instantiation: pvar.c:bigint2str Unexecuted instantiation: route.c:bigint2str Unexecuted instantiation: socket_info.c:bigint2str Unexecuted instantiation: ipc.c:bigint2str Unexecuted instantiation: core_stats.c:bigint2str Unexecuted instantiation: route_struct.c:bigint2str Unexecuted instantiation: dset.c:bigint2str Unexecuted instantiation: pt_scaling.c:bigint2str Unexecuted instantiation: pt_load.c:bigint2str Unexecuted instantiation: sr_module.c:bigint2str Unexecuted instantiation: action.c:bigint2str Unexecuted instantiation: flags.c:bigint2str Unexecuted instantiation: db_insertq.c:bigint2str Unexecuted instantiation: db.c:bigint2str Unexecuted instantiation: proto_tcp.c:bigint2str Unexecuted instantiation: proto_udp.c:bigint2str Unexecuted instantiation: trans.c:bigint2str Unexecuted instantiation: net_tcp_proc.c:bigint2str Unexecuted instantiation: net_tcp.c:bigint2str Unexecuted instantiation: tcp_common.c:bigint2str Unexecuted instantiation: net_udp.c:bigint2str Unexecuted instantiation: tcp_conn_profile.c:bigint2str Unexecuted instantiation: trans_trace.c:bigint2str Unexecuted instantiation: net_tcp_report.c:bigint2str Unexecuted instantiation: mi.c:bigint2str Unexecuted instantiation: item.c:bigint2str Unexecuted instantiation: sdp.c:bigint2str Unexecuted instantiation: sdp_helpr_funcs.c:bigint2str Unexecuted instantiation: digest_parser.c:bigint2str Unexecuted instantiation: param_parser.c:bigint2str Unexecuted instantiation: parse_contact.c:bigint2str Unexecuted instantiation: parse_body.c:bigint2str Unexecuted instantiation: parse_security.c:bigint2str Unexecuted instantiation: parse_call_info.c:bigint2str Unexecuted instantiation: parse_event.c:bigint2str Unexecuted instantiation: parse_disposition.c:bigint2str Unexecuted instantiation: parse_authenticate.c:bigint2str Unexecuted instantiation: parser_f.c:bigint2str Unexecuted instantiation: parse_rpid.c:bigint2str Unexecuted instantiation: parse_ppi.c:bigint2str Unexecuted instantiation: parse_fcaps.c:bigint2str Unexecuted instantiation: parse_rr.c:bigint2str Unexecuted instantiation: parse_param.c:bigint2str Unexecuted instantiation: parse_diversion.c:bigint2str Unexecuted instantiation: parse_nameaddr.c:bigint2str Unexecuted instantiation: parse_expires.c:bigint2str Unexecuted instantiation: parse_refer_to.c:bigint2str Unexecuted instantiation: parse_from.c:bigint2str Unexecuted instantiation: parse_pai.c:bigint2str Unexecuted instantiation: event_interface.c:bigint2str Unexecuted instantiation: receive.c:bigint2str Unexecuted instantiation: ip_addr.c:bigint2str Unexecuted instantiation: async.c:bigint2str Unexecuted instantiation: daemonize.c:bigint2str Unexecuted instantiation: timer.c:bigint2str Unexecuted instantiation: trace_api.c:bigint2str Unexecuted instantiation: mod_fix.c:bigint2str Unexecuted instantiation: reactor.c:bigint2str Unexecuted instantiation: forward.c:bigint2str Unexecuted instantiation: xlog.c:bigint2str Unexecuted instantiation: blacklists.c:bigint2str Unexecuted instantiation: usr_avp.c:bigint2str Unexecuted instantiation: resolve.c:bigint2str Unexecuted instantiation: io_wait.c:bigint2str Unexecuted instantiation: transformations.c:bigint2str Unexecuted instantiation: sr_module_deps.c:bigint2str Unexecuted instantiation: cfg_reload.c:bigint2str Unexecuted instantiation: time_rec.c:bigint2str Unexecuted instantiation: status_report.c:bigint2str Unexecuted instantiation: signals.c:bigint2str Unexecuted instantiation: db_id.c:bigint2str Unexecuted instantiation: csv.c:bigint2str Unexecuted instantiation: msg_translator.c:bigint2str Unexecuted instantiation: md5utils.c:bigint2str Unexecuted instantiation: cfg.tab.c:bigint2str Unexecuted instantiation: modparam.c:bigint2str Unexecuted instantiation: crc.c:bigint2str Unexecuted instantiation: lex.yy.c:bigint2str Unexecuted instantiation: cfg_pp.c:bigint2str Unexecuted instantiation: shutdown.c:bigint2str Unexecuted instantiation: core_cmds.c:bigint2str Unexecuted instantiation: cachedb.c:bigint2str Unexecuted instantiation: cachedb_id.c:bigint2str |
330 | | |
331 | | /* faster memchr version */ |
332 | | static inline char* q_memchr(char* p, int c, unsigned int size) |
333 | 1.03M | { |
334 | 1.03M | char* end; |
335 | | |
336 | 1.03M | end=p+size; |
337 | 12.0M | for(;p<end;p++){ |
338 | 12.0M | if (*p==(unsigned char)c) return p; |
339 | 12.0M | } |
340 | 1.71k | return NULL; |
341 | 1.03M | } Line | Count | Source | 333 | 1.01M | { | 334 | 1.01M | char* end; | 335 | | | 336 | 1.01M | end=p+size; | 337 | 5.70M | for(;p<end;p++){ | 338 | 5.70M | if (*p==(unsigned char)c) return p; | 339 | 5.70M | } | 340 | 839 | return NULL; | 341 | 1.01M | } |
Unexecuted instantiation: parse_uri.c:q_memchr Unexecuted instantiation: parse_fline.c:q_memchr Unexecuted instantiation: parse_hname2.c:q_memchr Unexecuted instantiation: parse_content.c:q_memchr Unexecuted instantiation: hf.c:q_memchr Unexecuted instantiation: parse_to.c:q_memchr Unexecuted instantiation: parse_via.c:q_memchr Unexecuted instantiation: dprint.c:q_memchr Unexecuted instantiation: pt.c:q_memchr Unexecuted instantiation: strcommon.c:q_memchr Unexecuted instantiation: ut.c:q_memchr Unexecuted instantiation: sdp_ops.c:q_memchr Unexecuted instantiation: statistics.c:q_memchr Unexecuted instantiation: pvar.c:q_memchr Unexecuted instantiation: route.c:q_memchr Unexecuted instantiation: socket_info.c:q_memchr Unexecuted instantiation: ipc.c:q_memchr Unexecuted instantiation: core_stats.c:q_memchr Unexecuted instantiation: route_struct.c:q_memchr Unexecuted instantiation: dset.c:q_memchr Unexecuted instantiation: pt_scaling.c:q_memchr Unexecuted instantiation: pt_load.c:q_memchr Unexecuted instantiation: sr_module.c:q_memchr Unexecuted instantiation: action.c:q_memchr Unexecuted instantiation: flags.c:q_memchr Unexecuted instantiation: db_insertq.c:q_memchr Unexecuted instantiation: db.c:q_memchr Unexecuted instantiation: proto_tcp.c:q_memchr Unexecuted instantiation: proto_udp.c:q_memchr Unexecuted instantiation: trans.c:q_memchr Unexecuted instantiation: net_tcp_proc.c:q_memchr Unexecuted instantiation: net_tcp.c:q_memchr Unexecuted instantiation: tcp_common.c:q_memchr Unexecuted instantiation: net_udp.c:q_memchr Unexecuted instantiation: tcp_conn_profile.c:q_memchr Unexecuted instantiation: trans_trace.c:q_memchr Unexecuted instantiation: net_tcp_report.c:q_memchr Unexecuted instantiation: mi.c:q_memchr Unexecuted instantiation: item.c:q_memchr Unexecuted instantiation: sdp.c:q_memchr Unexecuted instantiation: sdp_helpr_funcs.c:q_memchr Unexecuted instantiation: digest_parser.c:q_memchr Unexecuted instantiation: param_parser.c:q_memchr Unexecuted instantiation: parse_contact.c:q_memchr Unexecuted instantiation: parse_body.c:q_memchr Unexecuted instantiation: parse_security.c:q_memchr Unexecuted instantiation: parse_call_info.c:q_memchr Unexecuted instantiation: parse_event.c:q_memchr Unexecuted instantiation: parse_disposition.c:q_memchr Unexecuted instantiation: parse_authenticate.c:q_memchr Line | Count | Source | 333 | 15.4k | { | 334 | 15.4k | char* end; | 335 | | | 336 | 15.4k | end=p+size; | 337 | 6.39M | for(;p<end;p++){ | 338 | 6.39M | if (*p==(unsigned char)c) return p; | 339 | 6.39M | } | 340 | 872 | return NULL; | 341 | 15.4k | } |
Unexecuted instantiation: parse_rpid.c:q_memchr Unexecuted instantiation: parse_ppi.c:q_memchr Unexecuted instantiation: parse_fcaps.c:q_memchr Unexecuted instantiation: parse_rr.c:q_memchr Unexecuted instantiation: parse_param.c:q_memchr Unexecuted instantiation: parse_diversion.c:q_memchr Unexecuted instantiation: parse_nameaddr.c:q_memchr Unexecuted instantiation: parse_expires.c:q_memchr Unexecuted instantiation: parse_refer_to.c:q_memchr Unexecuted instantiation: parse_from.c:q_memchr Unexecuted instantiation: parse_pai.c:q_memchr Unexecuted instantiation: event_interface.c:q_memchr Unexecuted instantiation: receive.c:q_memchr Unexecuted instantiation: ip_addr.c:q_memchr Unexecuted instantiation: async.c:q_memchr Unexecuted instantiation: daemonize.c:q_memchr Unexecuted instantiation: timer.c:q_memchr Unexecuted instantiation: trace_api.c:q_memchr Unexecuted instantiation: mod_fix.c:q_memchr Unexecuted instantiation: reactor.c:q_memchr Unexecuted instantiation: forward.c:q_memchr Unexecuted instantiation: xlog.c:q_memchr Unexecuted instantiation: blacklists.c:q_memchr Unexecuted instantiation: usr_avp.c:q_memchr Unexecuted instantiation: resolve.c:q_memchr Unexecuted instantiation: io_wait.c:q_memchr Unexecuted instantiation: transformations.c:q_memchr Unexecuted instantiation: sr_module_deps.c:q_memchr Unexecuted instantiation: cfg_reload.c:q_memchr Unexecuted instantiation: time_rec.c:q_memchr Unexecuted instantiation: status_report.c:q_memchr Unexecuted instantiation: signals.c:q_memchr Unexecuted instantiation: db_id.c:q_memchr Unexecuted instantiation: csv.c:q_memchr Unexecuted instantiation: msg_translator.c:q_memchr Unexecuted instantiation: md5utils.c:q_memchr Unexecuted instantiation: cfg.tab.c:q_memchr Unexecuted instantiation: modparam.c:q_memchr Unexecuted instantiation: crc.c:q_memchr Unexecuted instantiation: lex.yy.c:q_memchr Unexecuted instantiation: cfg_pp.c:q_memchr Unexecuted instantiation: shutdown.c:q_memchr Unexecuted instantiation: core_cmds.c:q_memchr Unexecuted instantiation: cachedb.c:q_memchr Unexecuted instantiation: cachedb_id.c:q_memchr |
342 | | |
343 | | |
344 | | /* faster memrchr version */ |
345 | | static inline char* q_memrchr(char* p, int c, unsigned int size) |
346 | 0 | { |
347 | 0 | char* cursor; |
348 | |
|
349 | 0 | cursor=p+size-1; |
350 | 0 | for(;cursor>=p;cursor--){ |
351 | 0 | if (*cursor==(unsigned char)c) return cursor; |
352 | 0 | } |
353 | 0 | return NULL; |
354 | 0 | } Unexecuted instantiation: msg_parser.c:q_memrchr Unexecuted instantiation: parse_uri.c:q_memrchr Unexecuted instantiation: parse_fline.c:q_memrchr Unexecuted instantiation: parse_hname2.c:q_memrchr Unexecuted instantiation: parse_content.c:q_memrchr Unexecuted instantiation: hf.c:q_memrchr Unexecuted instantiation: parse_to.c:q_memrchr Unexecuted instantiation: parse_via.c:q_memrchr Unexecuted instantiation: dprint.c:q_memrchr Unexecuted instantiation: pt.c:q_memrchr Unexecuted instantiation: strcommon.c:q_memrchr Unexecuted instantiation: ut.c:q_memrchr Unexecuted instantiation: sdp_ops.c:q_memrchr Unexecuted instantiation: statistics.c:q_memrchr Unexecuted instantiation: pvar.c:q_memrchr Unexecuted instantiation: route.c:q_memrchr Unexecuted instantiation: socket_info.c:q_memrchr Unexecuted instantiation: ipc.c:q_memrchr Unexecuted instantiation: core_stats.c:q_memrchr Unexecuted instantiation: route_struct.c:q_memrchr Unexecuted instantiation: dset.c:q_memrchr Unexecuted instantiation: pt_scaling.c:q_memrchr Unexecuted instantiation: pt_load.c:q_memrchr Unexecuted instantiation: sr_module.c:q_memrchr Unexecuted instantiation: action.c:q_memrchr Unexecuted instantiation: flags.c:q_memrchr Unexecuted instantiation: db_insertq.c:q_memrchr Unexecuted instantiation: db.c:q_memrchr Unexecuted instantiation: proto_tcp.c:q_memrchr Unexecuted instantiation: proto_udp.c:q_memrchr Unexecuted instantiation: trans.c:q_memrchr Unexecuted instantiation: net_tcp_proc.c:q_memrchr Unexecuted instantiation: net_tcp.c:q_memrchr Unexecuted instantiation: tcp_common.c:q_memrchr Unexecuted instantiation: net_udp.c:q_memrchr Unexecuted instantiation: tcp_conn_profile.c:q_memrchr Unexecuted instantiation: trans_trace.c:q_memrchr Unexecuted instantiation: net_tcp_report.c:q_memrchr Unexecuted instantiation: mi.c:q_memrchr Unexecuted instantiation: item.c:q_memrchr Unexecuted instantiation: sdp.c:q_memrchr Unexecuted instantiation: sdp_helpr_funcs.c:q_memrchr Unexecuted instantiation: digest_parser.c:q_memrchr Unexecuted instantiation: param_parser.c:q_memrchr Unexecuted instantiation: parse_contact.c:q_memrchr Unexecuted instantiation: parse_body.c:q_memrchr Unexecuted instantiation: parse_security.c:q_memrchr Unexecuted instantiation: parse_call_info.c:q_memrchr Unexecuted instantiation: parse_event.c:q_memrchr Unexecuted instantiation: parse_disposition.c:q_memrchr Unexecuted instantiation: parse_authenticate.c:q_memrchr Unexecuted instantiation: parser_f.c:q_memrchr Unexecuted instantiation: parse_rpid.c:q_memrchr Unexecuted instantiation: parse_ppi.c:q_memrchr Unexecuted instantiation: parse_fcaps.c:q_memrchr Unexecuted instantiation: parse_rr.c:q_memrchr Unexecuted instantiation: parse_param.c:q_memrchr Unexecuted instantiation: parse_diversion.c:q_memrchr Unexecuted instantiation: parse_nameaddr.c:q_memrchr Unexecuted instantiation: parse_expires.c:q_memrchr Unexecuted instantiation: parse_refer_to.c:q_memrchr Unexecuted instantiation: parse_from.c:q_memrchr Unexecuted instantiation: parse_pai.c:q_memrchr Unexecuted instantiation: event_interface.c:q_memrchr Unexecuted instantiation: receive.c:q_memrchr Unexecuted instantiation: ip_addr.c:q_memrchr Unexecuted instantiation: async.c:q_memrchr Unexecuted instantiation: daemonize.c:q_memrchr Unexecuted instantiation: timer.c:q_memrchr Unexecuted instantiation: trace_api.c:q_memrchr Unexecuted instantiation: mod_fix.c:q_memrchr Unexecuted instantiation: reactor.c:q_memrchr Unexecuted instantiation: forward.c:q_memrchr Unexecuted instantiation: xlog.c:q_memrchr Unexecuted instantiation: blacklists.c:q_memrchr Unexecuted instantiation: usr_avp.c:q_memrchr Unexecuted instantiation: resolve.c:q_memrchr Unexecuted instantiation: io_wait.c:q_memrchr Unexecuted instantiation: transformations.c:q_memrchr Unexecuted instantiation: sr_module_deps.c:q_memrchr Unexecuted instantiation: cfg_reload.c:q_memrchr Unexecuted instantiation: time_rec.c:q_memrchr Unexecuted instantiation: status_report.c:q_memrchr Unexecuted instantiation: signals.c:q_memrchr Unexecuted instantiation: db_id.c:q_memrchr Unexecuted instantiation: csv.c:q_memrchr Unexecuted instantiation: msg_translator.c:q_memrchr Unexecuted instantiation: md5utils.c:q_memrchr Unexecuted instantiation: cfg.tab.c:q_memrchr Unexecuted instantiation: modparam.c:q_memrchr Unexecuted instantiation: crc.c:q_memrchr Unexecuted instantiation: lex.yy.c:q_memrchr Unexecuted instantiation: cfg_pp.c:q_memrchr Unexecuted instantiation: shutdown.c:q_memrchr Unexecuted instantiation: core_cmds.c:q_memrchr Unexecuted instantiation: cachedb.c:q_memrchr Unexecuted instantiation: cachedb_id.c:q_memrchr |
355 | | |
356 | | |
357 | | inline static int reverse_hex2int( char *c, int len, unsigned int *r) |
358 | 0 | { |
359 | 0 | char *pc; |
360 | 0 | char mychar; |
361 | |
|
362 | 0 | *r=0; |
363 | 0 | for (pc=c+len-1; len>0; pc--, len--) { |
364 | 0 | (*r) <<= 4 ; |
365 | 0 | mychar=*pc; |
366 | 0 | if ( mychar >='0' && mychar <='9') (*r)+=mychar -'0'; |
367 | 0 | else if (mychar >='a' && mychar <='f') (*r)+=mychar -'a'+10; |
368 | 0 | else if (mychar >='A' && mychar <='F') (*r)+=mychar -'A'+10; |
369 | 0 | else return -1; |
370 | 0 | } |
371 | 0 | return 0; |
372 | 0 | } Unexecuted instantiation: msg_parser.c:reverse_hex2int Unexecuted instantiation: parse_uri.c:reverse_hex2int Unexecuted instantiation: parse_fline.c:reverse_hex2int Unexecuted instantiation: parse_hname2.c:reverse_hex2int Unexecuted instantiation: parse_content.c:reverse_hex2int Unexecuted instantiation: hf.c:reverse_hex2int Unexecuted instantiation: parse_to.c:reverse_hex2int Unexecuted instantiation: parse_via.c:reverse_hex2int Unexecuted instantiation: dprint.c:reverse_hex2int Unexecuted instantiation: pt.c:reverse_hex2int Unexecuted instantiation: strcommon.c:reverse_hex2int Unexecuted instantiation: ut.c:reverse_hex2int Unexecuted instantiation: sdp_ops.c:reverse_hex2int Unexecuted instantiation: statistics.c:reverse_hex2int Unexecuted instantiation: pvar.c:reverse_hex2int Unexecuted instantiation: route.c:reverse_hex2int Unexecuted instantiation: socket_info.c:reverse_hex2int Unexecuted instantiation: ipc.c:reverse_hex2int Unexecuted instantiation: core_stats.c:reverse_hex2int Unexecuted instantiation: route_struct.c:reverse_hex2int Unexecuted instantiation: dset.c:reverse_hex2int Unexecuted instantiation: pt_scaling.c:reverse_hex2int Unexecuted instantiation: pt_load.c:reverse_hex2int Unexecuted instantiation: sr_module.c:reverse_hex2int Unexecuted instantiation: action.c:reverse_hex2int Unexecuted instantiation: flags.c:reverse_hex2int Unexecuted instantiation: db_insertq.c:reverse_hex2int Unexecuted instantiation: db.c:reverse_hex2int Unexecuted instantiation: proto_tcp.c:reverse_hex2int Unexecuted instantiation: proto_udp.c:reverse_hex2int Unexecuted instantiation: trans.c:reverse_hex2int Unexecuted instantiation: net_tcp_proc.c:reverse_hex2int Unexecuted instantiation: net_tcp.c:reverse_hex2int Unexecuted instantiation: tcp_common.c:reverse_hex2int Unexecuted instantiation: net_udp.c:reverse_hex2int Unexecuted instantiation: tcp_conn_profile.c:reverse_hex2int Unexecuted instantiation: trans_trace.c:reverse_hex2int Unexecuted instantiation: net_tcp_report.c:reverse_hex2int Unexecuted instantiation: mi.c:reverse_hex2int Unexecuted instantiation: item.c:reverse_hex2int Unexecuted instantiation: sdp.c:reverse_hex2int Unexecuted instantiation: sdp_helpr_funcs.c:reverse_hex2int Unexecuted instantiation: digest_parser.c:reverse_hex2int Unexecuted instantiation: param_parser.c:reverse_hex2int Unexecuted instantiation: parse_contact.c:reverse_hex2int Unexecuted instantiation: parse_body.c:reverse_hex2int Unexecuted instantiation: parse_security.c:reverse_hex2int Unexecuted instantiation: parse_call_info.c:reverse_hex2int Unexecuted instantiation: parse_event.c:reverse_hex2int Unexecuted instantiation: parse_disposition.c:reverse_hex2int Unexecuted instantiation: parse_authenticate.c:reverse_hex2int Unexecuted instantiation: parser_f.c:reverse_hex2int Unexecuted instantiation: parse_rpid.c:reverse_hex2int Unexecuted instantiation: parse_ppi.c:reverse_hex2int Unexecuted instantiation: parse_fcaps.c:reverse_hex2int Unexecuted instantiation: parse_rr.c:reverse_hex2int Unexecuted instantiation: parse_param.c:reverse_hex2int Unexecuted instantiation: parse_diversion.c:reverse_hex2int Unexecuted instantiation: parse_nameaddr.c:reverse_hex2int Unexecuted instantiation: parse_expires.c:reverse_hex2int Unexecuted instantiation: parse_refer_to.c:reverse_hex2int Unexecuted instantiation: parse_from.c:reverse_hex2int Unexecuted instantiation: parse_pai.c:reverse_hex2int Unexecuted instantiation: event_interface.c:reverse_hex2int Unexecuted instantiation: receive.c:reverse_hex2int Unexecuted instantiation: ip_addr.c:reverse_hex2int Unexecuted instantiation: async.c:reverse_hex2int Unexecuted instantiation: daemonize.c:reverse_hex2int Unexecuted instantiation: timer.c:reverse_hex2int Unexecuted instantiation: trace_api.c:reverse_hex2int Unexecuted instantiation: mod_fix.c:reverse_hex2int Unexecuted instantiation: reactor.c:reverse_hex2int Unexecuted instantiation: forward.c:reverse_hex2int Unexecuted instantiation: xlog.c:reverse_hex2int Unexecuted instantiation: blacklists.c:reverse_hex2int Unexecuted instantiation: usr_avp.c:reverse_hex2int Unexecuted instantiation: resolve.c:reverse_hex2int Unexecuted instantiation: io_wait.c:reverse_hex2int Unexecuted instantiation: transformations.c:reverse_hex2int Unexecuted instantiation: sr_module_deps.c:reverse_hex2int Unexecuted instantiation: cfg_reload.c:reverse_hex2int Unexecuted instantiation: time_rec.c:reverse_hex2int Unexecuted instantiation: status_report.c:reverse_hex2int Unexecuted instantiation: signals.c:reverse_hex2int Unexecuted instantiation: db_id.c:reverse_hex2int Unexecuted instantiation: csv.c:reverse_hex2int Unexecuted instantiation: msg_translator.c:reverse_hex2int Unexecuted instantiation: md5utils.c:reverse_hex2int Unexecuted instantiation: cfg.tab.c:reverse_hex2int Unexecuted instantiation: modparam.c:reverse_hex2int Unexecuted instantiation: crc.c:reverse_hex2int Unexecuted instantiation: lex.yy.c:reverse_hex2int Unexecuted instantiation: cfg_pp.c:reverse_hex2int Unexecuted instantiation: shutdown.c:reverse_hex2int Unexecuted instantiation: core_cmds.c:reverse_hex2int Unexecuted instantiation: cachedb.c:reverse_hex2int Unexecuted instantiation: cachedb_id.c:reverse_hex2int |
373 | | |
374 | | inline static int int2reverse_hex( char **c, int *size, unsigned int nr ) |
375 | 0 | { |
376 | 0 | unsigned short digit; |
377 | |
|
378 | 0 | if (*size && nr==0) { |
379 | 0 | **c = '0'; |
380 | 0 | (*c)++; |
381 | 0 | (*size)--; |
382 | 0 | return 1; |
383 | 0 | } |
384 | | |
385 | 0 | while (*size && nr ) { |
386 | 0 | digit = nr & 0xf ; |
387 | 0 | **c= digit >= 10 ? digit + 'a' - 10 : digit + '0'; |
388 | 0 | nr >>= 4; |
389 | 0 | (*c)++; |
390 | 0 | (*size)--; |
391 | 0 | } |
392 | 0 | return nr ? -1 /* number not processed; too little space */ : 1; |
393 | 0 | } Unexecuted instantiation: msg_parser.c:int2reverse_hex Unexecuted instantiation: parse_uri.c:int2reverse_hex Unexecuted instantiation: parse_fline.c:int2reverse_hex Unexecuted instantiation: parse_hname2.c:int2reverse_hex Unexecuted instantiation: parse_content.c:int2reverse_hex Unexecuted instantiation: hf.c:int2reverse_hex Unexecuted instantiation: parse_to.c:int2reverse_hex Unexecuted instantiation: parse_via.c:int2reverse_hex Unexecuted instantiation: dprint.c:int2reverse_hex Unexecuted instantiation: pt.c:int2reverse_hex Unexecuted instantiation: strcommon.c:int2reverse_hex Unexecuted instantiation: ut.c:int2reverse_hex Unexecuted instantiation: sdp_ops.c:int2reverse_hex Unexecuted instantiation: statistics.c:int2reverse_hex Unexecuted instantiation: pvar.c:int2reverse_hex Unexecuted instantiation: route.c:int2reverse_hex Unexecuted instantiation: socket_info.c:int2reverse_hex Unexecuted instantiation: ipc.c:int2reverse_hex Unexecuted instantiation: core_stats.c:int2reverse_hex Unexecuted instantiation: route_struct.c:int2reverse_hex Unexecuted instantiation: dset.c:int2reverse_hex Unexecuted instantiation: pt_scaling.c:int2reverse_hex Unexecuted instantiation: pt_load.c:int2reverse_hex Unexecuted instantiation: sr_module.c:int2reverse_hex Unexecuted instantiation: action.c:int2reverse_hex Unexecuted instantiation: flags.c:int2reverse_hex Unexecuted instantiation: db_insertq.c:int2reverse_hex Unexecuted instantiation: db.c:int2reverse_hex Unexecuted instantiation: proto_tcp.c:int2reverse_hex Unexecuted instantiation: proto_udp.c:int2reverse_hex Unexecuted instantiation: trans.c:int2reverse_hex Unexecuted instantiation: net_tcp_proc.c:int2reverse_hex Unexecuted instantiation: net_tcp.c:int2reverse_hex Unexecuted instantiation: tcp_common.c:int2reverse_hex Unexecuted instantiation: net_udp.c:int2reverse_hex Unexecuted instantiation: tcp_conn_profile.c:int2reverse_hex Unexecuted instantiation: trans_trace.c:int2reverse_hex Unexecuted instantiation: net_tcp_report.c:int2reverse_hex Unexecuted instantiation: mi.c:int2reverse_hex Unexecuted instantiation: item.c:int2reverse_hex Unexecuted instantiation: sdp.c:int2reverse_hex Unexecuted instantiation: sdp_helpr_funcs.c:int2reverse_hex Unexecuted instantiation: digest_parser.c:int2reverse_hex Unexecuted instantiation: param_parser.c:int2reverse_hex Unexecuted instantiation: parse_contact.c:int2reverse_hex Unexecuted instantiation: parse_body.c:int2reverse_hex Unexecuted instantiation: parse_security.c:int2reverse_hex Unexecuted instantiation: parse_call_info.c:int2reverse_hex Unexecuted instantiation: parse_event.c:int2reverse_hex Unexecuted instantiation: parse_disposition.c:int2reverse_hex Unexecuted instantiation: parse_authenticate.c:int2reverse_hex Unexecuted instantiation: parser_f.c:int2reverse_hex Unexecuted instantiation: parse_rpid.c:int2reverse_hex Unexecuted instantiation: parse_ppi.c:int2reverse_hex Unexecuted instantiation: parse_fcaps.c:int2reverse_hex Unexecuted instantiation: parse_rr.c:int2reverse_hex Unexecuted instantiation: parse_param.c:int2reverse_hex Unexecuted instantiation: parse_diversion.c:int2reverse_hex Unexecuted instantiation: parse_nameaddr.c:int2reverse_hex Unexecuted instantiation: parse_expires.c:int2reverse_hex Unexecuted instantiation: parse_refer_to.c:int2reverse_hex Unexecuted instantiation: parse_from.c:int2reverse_hex Unexecuted instantiation: parse_pai.c:int2reverse_hex Unexecuted instantiation: event_interface.c:int2reverse_hex Unexecuted instantiation: receive.c:int2reverse_hex Unexecuted instantiation: ip_addr.c:int2reverse_hex Unexecuted instantiation: async.c:int2reverse_hex Unexecuted instantiation: daemonize.c:int2reverse_hex Unexecuted instantiation: timer.c:int2reverse_hex Unexecuted instantiation: trace_api.c:int2reverse_hex Unexecuted instantiation: mod_fix.c:int2reverse_hex Unexecuted instantiation: reactor.c:int2reverse_hex Unexecuted instantiation: forward.c:int2reverse_hex Unexecuted instantiation: xlog.c:int2reverse_hex Unexecuted instantiation: blacklists.c:int2reverse_hex Unexecuted instantiation: usr_avp.c:int2reverse_hex Unexecuted instantiation: resolve.c:int2reverse_hex Unexecuted instantiation: io_wait.c:int2reverse_hex Unexecuted instantiation: transformations.c:int2reverse_hex Unexecuted instantiation: sr_module_deps.c:int2reverse_hex Unexecuted instantiation: cfg_reload.c:int2reverse_hex Unexecuted instantiation: time_rec.c:int2reverse_hex Unexecuted instantiation: status_report.c:int2reverse_hex Unexecuted instantiation: signals.c:int2reverse_hex Unexecuted instantiation: db_id.c:int2reverse_hex Unexecuted instantiation: csv.c:int2reverse_hex Unexecuted instantiation: msg_translator.c:int2reverse_hex Unexecuted instantiation: md5utils.c:int2reverse_hex Unexecuted instantiation: cfg.tab.c:int2reverse_hex Unexecuted instantiation: modparam.c:int2reverse_hex Unexecuted instantiation: crc.c:int2reverse_hex Unexecuted instantiation: lex.yy.c:int2reverse_hex Unexecuted instantiation: cfg_pp.c:int2reverse_hex Unexecuted instantiation: shutdown.c:int2reverse_hex Unexecuted instantiation: core_cmds.c:int2reverse_hex Unexecuted instantiation: cachedb.c:int2reverse_hex Unexecuted instantiation: cachedb_id.c:int2reverse_hex |
394 | | |
395 | | /* same functions, higher representation 64 bit*/ |
396 | | /* if unsafe requested when first non numerical character shall be |
397 | | * met the number shall be returned; avoid giving the |
398 | | * exact len of the number */ |
399 | | inline static int reverse_hex2int64( char *c, int len, int unsafe, uint64_t *r) |
400 | 0 | { |
401 | 0 | char *pc; |
402 | 0 | char mychar; |
403 | 0 |
|
404 | 0 | *r=0; |
405 | 0 | for (pc=c+len-1; len>0; pc--, len--) { |
406 | 0 | (*r) <<= 4 ; |
407 | 0 | mychar=*pc; |
408 | 0 | if ( mychar >='0' && mychar <='9') (*r)+=mychar -'0'; |
409 | 0 | else if (mychar >='a' && mychar <='f') (*r)+=mychar -'a'+10; |
410 | 0 | else if (mychar >='A' && mychar <='F') (*r)+=mychar -'A'+10; |
411 | 0 | else if (unsafe) |
412 | 0 | return 0; |
413 | 0 | else return -1; |
414 | 0 | } |
415 | 0 | return 0; |
416 | 0 | } Unexecuted instantiation: msg_parser.c:reverse_hex2int64 Unexecuted instantiation: parse_uri.c:reverse_hex2int64 Unexecuted instantiation: parse_fline.c:reverse_hex2int64 Unexecuted instantiation: parse_hname2.c:reverse_hex2int64 Unexecuted instantiation: parse_content.c:reverse_hex2int64 Unexecuted instantiation: hf.c:reverse_hex2int64 Unexecuted instantiation: parse_to.c:reverse_hex2int64 Unexecuted instantiation: parse_via.c:reverse_hex2int64 Unexecuted instantiation: dprint.c:reverse_hex2int64 Unexecuted instantiation: pt.c:reverse_hex2int64 Unexecuted instantiation: strcommon.c:reverse_hex2int64 Unexecuted instantiation: ut.c:reverse_hex2int64 Unexecuted instantiation: sdp_ops.c:reverse_hex2int64 Unexecuted instantiation: statistics.c:reverse_hex2int64 Unexecuted instantiation: pvar.c:reverse_hex2int64 Unexecuted instantiation: route.c:reverse_hex2int64 Unexecuted instantiation: socket_info.c:reverse_hex2int64 Unexecuted instantiation: ipc.c:reverse_hex2int64 Unexecuted instantiation: core_stats.c:reverse_hex2int64 Unexecuted instantiation: route_struct.c:reverse_hex2int64 Unexecuted instantiation: dset.c:reverse_hex2int64 Unexecuted instantiation: pt_scaling.c:reverse_hex2int64 Unexecuted instantiation: pt_load.c:reverse_hex2int64 Unexecuted instantiation: sr_module.c:reverse_hex2int64 Unexecuted instantiation: action.c:reverse_hex2int64 Unexecuted instantiation: flags.c:reverse_hex2int64 Unexecuted instantiation: db_insertq.c:reverse_hex2int64 Unexecuted instantiation: db.c:reverse_hex2int64 Unexecuted instantiation: proto_tcp.c:reverse_hex2int64 Unexecuted instantiation: proto_udp.c:reverse_hex2int64 Unexecuted instantiation: trans.c:reverse_hex2int64 Unexecuted instantiation: net_tcp_proc.c:reverse_hex2int64 Unexecuted instantiation: net_tcp.c:reverse_hex2int64 Unexecuted instantiation: tcp_common.c:reverse_hex2int64 Unexecuted instantiation: net_udp.c:reverse_hex2int64 Unexecuted instantiation: tcp_conn_profile.c:reverse_hex2int64 Unexecuted instantiation: trans_trace.c:reverse_hex2int64 Unexecuted instantiation: net_tcp_report.c:reverse_hex2int64 Unexecuted instantiation: mi.c:reverse_hex2int64 Unexecuted instantiation: item.c:reverse_hex2int64 Unexecuted instantiation: sdp.c:reverse_hex2int64 Unexecuted instantiation: sdp_helpr_funcs.c:reverse_hex2int64 Unexecuted instantiation: digest_parser.c:reverse_hex2int64 Unexecuted instantiation: param_parser.c:reverse_hex2int64 Unexecuted instantiation: parse_contact.c:reverse_hex2int64 Unexecuted instantiation: parse_body.c:reverse_hex2int64 Unexecuted instantiation: parse_security.c:reverse_hex2int64 Unexecuted instantiation: parse_call_info.c:reverse_hex2int64 Unexecuted instantiation: parse_event.c:reverse_hex2int64 Unexecuted instantiation: parse_disposition.c:reverse_hex2int64 Unexecuted instantiation: parse_authenticate.c:reverse_hex2int64 Unexecuted instantiation: parser_f.c:reverse_hex2int64 Unexecuted instantiation: parse_rpid.c:reverse_hex2int64 Unexecuted instantiation: parse_ppi.c:reverse_hex2int64 Unexecuted instantiation: parse_fcaps.c:reverse_hex2int64 Unexecuted instantiation: parse_rr.c:reverse_hex2int64 Unexecuted instantiation: parse_param.c:reverse_hex2int64 Unexecuted instantiation: parse_diversion.c:reverse_hex2int64 Unexecuted instantiation: parse_nameaddr.c:reverse_hex2int64 Unexecuted instantiation: parse_expires.c:reverse_hex2int64 Unexecuted instantiation: parse_refer_to.c:reverse_hex2int64 Unexecuted instantiation: parse_from.c:reverse_hex2int64 Unexecuted instantiation: parse_pai.c:reverse_hex2int64 Unexecuted instantiation: event_interface.c:reverse_hex2int64 Unexecuted instantiation: receive.c:reverse_hex2int64 Unexecuted instantiation: ip_addr.c:reverse_hex2int64 Unexecuted instantiation: async.c:reverse_hex2int64 Unexecuted instantiation: daemonize.c:reverse_hex2int64 Unexecuted instantiation: timer.c:reverse_hex2int64 Unexecuted instantiation: trace_api.c:reverse_hex2int64 Unexecuted instantiation: mod_fix.c:reverse_hex2int64 Unexecuted instantiation: reactor.c:reverse_hex2int64 Unexecuted instantiation: forward.c:reverse_hex2int64 Unexecuted instantiation: xlog.c:reverse_hex2int64 Unexecuted instantiation: blacklists.c:reverse_hex2int64 Unexecuted instantiation: usr_avp.c:reverse_hex2int64 Unexecuted instantiation: resolve.c:reverse_hex2int64 Unexecuted instantiation: io_wait.c:reverse_hex2int64 Unexecuted instantiation: transformations.c:reverse_hex2int64 Unexecuted instantiation: sr_module_deps.c:reverse_hex2int64 Unexecuted instantiation: cfg_reload.c:reverse_hex2int64 Unexecuted instantiation: time_rec.c:reverse_hex2int64 Unexecuted instantiation: status_report.c:reverse_hex2int64 Unexecuted instantiation: signals.c:reverse_hex2int64 Unexecuted instantiation: db_id.c:reverse_hex2int64 Unexecuted instantiation: csv.c:reverse_hex2int64 Unexecuted instantiation: msg_translator.c:reverse_hex2int64 Unexecuted instantiation: md5utils.c:reverse_hex2int64 Unexecuted instantiation: cfg.tab.c:reverse_hex2int64 Unexecuted instantiation: modparam.c:reverse_hex2int64 Unexecuted instantiation: crc.c:reverse_hex2int64 Unexecuted instantiation: lex.yy.c:reverse_hex2int64 Unexecuted instantiation: cfg_pp.c:reverse_hex2int64 Unexecuted instantiation: shutdown.c:reverse_hex2int64 Unexecuted instantiation: core_cmds.c:reverse_hex2int64 Unexecuted instantiation: cachedb.c:reverse_hex2int64 Unexecuted instantiation: cachedb_id.c:reverse_hex2int64 |
417 | | |
418 | | inline static int64_t int64_2reverse_hex( char **c, int *size, uint64_t nr ) |
419 | 0 | { |
420 | 0 | unsigned short digit; |
421 | 0 |
|
422 | 0 | if (*size && nr==0) { |
423 | 0 | **c = '0'; |
424 | 0 | (*c)++; |
425 | 0 | (*size)--; |
426 | 0 | return 1; |
427 | 0 | } |
428 | 0 |
|
429 | 0 | while (*size && nr ) { |
430 | 0 | digit = nr & 0xf ; |
431 | 0 | **c= digit >= 10 ? digit + 'a' - 10 : digit + '0'; |
432 | 0 | nr >>= 4; |
433 | 0 | (*c)++; |
434 | 0 | (*size)--; |
435 | 0 | } |
436 | 0 | return nr ? -1 /* number not processed; too little space */ : 1; |
437 | 0 | } Unexecuted instantiation: msg_parser.c:int64_2reverse_hex Unexecuted instantiation: parse_uri.c:int64_2reverse_hex Unexecuted instantiation: parse_fline.c:int64_2reverse_hex Unexecuted instantiation: parse_hname2.c:int64_2reverse_hex Unexecuted instantiation: parse_content.c:int64_2reverse_hex Unexecuted instantiation: hf.c:int64_2reverse_hex Unexecuted instantiation: parse_to.c:int64_2reverse_hex Unexecuted instantiation: parse_via.c:int64_2reverse_hex Unexecuted instantiation: dprint.c:int64_2reverse_hex Unexecuted instantiation: pt.c:int64_2reverse_hex Unexecuted instantiation: strcommon.c:int64_2reverse_hex Unexecuted instantiation: ut.c:int64_2reverse_hex Unexecuted instantiation: sdp_ops.c:int64_2reverse_hex Unexecuted instantiation: statistics.c:int64_2reverse_hex Unexecuted instantiation: pvar.c:int64_2reverse_hex Unexecuted instantiation: route.c:int64_2reverse_hex Unexecuted instantiation: socket_info.c:int64_2reverse_hex Unexecuted instantiation: ipc.c:int64_2reverse_hex Unexecuted instantiation: core_stats.c:int64_2reverse_hex Unexecuted instantiation: route_struct.c:int64_2reverse_hex Unexecuted instantiation: dset.c:int64_2reverse_hex Unexecuted instantiation: pt_scaling.c:int64_2reverse_hex Unexecuted instantiation: pt_load.c:int64_2reverse_hex Unexecuted instantiation: sr_module.c:int64_2reverse_hex Unexecuted instantiation: action.c:int64_2reverse_hex Unexecuted instantiation: flags.c:int64_2reverse_hex Unexecuted instantiation: db_insertq.c:int64_2reverse_hex Unexecuted instantiation: db.c:int64_2reverse_hex Unexecuted instantiation: proto_tcp.c:int64_2reverse_hex Unexecuted instantiation: proto_udp.c:int64_2reverse_hex Unexecuted instantiation: trans.c:int64_2reverse_hex Unexecuted instantiation: net_tcp_proc.c:int64_2reverse_hex Unexecuted instantiation: net_tcp.c:int64_2reverse_hex Unexecuted instantiation: tcp_common.c:int64_2reverse_hex Unexecuted instantiation: net_udp.c:int64_2reverse_hex Unexecuted instantiation: tcp_conn_profile.c:int64_2reverse_hex Unexecuted instantiation: trans_trace.c:int64_2reverse_hex Unexecuted instantiation: net_tcp_report.c:int64_2reverse_hex Unexecuted instantiation: mi.c:int64_2reverse_hex Unexecuted instantiation: item.c:int64_2reverse_hex Unexecuted instantiation: sdp.c:int64_2reverse_hex Unexecuted instantiation: sdp_helpr_funcs.c:int64_2reverse_hex Unexecuted instantiation: digest_parser.c:int64_2reverse_hex Unexecuted instantiation: param_parser.c:int64_2reverse_hex Unexecuted instantiation: parse_contact.c:int64_2reverse_hex Unexecuted instantiation: parse_body.c:int64_2reverse_hex Unexecuted instantiation: parse_security.c:int64_2reverse_hex Unexecuted instantiation: parse_call_info.c:int64_2reverse_hex Unexecuted instantiation: parse_event.c:int64_2reverse_hex Unexecuted instantiation: parse_disposition.c:int64_2reverse_hex Unexecuted instantiation: parse_authenticate.c:int64_2reverse_hex Unexecuted instantiation: parser_f.c:int64_2reverse_hex Unexecuted instantiation: parse_rpid.c:int64_2reverse_hex Unexecuted instantiation: parse_ppi.c:int64_2reverse_hex Unexecuted instantiation: parse_fcaps.c:int64_2reverse_hex Unexecuted instantiation: parse_rr.c:int64_2reverse_hex Unexecuted instantiation: parse_param.c:int64_2reverse_hex Unexecuted instantiation: parse_diversion.c:int64_2reverse_hex Unexecuted instantiation: parse_nameaddr.c:int64_2reverse_hex Unexecuted instantiation: parse_expires.c:int64_2reverse_hex Unexecuted instantiation: parse_refer_to.c:int64_2reverse_hex Unexecuted instantiation: parse_from.c:int64_2reverse_hex Unexecuted instantiation: parse_pai.c:int64_2reverse_hex Unexecuted instantiation: event_interface.c:int64_2reverse_hex Unexecuted instantiation: receive.c:int64_2reverse_hex Unexecuted instantiation: ip_addr.c:int64_2reverse_hex Unexecuted instantiation: async.c:int64_2reverse_hex Unexecuted instantiation: daemonize.c:int64_2reverse_hex Unexecuted instantiation: timer.c:int64_2reverse_hex Unexecuted instantiation: trace_api.c:int64_2reverse_hex Unexecuted instantiation: mod_fix.c:int64_2reverse_hex Unexecuted instantiation: reactor.c:int64_2reverse_hex Unexecuted instantiation: forward.c:int64_2reverse_hex Unexecuted instantiation: xlog.c:int64_2reverse_hex Unexecuted instantiation: blacklists.c:int64_2reverse_hex Unexecuted instantiation: usr_avp.c:int64_2reverse_hex Unexecuted instantiation: resolve.c:int64_2reverse_hex Unexecuted instantiation: io_wait.c:int64_2reverse_hex Unexecuted instantiation: transformations.c:int64_2reverse_hex Unexecuted instantiation: sr_module_deps.c:int64_2reverse_hex Unexecuted instantiation: cfg_reload.c:int64_2reverse_hex Unexecuted instantiation: time_rec.c:int64_2reverse_hex Unexecuted instantiation: status_report.c:int64_2reverse_hex Unexecuted instantiation: signals.c:int64_2reverse_hex Unexecuted instantiation: db_id.c:int64_2reverse_hex Unexecuted instantiation: csv.c:int64_2reverse_hex Unexecuted instantiation: msg_translator.c:int64_2reverse_hex Unexecuted instantiation: md5utils.c:int64_2reverse_hex Unexecuted instantiation: cfg.tab.c:int64_2reverse_hex Unexecuted instantiation: modparam.c:int64_2reverse_hex Unexecuted instantiation: crc.c:int64_2reverse_hex Unexecuted instantiation: lex.yy.c:int64_2reverse_hex Unexecuted instantiation: cfg_pp.c:int64_2reverse_hex Unexecuted instantiation: shutdown.c:int64_2reverse_hex Unexecuted instantiation: core_cmds.c:int64_2reverse_hex Unexecuted instantiation: cachedb.c:int64_2reverse_hex Unexecuted instantiation: cachedb_id.c:int64_2reverse_hex |
438 | | |
439 | | |
440 | | inline static int hexstr2int(char *c, int len, unsigned int *val) |
441 | 0 | { |
442 | 0 | char *pc; |
443 | 0 | int r; |
444 | 0 | char mychar; |
445 | |
|
446 | 0 | r=0; |
447 | 0 | for (pc=c; pc<c+len; pc++) { |
448 | 0 | r <<= 4 ; |
449 | 0 | mychar=*pc; |
450 | 0 | if ( mychar >='0' && mychar <='9') r+=mychar -'0'; |
451 | 0 | else if (mychar >='a' && mychar <='f') r+=mychar -'a'+10; |
452 | 0 | else if (mychar >='A' && mychar <='F') r+=mychar -'A'+10; |
453 | 0 | else return -1; |
454 | 0 | } |
455 | 0 | *val = r; |
456 | 0 | return 0; |
457 | 0 | } Unexecuted instantiation: msg_parser.c:hexstr2int Unexecuted instantiation: parse_uri.c:hexstr2int Unexecuted instantiation: parse_fline.c:hexstr2int Unexecuted instantiation: parse_hname2.c:hexstr2int Unexecuted instantiation: parse_content.c:hexstr2int Unexecuted instantiation: hf.c:hexstr2int Unexecuted instantiation: parse_to.c:hexstr2int Unexecuted instantiation: parse_via.c:hexstr2int Unexecuted instantiation: dprint.c:hexstr2int Unexecuted instantiation: pt.c:hexstr2int Unexecuted instantiation: strcommon.c:hexstr2int Unexecuted instantiation: ut.c:hexstr2int Unexecuted instantiation: sdp_ops.c:hexstr2int Unexecuted instantiation: statistics.c:hexstr2int Unexecuted instantiation: pvar.c:hexstr2int Unexecuted instantiation: route.c:hexstr2int Unexecuted instantiation: socket_info.c:hexstr2int Unexecuted instantiation: ipc.c:hexstr2int Unexecuted instantiation: core_stats.c:hexstr2int Unexecuted instantiation: route_struct.c:hexstr2int Unexecuted instantiation: dset.c:hexstr2int Unexecuted instantiation: pt_scaling.c:hexstr2int Unexecuted instantiation: pt_load.c:hexstr2int Unexecuted instantiation: sr_module.c:hexstr2int Unexecuted instantiation: action.c:hexstr2int Unexecuted instantiation: flags.c:hexstr2int Unexecuted instantiation: db_insertq.c:hexstr2int Unexecuted instantiation: db.c:hexstr2int Unexecuted instantiation: proto_tcp.c:hexstr2int Unexecuted instantiation: proto_udp.c:hexstr2int Unexecuted instantiation: trans.c:hexstr2int Unexecuted instantiation: net_tcp_proc.c:hexstr2int Unexecuted instantiation: net_tcp.c:hexstr2int Unexecuted instantiation: tcp_common.c:hexstr2int Unexecuted instantiation: net_udp.c:hexstr2int Unexecuted instantiation: tcp_conn_profile.c:hexstr2int Unexecuted instantiation: trans_trace.c:hexstr2int Unexecuted instantiation: net_tcp_report.c:hexstr2int Unexecuted instantiation: mi.c:hexstr2int Unexecuted instantiation: item.c:hexstr2int Unexecuted instantiation: sdp.c:hexstr2int Unexecuted instantiation: sdp_helpr_funcs.c:hexstr2int Unexecuted instantiation: digest_parser.c:hexstr2int Unexecuted instantiation: param_parser.c:hexstr2int Unexecuted instantiation: parse_contact.c:hexstr2int Unexecuted instantiation: parse_body.c:hexstr2int Unexecuted instantiation: parse_security.c:hexstr2int Unexecuted instantiation: parse_call_info.c:hexstr2int Unexecuted instantiation: parse_event.c:hexstr2int Unexecuted instantiation: parse_disposition.c:hexstr2int Unexecuted instantiation: parse_authenticate.c:hexstr2int Unexecuted instantiation: parser_f.c:hexstr2int Unexecuted instantiation: parse_rpid.c:hexstr2int Unexecuted instantiation: parse_ppi.c:hexstr2int Unexecuted instantiation: parse_fcaps.c:hexstr2int Unexecuted instantiation: parse_rr.c:hexstr2int Unexecuted instantiation: parse_param.c:hexstr2int Unexecuted instantiation: parse_diversion.c:hexstr2int Unexecuted instantiation: parse_nameaddr.c:hexstr2int Unexecuted instantiation: parse_expires.c:hexstr2int Unexecuted instantiation: parse_refer_to.c:hexstr2int Unexecuted instantiation: parse_from.c:hexstr2int Unexecuted instantiation: parse_pai.c:hexstr2int Unexecuted instantiation: event_interface.c:hexstr2int Unexecuted instantiation: receive.c:hexstr2int Unexecuted instantiation: ip_addr.c:hexstr2int Unexecuted instantiation: async.c:hexstr2int Unexecuted instantiation: daemonize.c:hexstr2int Unexecuted instantiation: timer.c:hexstr2int Unexecuted instantiation: trace_api.c:hexstr2int Unexecuted instantiation: mod_fix.c:hexstr2int Unexecuted instantiation: reactor.c:hexstr2int Unexecuted instantiation: forward.c:hexstr2int Unexecuted instantiation: xlog.c:hexstr2int Unexecuted instantiation: blacklists.c:hexstr2int Unexecuted instantiation: usr_avp.c:hexstr2int Unexecuted instantiation: resolve.c:hexstr2int Unexecuted instantiation: io_wait.c:hexstr2int Unexecuted instantiation: transformations.c:hexstr2int Unexecuted instantiation: sr_module_deps.c:hexstr2int Unexecuted instantiation: cfg_reload.c:hexstr2int Unexecuted instantiation: time_rec.c:hexstr2int Unexecuted instantiation: status_report.c:hexstr2int Unexecuted instantiation: signals.c:hexstr2int Unexecuted instantiation: db_id.c:hexstr2int Unexecuted instantiation: csv.c:hexstr2int Unexecuted instantiation: msg_translator.c:hexstr2int Unexecuted instantiation: md5utils.c:hexstr2int Unexecuted instantiation: cfg.tab.c:hexstr2int Unexecuted instantiation: modparam.c:hexstr2int Unexecuted instantiation: crc.c:hexstr2int Unexecuted instantiation: lex.yy.c:hexstr2int Unexecuted instantiation: cfg_pp.c:hexstr2int Unexecuted instantiation: shutdown.c:hexstr2int Unexecuted instantiation: core_cmds.c:hexstr2int Unexecuted instantiation: cachedb.c:hexstr2int Unexecuted instantiation: cachedb_id.c:hexstr2int |
458 | | |
459 | | |
460 | | /* double output length assumed ; does NOT zero-terminate */ |
461 | | inline static int string2hex( |
462 | | /* input */ const char *str, int len, |
463 | | /* output */ char *hex ) |
464 | 0 | { |
465 | 0 | int orig_len; |
466 | |
|
467 | 0 | if (len==0) { |
468 | 0 | *hex='0'; |
469 | 0 | return 1; |
470 | 0 | } |
471 | | |
472 | 0 | orig_len=len; |
473 | 0 | while ( len ) { |
474 | |
|
475 | 0 | *hex=fourbits2char[((*str) >> 4) & 0x0f]; |
476 | 0 | hex++; |
477 | 0 | *hex=fourbits2char[(*str) & 0x0f]; |
478 | 0 | hex++; |
479 | 0 | len--; |
480 | 0 | str++; |
481 | |
|
482 | 0 | } |
483 | 0 | return orig_len * 2; |
484 | 0 | } Unexecuted instantiation: msg_parser.c:string2hex Unexecuted instantiation: parse_uri.c:string2hex Unexecuted instantiation: parse_fline.c:string2hex Unexecuted instantiation: parse_hname2.c:string2hex Unexecuted instantiation: parse_content.c:string2hex Unexecuted instantiation: hf.c:string2hex Unexecuted instantiation: parse_to.c:string2hex Unexecuted instantiation: parse_via.c:string2hex Unexecuted instantiation: dprint.c:string2hex Unexecuted instantiation: pt.c:string2hex Unexecuted instantiation: strcommon.c:string2hex Unexecuted instantiation: ut.c:string2hex Unexecuted instantiation: sdp_ops.c:string2hex Unexecuted instantiation: statistics.c:string2hex Unexecuted instantiation: pvar.c:string2hex Unexecuted instantiation: route.c:string2hex Unexecuted instantiation: socket_info.c:string2hex Unexecuted instantiation: ipc.c:string2hex Unexecuted instantiation: core_stats.c:string2hex Unexecuted instantiation: route_struct.c:string2hex Unexecuted instantiation: dset.c:string2hex Unexecuted instantiation: pt_scaling.c:string2hex Unexecuted instantiation: pt_load.c:string2hex Unexecuted instantiation: sr_module.c:string2hex Unexecuted instantiation: action.c:string2hex Unexecuted instantiation: flags.c:string2hex Unexecuted instantiation: db_insertq.c:string2hex Unexecuted instantiation: db.c:string2hex Unexecuted instantiation: proto_tcp.c:string2hex Unexecuted instantiation: proto_udp.c:string2hex Unexecuted instantiation: trans.c:string2hex Unexecuted instantiation: net_tcp_proc.c:string2hex Unexecuted instantiation: net_tcp.c:string2hex Unexecuted instantiation: tcp_common.c:string2hex Unexecuted instantiation: net_udp.c:string2hex Unexecuted instantiation: tcp_conn_profile.c:string2hex Unexecuted instantiation: trans_trace.c:string2hex Unexecuted instantiation: net_tcp_report.c:string2hex Unexecuted instantiation: mi.c:string2hex Unexecuted instantiation: item.c:string2hex Unexecuted instantiation: sdp.c:string2hex Unexecuted instantiation: sdp_helpr_funcs.c:string2hex Unexecuted instantiation: digest_parser.c:string2hex Unexecuted instantiation: param_parser.c:string2hex Unexecuted instantiation: parse_contact.c:string2hex Unexecuted instantiation: parse_body.c:string2hex Unexecuted instantiation: parse_security.c:string2hex Unexecuted instantiation: parse_call_info.c:string2hex Unexecuted instantiation: parse_event.c:string2hex Unexecuted instantiation: parse_disposition.c:string2hex Unexecuted instantiation: parse_authenticate.c:string2hex Unexecuted instantiation: parser_f.c:string2hex Unexecuted instantiation: parse_rpid.c:string2hex Unexecuted instantiation: parse_ppi.c:string2hex Unexecuted instantiation: parse_fcaps.c:string2hex Unexecuted instantiation: parse_rr.c:string2hex Unexecuted instantiation: parse_param.c:string2hex Unexecuted instantiation: parse_diversion.c:string2hex Unexecuted instantiation: parse_nameaddr.c:string2hex Unexecuted instantiation: parse_expires.c:string2hex Unexecuted instantiation: parse_refer_to.c:string2hex Unexecuted instantiation: parse_from.c:string2hex Unexecuted instantiation: parse_pai.c:string2hex Unexecuted instantiation: event_interface.c:string2hex Unexecuted instantiation: receive.c:string2hex Unexecuted instantiation: ip_addr.c:string2hex Unexecuted instantiation: async.c:string2hex Unexecuted instantiation: daemonize.c:string2hex Unexecuted instantiation: timer.c:string2hex Unexecuted instantiation: trace_api.c:string2hex Unexecuted instantiation: mod_fix.c:string2hex Unexecuted instantiation: reactor.c:string2hex Unexecuted instantiation: forward.c:string2hex Unexecuted instantiation: xlog.c:string2hex Unexecuted instantiation: blacklists.c:string2hex Unexecuted instantiation: usr_avp.c:string2hex Unexecuted instantiation: resolve.c:string2hex Unexecuted instantiation: io_wait.c:string2hex Unexecuted instantiation: transformations.c:string2hex Unexecuted instantiation: sr_module_deps.c:string2hex Unexecuted instantiation: cfg_reload.c:string2hex Unexecuted instantiation: time_rec.c:string2hex Unexecuted instantiation: status_report.c:string2hex Unexecuted instantiation: signals.c:string2hex Unexecuted instantiation: db_id.c:string2hex Unexecuted instantiation: csv.c:string2hex Unexecuted instantiation: msg_translator.c:string2hex Unexecuted instantiation: md5utils.c:string2hex Unexecuted instantiation: cfg.tab.c:string2hex Unexecuted instantiation: modparam.c:string2hex Unexecuted instantiation: crc.c:string2hex Unexecuted instantiation: lex.yy.c:string2hex Unexecuted instantiation: cfg_pp.c:string2hex Unexecuted instantiation: shutdown.c:string2hex Unexecuted instantiation: core_cmds.c:string2hex Unexecuted instantiation: cachedb.c:string2hex Unexecuted instantiation: cachedb_id.c:string2hex |
485 | | |
486 | | inline static int hex2string( |
487 | | /* input */ const char *str, int len, |
488 | | /* output */ char *hex ) |
489 | 0 | { |
490 | 0 | int i; |
491 | 0 | for (i = 0; i < len / 2; i++) { |
492 | 0 | if(str[2*i]>='0' && str[2*i]<='9') |
493 | 0 | hex[i] = (str[2*i]-'0') << 4; |
494 | 0 | else if(str[2*i]>='a' && str[2*i]<='f') |
495 | 0 | hex[i] = (str[2*i]-'a'+10) << 4; |
496 | 0 | else if(str[2*i]>='A' && str[2*i]<='F') |
497 | 0 | hex[i] = (str[2*i]-'A'+10) << 4; |
498 | 0 | else goto error; |
499 | 0 |
|
500 | 0 | if(str[2*i+1]>='0' && str[2*i+1]<='9') |
501 | 0 | hex[i] += str[2*i+1]-'0'; |
502 | 0 | else if(str[2*i+1]>='a' && str[2*i+1]<='f') |
503 | 0 | hex[i] += str[2*i+1]-'a'+10; |
504 | 0 | else if(str[2*i+1]>='A' && str[2*i+1]<='F') |
505 | 0 | hex[i] += str[2*i+1]-'A'+10; |
506 | 0 | else goto error; |
507 | 0 | } |
508 | 0 | return i; |
509 | 0 | error: |
510 | 0 | return -1; |
511 | 0 | } Unexecuted instantiation: msg_parser.c:hex2string Unexecuted instantiation: parse_uri.c:hex2string Unexecuted instantiation: parse_fline.c:hex2string Unexecuted instantiation: parse_hname2.c:hex2string Unexecuted instantiation: parse_content.c:hex2string Unexecuted instantiation: hf.c:hex2string Unexecuted instantiation: parse_to.c:hex2string Unexecuted instantiation: parse_via.c:hex2string Unexecuted instantiation: dprint.c:hex2string Unexecuted instantiation: pt.c:hex2string Unexecuted instantiation: strcommon.c:hex2string Unexecuted instantiation: ut.c:hex2string Unexecuted instantiation: sdp_ops.c:hex2string Unexecuted instantiation: statistics.c:hex2string Unexecuted instantiation: pvar.c:hex2string Unexecuted instantiation: route.c:hex2string Unexecuted instantiation: socket_info.c:hex2string Unexecuted instantiation: ipc.c:hex2string Unexecuted instantiation: core_stats.c:hex2string Unexecuted instantiation: route_struct.c:hex2string Unexecuted instantiation: dset.c:hex2string Unexecuted instantiation: pt_scaling.c:hex2string Unexecuted instantiation: pt_load.c:hex2string Unexecuted instantiation: sr_module.c:hex2string Unexecuted instantiation: action.c:hex2string Unexecuted instantiation: flags.c:hex2string Unexecuted instantiation: db_insertq.c:hex2string Unexecuted instantiation: db.c:hex2string Unexecuted instantiation: proto_tcp.c:hex2string Unexecuted instantiation: proto_udp.c:hex2string Unexecuted instantiation: trans.c:hex2string Unexecuted instantiation: net_tcp_proc.c:hex2string Unexecuted instantiation: net_tcp.c:hex2string Unexecuted instantiation: tcp_common.c:hex2string Unexecuted instantiation: net_udp.c:hex2string Unexecuted instantiation: tcp_conn_profile.c:hex2string Unexecuted instantiation: trans_trace.c:hex2string Unexecuted instantiation: net_tcp_report.c:hex2string Unexecuted instantiation: mi.c:hex2string Unexecuted instantiation: item.c:hex2string Unexecuted instantiation: sdp.c:hex2string Unexecuted instantiation: sdp_helpr_funcs.c:hex2string Unexecuted instantiation: digest_parser.c:hex2string Unexecuted instantiation: param_parser.c:hex2string Unexecuted instantiation: parse_contact.c:hex2string Unexecuted instantiation: parse_body.c:hex2string Unexecuted instantiation: parse_security.c:hex2string Unexecuted instantiation: parse_call_info.c:hex2string Unexecuted instantiation: parse_event.c:hex2string Unexecuted instantiation: parse_disposition.c:hex2string Unexecuted instantiation: parse_authenticate.c:hex2string Unexecuted instantiation: parser_f.c:hex2string Unexecuted instantiation: parse_rpid.c:hex2string Unexecuted instantiation: parse_ppi.c:hex2string Unexecuted instantiation: parse_fcaps.c:hex2string Unexecuted instantiation: parse_rr.c:hex2string Unexecuted instantiation: parse_param.c:hex2string Unexecuted instantiation: parse_diversion.c:hex2string Unexecuted instantiation: parse_nameaddr.c:hex2string Unexecuted instantiation: parse_expires.c:hex2string Unexecuted instantiation: parse_refer_to.c:hex2string Unexecuted instantiation: parse_from.c:hex2string Unexecuted instantiation: parse_pai.c:hex2string Unexecuted instantiation: event_interface.c:hex2string Unexecuted instantiation: receive.c:hex2string Unexecuted instantiation: ip_addr.c:hex2string Unexecuted instantiation: async.c:hex2string Unexecuted instantiation: daemonize.c:hex2string Unexecuted instantiation: timer.c:hex2string Unexecuted instantiation: trace_api.c:hex2string Unexecuted instantiation: mod_fix.c:hex2string Unexecuted instantiation: reactor.c:hex2string Unexecuted instantiation: forward.c:hex2string Unexecuted instantiation: xlog.c:hex2string Unexecuted instantiation: blacklists.c:hex2string Unexecuted instantiation: usr_avp.c:hex2string Unexecuted instantiation: resolve.c:hex2string Unexecuted instantiation: io_wait.c:hex2string Unexecuted instantiation: transformations.c:hex2string Unexecuted instantiation: sr_module_deps.c:hex2string Unexecuted instantiation: cfg_reload.c:hex2string Unexecuted instantiation: time_rec.c:hex2string Unexecuted instantiation: status_report.c:hex2string Unexecuted instantiation: signals.c:hex2string Unexecuted instantiation: db_id.c:hex2string Unexecuted instantiation: csv.c:hex2string Unexecuted instantiation: msg_translator.c:hex2string Unexecuted instantiation: md5utils.c:hex2string Unexecuted instantiation: cfg.tab.c:hex2string Unexecuted instantiation: modparam.c:hex2string Unexecuted instantiation: crc.c:hex2string Unexecuted instantiation: lex.yy.c:hex2string Unexecuted instantiation: cfg_pp.c:hex2string Unexecuted instantiation: shutdown.c:hex2string Unexecuted instantiation: core_cmds.c:hex2string Unexecuted instantiation: cachedb.c:hex2string Unexecuted instantiation: cachedb_id.c:hex2string |
512 | | |
513 | | /* portable sleep in microseconds (no interrupt handling now) */ |
514 | | |
515 | | inline static void sleep_us( unsigned int nusecs ) |
516 | 0 | { |
517 | 0 | struct timeval tval; |
518 | 0 | tval.tv_sec=nusecs/1000000; |
519 | 0 | tval.tv_usec=nusecs%1000000; |
520 | 0 | select(0, NULL, NULL, NULL, &tval ); |
521 | 0 | } Unexecuted instantiation: msg_parser.c:sleep_us Unexecuted instantiation: parse_uri.c:sleep_us Unexecuted instantiation: parse_fline.c:sleep_us Unexecuted instantiation: parse_hname2.c:sleep_us Unexecuted instantiation: parse_content.c:sleep_us Unexecuted instantiation: hf.c:sleep_us Unexecuted instantiation: parse_to.c:sleep_us Unexecuted instantiation: parse_via.c:sleep_us Unexecuted instantiation: dprint.c:sleep_us Unexecuted instantiation: pt.c:sleep_us Unexecuted instantiation: strcommon.c:sleep_us Unexecuted instantiation: ut.c:sleep_us Unexecuted instantiation: sdp_ops.c:sleep_us Unexecuted instantiation: statistics.c:sleep_us Unexecuted instantiation: pvar.c:sleep_us Unexecuted instantiation: route.c:sleep_us Unexecuted instantiation: socket_info.c:sleep_us Unexecuted instantiation: ipc.c:sleep_us Unexecuted instantiation: core_stats.c:sleep_us Unexecuted instantiation: route_struct.c:sleep_us Unexecuted instantiation: dset.c:sleep_us Unexecuted instantiation: pt_scaling.c:sleep_us Unexecuted instantiation: pt_load.c:sleep_us Unexecuted instantiation: sr_module.c:sleep_us Unexecuted instantiation: action.c:sleep_us Unexecuted instantiation: flags.c:sleep_us Unexecuted instantiation: db_insertq.c:sleep_us Unexecuted instantiation: db.c:sleep_us Unexecuted instantiation: proto_tcp.c:sleep_us Unexecuted instantiation: proto_udp.c:sleep_us Unexecuted instantiation: trans.c:sleep_us Unexecuted instantiation: net_tcp_proc.c:sleep_us Unexecuted instantiation: net_tcp.c:sleep_us Unexecuted instantiation: tcp_common.c:sleep_us Unexecuted instantiation: net_udp.c:sleep_us Unexecuted instantiation: tcp_conn_profile.c:sleep_us Unexecuted instantiation: trans_trace.c:sleep_us Unexecuted instantiation: net_tcp_report.c:sleep_us Unexecuted instantiation: mi.c:sleep_us Unexecuted instantiation: item.c:sleep_us Unexecuted instantiation: sdp.c:sleep_us Unexecuted instantiation: sdp_helpr_funcs.c:sleep_us Unexecuted instantiation: digest_parser.c:sleep_us Unexecuted instantiation: param_parser.c:sleep_us Unexecuted instantiation: parse_contact.c:sleep_us Unexecuted instantiation: parse_body.c:sleep_us Unexecuted instantiation: parse_security.c:sleep_us Unexecuted instantiation: parse_call_info.c:sleep_us Unexecuted instantiation: parse_event.c:sleep_us Unexecuted instantiation: parse_disposition.c:sleep_us Unexecuted instantiation: parse_authenticate.c:sleep_us Unexecuted instantiation: parser_f.c:sleep_us Unexecuted instantiation: parse_rpid.c:sleep_us Unexecuted instantiation: parse_ppi.c:sleep_us Unexecuted instantiation: parse_fcaps.c:sleep_us Unexecuted instantiation: parse_rr.c:sleep_us Unexecuted instantiation: parse_param.c:sleep_us Unexecuted instantiation: parse_diversion.c:sleep_us Unexecuted instantiation: parse_nameaddr.c:sleep_us Unexecuted instantiation: parse_expires.c:sleep_us Unexecuted instantiation: parse_refer_to.c:sleep_us Unexecuted instantiation: parse_from.c:sleep_us Unexecuted instantiation: parse_pai.c:sleep_us Unexecuted instantiation: event_interface.c:sleep_us Unexecuted instantiation: receive.c:sleep_us Unexecuted instantiation: ip_addr.c:sleep_us Unexecuted instantiation: async.c:sleep_us Unexecuted instantiation: daemonize.c:sleep_us Unexecuted instantiation: timer.c:sleep_us Unexecuted instantiation: trace_api.c:sleep_us Unexecuted instantiation: mod_fix.c:sleep_us Unexecuted instantiation: reactor.c:sleep_us Unexecuted instantiation: forward.c:sleep_us Unexecuted instantiation: xlog.c:sleep_us Unexecuted instantiation: blacklists.c:sleep_us Unexecuted instantiation: usr_avp.c:sleep_us Unexecuted instantiation: resolve.c:sleep_us Unexecuted instantiation: io_wait.c:sleep_us Unexecuted instantiation: transformations.c:sleep_us Unexecuted instantiation: sr_module_deps.c:sleep_us Unexecuted instantiation: cfg_reload.c:sleep_us Unexecuted instantiation: time_rec.c:sleep_us Unexecuted instantiation: status_report.c:sleep_us Unexecuted instantiation: signals.c:sleep_us Unexecuted instantiation: db_id.c:sleep_us Unexecuted instantiation: csv.c:sleep_us Unexecuted instantiation: msg_translator.c:sleep_us Unexecuted instantiation: md5utils.c:sleep_us Unexecuted instantiation: cfg.tab.c:sleep_us Unexecuted instantiation: modparam.c:sleep_us Unexecuted instantiation: crc.c:sleep_us Unexecuted instantiation: lex.yy.c:sleep_us Unexecuted instantiation: cfg_pp.c:sleep_us Unexecuted instantiation: shutdown.c:sleep_us Unexecuted instantiation: core_cmds.c:sleep_us Unexecuted instantiation: cachedb.c:sleep_us Unexecuted instantiation: cachedb_id.c:sleep_us |
522 | | |
523 | | |
524 | | /* portable determination of max_path */ |
525 | | inline static int pathmax(void) |
526 | 0 | { |
527 | 0 | #ifdef PATH_MAX |
528 | 0 | static int pathmax=PATH_MAX; |
529 | 0 | #else |
530 | 0 | static int pathmax=0; |
531 | 0 | #endif |
532 | 0 | if (pathmax==0) { /* init */ |
533 | 0 | pathmax=pathconf("/", _PC_PATH_MAX); |
534 | 0 | pathmax=(pathmax<=0)?PATH_MAX_GUESS:pathmax+1; |
535 | 0 | } |
536 | 0 | return pathmax; |
537 | 0 | } Unexecuted instantiation: msg_parser.c:pathmax Unexecuted instantiation: parse_uri.c:pathmax Unexecuted instantiation: parse_fline.c:pathmax Unexecuted instantiation: parse_hname2.c:pathmax Unexecuted instantiation: parse_content.c:pathmax Unexecuted instantiation: hf.c:pathmax Unexecuted instantiation: parse_to.c:pathmax Unexecuted instantiation: parse_via.c:pathmax Unexecuted instantiation: dprint.c:pathmax Unexecuted instantiation: pt.c:pathmax Unexecuted instantiation: strcommon.c:pathmax Unexecuted instantiation: ut.c:pathmax Unexecuted instantiation: sdp_ops.c:pathmax Unexecuted instantiation: statistics.c:pathmax Unexecuted instantiation: pvar.c:pathmax Unexecuted instantiation: route.c:pathmax Unexecuted instantiation: socket_info.c:pathmax Unexecuted instantiation: ipc.c:pathmax Unexecuted instantiation: core_stats.c:pathmax Unexecuted instantiation: route_struct.c:pathmax Unexecuted instantiation: dset.c:pathmax Unexecuted instantiation: pt_scaling.c:pathmax Unexecuted instantiation: pt_load.c:pathmax Unexecuted instantiation: sr_module.c:pathmax Unexecuted instantiation: action.c:pathmax Unexecuted instantiation: flags.c:pathmax Unexecuted instantiation: db_insertq.c:pathmax Unexecuted instantiation: db.c:pathmax Unexecuted instantiation: proto_tcp.c:pathmax Unexecuted instantiation: proto_udp.c:pathmax Unexecuted instantiation: trans.c:pathmax Unexecuted instantiation: net_tcp_proc.c:pathmax Unexecuted instantiation: net_tcp.c:pathmax Unexecuted instantiation: tcp_common.c:pathmax Unexecuted instantiation: net_udp.c:pathmax Unexecuted instantiation: tcp_conn_profile.c:pathmax Unexecuted instantiation: trans_trace.c:pathmax Unexecuted instantiation: net_tcp_report.c:pathmax Unexecuted instantiation: mi.c:pathmax Unexecuted instantiation: item.c:pathmax Unexecuted instantiation: sdp.c:pathmax Unexecuted instantiation: sdp_helpr_funcs.c:pathmax Unexecuted instantiation: digest_parser.c:pathmax Unexecuted instantiation: param_parser.c:pathmax Unexecuted instantiation: parse_contact.c:pathmax Unexecuted instantiation: parse_body.c:pathmax Unexecuted instantiation: parse_security.c:pathmax Unexecuted instantiation: parse_call_info.c:pathmax Unexecuted instantiation: parse_event.c:pathmax Unexecuted instantiation: parse_disposition.c:pathmax Unexecuted instantiation: parse_authenticate.c:pathmax Unexecuted instantiation: parser_f.c:pathmax Unexecuted instantiation: parse_rpid.c:pathmax Unexecuted instantiation: parse_ppi.c:pathmax Unexecuted instantiation: parse_fcaps.c:pathmax Unexecuted instantiation: parse_rr.c:pathmax Unexecuted instantiation: parse_param.c:pathmax Unexecuted instantiation: parse_diversion.c:pathmax Unexecuted instantiation: parse_nameaddr.c:pathmax Unexecuted instantiation: parse_expires.c:pathmax Unexecuted instantiation: parse_refer_to.c:pathmax Unexecuted instantiation: parse_from.c:pathmax Unexecuted instantiation: parse_pai.c:pathmax Unexecuted instantiation: event_interface.c:pathmax Unexecuted instantiation: receive.c:pathmax Unexecuted instantiation: ip_addr.c:pathmax Unexecuted instantiation: async.c:pathmax Unexecuted instantiation: daemonize.c:pathmax Unexecuted instantiation: timer.c:pathmax Unexecuted instantiation: trace_api.c:pathmax Unexecuted instantiation: mod_fix.c:pathmax Unexecuted instantiation: reactor.c:pathmax Unexecuted instantiation: forward.c:pathmax Unexecuted instantiation: xlog.c:pathmax Unexecuted instantiation: blacklists.c:pathmax Unexecuted instantiation: usr_avp.c:pathmax Unexecuted instantiation: resolve.c:pathmax Unexecuted instantiation: io_wait.c:pathmax Unexecuted instantiation: transformations.c:pathmax Unexecuted instantiation: sr_module_deps.c:pathmax Unexecuted instantiation: cfg_reload.c:pathmax Unexecuted instantiation: time_rec.c:pathmax Unexecuted instantiation: status_report.c:pathmax Unexecuted instantiation: signals.c:pathmax Unexecuted instantiation: db_id.c:pathmax Unexecuted instantiation: csv.c:pathmax Unexecuted instantiation: msg_translator.c:pathmax Unexecuted instantiation: md5utils.c:pathmax Unexecuted instantiation: cfg.tab.c:pathmax Unexecuted instantiation: modparam.c:pathmax Unexecuted instantiation: crc.c:pathmax Unexecuted instantiation: lex.yy.c:pathmax Unexecuted instantiation: cfg_pp.c:pathmax Unexecuted instantiation: shutdown.c:pathmax Unexecuted instantiation: core_cmds.c:pathmax Unexecuted instantiation: cachedb.c:pathmax Unexecuted instantiation: cachedb_id.c:pathmax |
538 | | |
539 | | /* faster than glibc equivalents */ |
540 | 0 | #define _isdigit(c) ((c) >= '0' && (c) <= '9') |
541 | | #define _isalpha(c) \ |
542 | 0 | (((c) >= 'a' && (c) <= 'z') || \ |
543 | 0 | ((c) >= 'A' && (c) <= 'Z')) |
544 | | #define _isxdigit(c) \ |
545 | | (((c) >= '0' && (c) <= '9') || \ |
546 | | ((c) >= 'a' && (c) <= 'f') || \ |
547 | | ((c) >= 'A' && (c) <= 'F')) |
548 | 0 | #define _isalnum(c) (_isalpha(c) || _isdigit(c)) |
549 | | |
550 | | inline static int hex2int(char hex_digit) |
551 | 0 | { |
552 | 0 | if (hex_digit>='0' && hex_digit<='9') |
553 | 0 | return hex_digit-'0'; |
554 | 0 | if (hex_digit>='a' && hex_digit<='f') |
555 | 0 | return hex_digit-'a'+10; |
556 | 0 | if (hex_digit>='A' && hex_digit<='F') |
557 | 0 | return hex_digit-'A'+10; |
558 | | /* no valid hex digit ... */ |
559 | 0 | LM_ERR("'%c' is no hex char\n", hex_digit ); |
560 | 0 | return -1; |
561 | 0 | } Unexecuted instantiation: msg_parser.c:hex2int Unexecuted instantiation: parse_uri.c:hex2int Unexecuted instantiation: parse_fline.c:hex2int Unexecuted instantiation: parse_hname2.c:hex2int Unexecuted instantiation: parse_content.c:hex2int Unexecuted instantiation: hf.c:hex2int Unexecuted instantiation: parse_to.c:hex2int Unexecuted instantiation: parse_via.c:hex2int Unexecuted instantiation: dprint.c:hex2int Unexecuted instantiation: pt.c:hex2int Unexecuted instantiation: strcommon.c:hex2int Unexecuted instantiation: ut.c:hex2int Unexecuted instantiation: sdp_ops.c:hex2int Unexecuted instantiation: statistics.c:hex2int Unexecuted instantiation: pvar.c:hex2int Unexecuted instantiation: route.c:hex2int Unexecuted instantiation: socket_info.c:hex2int Unexecuted instantiation: ipc.c:hex2int Unexecuted instantiation: core_stats.c:hex2int Unexecuted instantiation: route_struct.c:hex2int Unexecuted instantiation: dset.c:hex2int Unexecuted instantiation: pt_scaling.c:hex2int Unexecuted instantiation: pt_load.c:hex2int Unexecuted instantiation: sr_module.c:hex2int Unexecuted instantiation: action.c:hex2int Unexecuted instantiation: flags.c:hex2int Unexecuted instantiation: db_insertq.c:hex2int Unexecuted instantiation: db.c:hex2int Unexecuted instantiation: proto_tcp.c:hex2int Unexecuted instantiation: proto_udp.c:hex2int Unexecuted instantiation: trans.c:hex2int Unexecuted instantiation: net_tcp_proc.c:hex2int Unexecuted instantiation: net_tcp.c:hex2int Unexecuted instantiation: tcp_common.c:hex2int Unexecuted instantiation: net_udp.c:hex2int Unexecuted instantiation: tcp_conn_profile.c:hex2int Unexecuted instantiation: trans_trace.c:hex2int Unexecuted instantiation: net_tcp_report.c:hex2int Unexecuted instantiation: mi.c:hex2int Unexecuted instantiation: item.c:hex2int Unexecuted instantiation: sdp.c:hex2int Unexecuted instantiation: sdp_helpr_funcs.c:hex2int Unexecuted instantiation: digest_parser.c:hex2int Unexecuted instantiation: param_parser.c:hex2int Unexecuted instantiation: parse_contact.c:hex2int Unexecuted instantiation: parse_body.c:hex2int Unexecuted instantiation: parse_security.c:hex2int Unexecuted instantiation: parse_call_info.c:hex2int Unexecuted instantiation: parse_event.c:hex2int Unexecuted instantiation: parse_disposition.c:hex2int Unexecuted instantiation: parse_authenticate.c:hex2int Unexecuted instantiation: parser_f.c:hex2int Unexecuted instantiation: parse_rpid.c:hex2int Unexecuted instantiation: parse_ppi.c:hex2int Unexecuted instantiation: parse_fcaps.c:hex2int Unexecuted instantiation: parse_rr.c:hex2int Unexecuted instantiation: parse_param.c:hex2int Unexecuted instantiation: parse_diversion.c:hex2int Unexecuted instantiation: parse_nameaddr.c:hex2int Unexecuted instantiation: parse_expires.c:hex2int Unexecuted instantiation: parse_refer_to.c:hex2int Unexecuted instantiation: parse_from.c:hex2int Unexecuted instantiation: parse_pai.c:hex2int Unexecuted instantiation: event_interface.c:hex2int Unexecuted instantiation: receive.c:hex2int Unexecuted instantiation: ip_addr.c:hex2int Unexecuted instantiation: async.c:hex2int Unexecuted instantiation: daemonize.c:hex2int Unexecuted instantiation: timer.c:hex2int Unexecuted instantiation: trace_api.c:hex2int Unexecuted instantiation: mod_fix.c:hex2int Unexecuted instantiation: reactor.c:hex2int Unexecuted instantiation: forward.c:hex2int Unexecuted instantiation: xlog.c:hex2int Unexecuted instantiation: blacklists.c:hex2int Unexecuted instantiation: usr_avp.c:hex2int Unexecuted instantiation: resolve.c:hex2int Unexecuted instantiation: io_wait.c:hex2int Unexecuted instantiation: transformations.c:hex2int Unexecuted instantiation: sr_module_deps.c:hex2int Unexecuted instantiation: cfg_reload.c:hex2int Unexecuted instantiation: time_rec.c:hex2int Unexecuted instantiation: status_report.c:hex2int Unexecuted instantiation: signals.c:hex2int Unexecuted instantiation: db_id.c:hex2int Unexecuted instantiation: csv.c:hex2int Unexecuted instantiation: msg_translator.c:hex2int Unexecuted instantiation: md5utils.c:hex2int Unexecuted instantiation: cfg.tab.c:hex2int Unexecuted instantiation: modparam.c:hex2int Unexecuted instantiation: crc.c:hex2int Unexecuted instantiation: lex.yy.c:hex2int Unexecuted instantiation: cfg_pp.c:hex2int Unexecuted instantiation: shutdown.c:hex2int Unexecuted instantiation: core_cmds.c:hex2int Unexecuted instantiation: cachedb.c:hex2int Unexecuted instantiation: cachedb_id.c:hex2int |
562 | | |
563 | | /* Un-escape URI user -- it takes a pointer to original user |
564 | | str, as well as the new, unescaped one, which MUST have |
565 | | an allocated buffer linked to the 'str' structure ; |
566 | | (the buffer can be allocated with the same length as |
567 | | the original string -- the output string is always |
568 | | shorter (if escaped characters occur) or same-long |
569 | | as the original one). |
570 | | |
571 | | only printable characters are permitted |
572 | | |
573 | | <0 is returned on an unescaping error, length of the |
574 | | unescaped string otherwise |
575 | | */ |
576 | | inline static int un_escape(str *user, str *new_user ) |
577 | 0 | { |
578 | 0 | int i, j, value; |
579 | 0 | int hi, lo; |
580 | |
|
581 | 0 | if( new_user==0 || new_user->s==0) { |
582 | 0 | LM_CRIT("called with invalid param\n"); |
583 | 0 | return -1; |
584 | 0 | } |
585 | | |
586 | 0 | new_user->len = 0; |
587 | 0 | j = 0; |
588 | |
|
589 | 0 | for (i = 0; i < user->len; i++) { |
590 | 0 | if (user->s[i] == '%') { |
591 | 0 | if (i + 2 >= user->len) { |
592 | 0 | LM_ERR("escape sequence too short in" |
593 | 0 | " '%.*s' @ %d\n", |
594 | 0 | user->len, user->s, i ); |
595 | 0 | goto error; |
596 | 0 | } |
597 | 0 | hi=hex2int(user->s[i + 1]); |
598 | 0 | if (hi<0) { |
599 | 0 | LM_ERR(" non-hex high digit in an escape" |
600 | 0 | " sequence in '%.*s' @ %d\n", |
601 | 0 | user->len, user->s, i+1 ); |
602 | 0 | goto error; |
603 | 0 | } |
604 | 0 | lo=hex2int(user->s[i + 2]); |
605 | 0 | if (lo<0) { |
606 | 0 | LM_ERR("non-hex low digit in an escape sequence in " |
607 | 0 | "'%.*s' @ %d\n", |
608 | 0 | user->len, user->s, i+2 ); |
609 | 0 | goto error; |
610 | 0 | } |
611 | 0 | value=(hi<<4)+lo; |
612 | 0 | if (value < 32 || value > 126) { |
613 | 0 | LM_ERR("non-ASCII escaped character in '%.*s' @ %d\n", |
614 | 0 | user->len, user->s, i ); |
615 | 0 | goto error; |
616 | 0 | } |
617 | 0 | new_user->s[j] = value; |
618 | 0 | i+=2; /* consume the two hex digits, for cycle will move to the next char */ |
619 | 0 | } else { |
620 | 0 | new_user->s[j] = user->s[i]; |
621 | 0 | } |
622 | 0 | j++; /* good -- we translated another character */ |
623 | 0 | } |
624 | 0 | new_user->len = j; |
625 | 0 | return j; |
626 | | |
627 | 0 | error: |
628 | 0 | new_user->len = j; |
629 | 0 | return -1; |
630 | 0 | } Unexecuted instantiation: msg_parser.c:un_escape Unexecuted instantiation: parse_uri.c:un_escape Unexecuted instantiation: parse_fline.c:un_escape Unexecuted instantiation: parse_hname2.c:un_escape Unexecuted instantiation: parse_content.c:un_escape Unexecuted instantiation: hf.c:un_escape Unexecuted instantiation: parse_to.c:un_escape Unexecuted instantiation: parse_via.c:un_escape Unexecuted instantiation: dprint.c:un_escape Unexecuted instantiation: pt.c:un_escape Unexecuted instantiation: strcommon.c:un_escape Unexecuted instantiation: ut.c:un_escape Unexecuted instantiation: sdp_ops.c:un_escape Unexecuted instantiation: statistics.c:un_escape Unexecuted instantiation: pvar.c:un_escape Unexecuted instantiation: route.c:un_escape Unexecuted instantiation: socket_info.c:un_escape Unexecuted instantiation: ipc.c:un_escape Unexecuted instantiation: core_stats.c:un_escape Unexecuted instantiation: route_struct.c:un_escape Unexecuted instantiation: dset.c:un_escape Unexecuted instantiation: pt_scaling.c:un_escape Unexecuted instantiation: pt_load.c:un_escape Unexecuted instantiation: sr_module.c:un_escape Unexecuted instantiation: action.c:un_escape Unexecuted instantiation: flags.c:un_escape Unexecuted instantiation: db_insertq.c:un_escape Unexecuted instantiation: db.c:un_escape Unexecuted instantiation: proto_tcp.c:un_escape Unexecuted instantiation: proto_udp.c:un_escape Unexecuted instantiation: trans.c:un_escape Unexecuted instantiation: net_tcp_proc.c:un_escape Unexecuted instantiation: net_tcp.c:un_escape Unexecuted instantiation: tcp_common.c:un_escape Unexecuted instantiation: net_udp.c:un_escape Unexecuted instantiation: tcp_conn_profile.c:un_escape Unexecuted instantiation: trans_trace.c:un_escape Unexecuted instantiation: net_tcp_report.c:un_escape Unexecuted instantiation: mi.c:un_escape Unexecuted instantiation: item.c:un_escape Unexecuted instantiation: sdp.c:un_escape Unexecuted instantiation: sdp_helpr_funcs.c:un_escape Unexecuted instantiation: digest_parser.c:un_escape Unexecuted instantiation: param_parser.c:un_escape Unexecuted instantiation: parse_contact.c:un_escape Unexecuted instantiation: parse_body.c:un_escape Unexecuted instantiation: parse_security.c:un_escape Unexecuted instantiation: parse_call_info.c:un_escape Unexecuted instantiation: parse_event.c:un_escape Unexecuted instantiation: parse_disposition.c:un_escape Unexecuted instantiation: parse_authenticate.c:un_escape Unexecuted instantiation: parser_f.c:un_escape Unexecuted instantiation: parse_rpid.c:un_escape Unexecuted instantiation: parse_ppi.c:un_escape Unexecuted instantiation: parse_fcaps.c:un_escape Unexecuted instantiation: parse_rr.c:un_escape Unexecuted instantiation: parse_param.c:un_escape Unexecuted instantiation: parse_diversion.c:un_escape Unexecuted instantiation: parse_nameaddr.c:un_escape Unexecuted instantiation: parse_expires.c:un_escape Unexecuted instantiation: parse_refer_to.c:un_escape Unexecuted instantiation: parse_from.c:un_escape Unexecuted instantiation: parse_pai.c:un_escape Unexecuted instantiation: event_interface.c:un_escape Unexecuted instantiation: receive.c:un_escape Unexecuted instantiation: ip_addr.c:un_escape Unexecuted instantiation: async.c:un_escape Unexecuted instantiation: daemonize.c:un_escape Unexecuted instantiation: timer.c:un_escape Unexecuted instantiation: trace_api.c:un_escape Unexecuted instantiation: mod_fix.c:un_escape Unexecuted instantiation: reactor.c:un_escape Unexecuted instantiation: forward.c:un_escape Unexecuted instantiation: xlog.c:un_escape Unexecuted instantiation: blacklists.c:un_escape Unexecuted instantiation: usr_avp.c:un_escape Unexecuted instantiation: resolve.c:un_escape Unexecuted instantiation: io_wait.c:un_escape Unexecuted instantiation: transformations.c:un_escape Unexecuted instantiation: sr_module_deps.c:un_escape Unexecuted instantiation: cfg_reload.c:un_escape Unexecuted instantiation: time_rec.c:un_escape Unexecuted instantiation: status_report.c:un_escape Unexecuted instantiation: signals.c:un_escape Unexecuted instantiation: db_id.c:un_escape Unexecuted instantiation: csv.c:un_escape Unexecuted instantiation: msg_translator.c:un_escape Unexecuted instantiation: md5utils.c:un_escape Unexecuted instantiation: cfg.tab.c:un_escape Unexecuted instantiation: modparam.c:un_escape Unexecuted instantiation: crc.c:un_escape Unexecuted instantiation: lex.yy.c:un_escape Unexecuted instantiation: cfg_pp.c:un_escape Unexecuted instantiation: shutdown.c:un_escape Unexecuted instantiation: core_cmds.c:un_escape Unexecuted instantiation: cachedb.c:un_escape Unexecuted instantiation: cachedb_id.c:un_escape |
631 | | |
632 | | static inline void unescape_crlf(str *in_out) |
633 | 0 | { |
634 | 0 | char *p, *lim = in_out->s + in_out->len; |
635 | 0 |
|
636 | 0 | if (ZSTR(*in_out)) |
637 | 0 | return; |
638 | 0 |
|
639 | 0 | for (p = in_out->s; p < lim; p++) { |
640 | 0 | if (*p == '\\' && p + 1 < lim) { |
641 | 0 | if (*(p + 1) == 'r') { |
642 | 0 | *p = '\r'; |
643 | 0 | memmove(p + 1, p + 2, lim - (p + 2)); |
644 | 0 | in_out->len--; |
645 | 0 | } else if (*(p + 1) == 'n') { |
646 | 0 | *p = '\n'; |
647 | 0 | memmove(p + 1, p + 2, lim - (p + 2)); |
648 | 0 | in_out->len--; |
649 | 0 | } |
650 | 0 | } |
651 | 0 | } |
652 | 0 | } Unexecuted instantiation: msg_parser.c:unescape_crlf Unexecuted instantiation: parse_uri.c:unescape_crlf Unexecuted instantiation: parse_fline.c:unescape_crlf Unexecuted instantiation: parse_hname2.c:unescape_crlf Unexecuted instantiation: parse_content.c:unescape_crlf Unexecuted instantiation: hf.c:unescape_crlf Unexecuted instantiation: parse_to.c:unescape_crlf Unexecuted instantiation: parse_via.c:unescape_crlf Unexecuted instantiation: dprint.c:unescape_crlf Unexecuted instantiation: pt.c:unescape_crlf Unexecuted instantiation: strcommon.c:unescape_crlf Unexecuted instantiation: ut.c:unescape_crlf Unexecuted instantiation: sdp_ops.c:unescape_crlf Unexecuted instantiation: statistics.c:unescape_crlf Unexecuted instantiation: pvar.c:unescape_crlf Unexecuted instantiation: route.c:unescape_crlf Unexecuted instantiation: socket_info.c:unescape_crlf Unexecuted instantiation: ipc.c:unescape_crlf Unexecuted instantiation: core_stats.c:unescape_crlf Unexecuted instantiation: route_struct.c:unescape_crlf Unexecuted instantiation: dset.c:unescape_crlf Unexecuted instantiation: pt_scaling.c:unescape_crlf Unexecuted instantiation: pt_load.c:unescape_crlf Unexecuted instantiation: sr_module.c:unescape_crlf Unexecuted instantiation: action.c:unescape_crlf Unexecuted instantiation: flags.c:unescape_crlf Unexecuted instantiation: db_insertq.c:unescape_crlf Unexecuted instantiation: db.c:unescape_crlf Unexecuted instantiation: proto_tcp.c:unescape_crlf Unexecuted instantiation: proto_udp.c:unescape_crlf Unexecuted instantiation: trans.c:unescape_crlf Unexecuted instantiation: net_tcp_proc.c:unescape_crlf Unexecuted instantiation: net_tcp.c:unescape_crlf Unexecuted instantiation: tcp_common.c:unescape_crlf Unexecuted instantiation: net_udp.c:unescape_crlf Unexecuted instantiation: tcp_conn_profile.c:unescape_crlf Unexecuted instantiation: trans_trace.c:unescape_crlf Unexecuted instantiation: net_tcp_report.c:unescape_crlf Unexecuted instantiation: mi.c:unescape_crlf Unexecuted instantiation: item.c:unescape_crlf Unexecuted instantiation: sdp.c:unescape_crlf Unexecuted instantiation: sdp_helpr_funcs.c:unescape_crlf Unexecuted instantiation: digest_parser.c:unescape_crlf Unexecuted instantiation: param_parser.c:unescape_crlf Unexecuted instantiation: parse_contact.c:unescape_crlf Unexecuted instantiation: parse_body.c:unescape_crlf Unexecuted instantiation: parse_security.c:unescape_crlf Unexecuted instantiation: parse_call_info.c:unescape_crlf Unexecuted instantiation: parse_event.c:unescape_crlf Unexecuted instantiation: parse_disposition.c:unescape_crlf Unexecuted instantiation: parse_authenticate.c:unescape_crlf Unexecuted instantiation: parser_f.c:unescape_crlf Unexecuted instantiation: parse_rpid.c:unescape_crlf Unexecuted instantiation: parse_ppi.c:unescape_crlf Unexecuted instantiation: parse_fcaps.c:unescape_crlf Unexecuted instantiation: parse_rr.c:unescape_crlf Unexecuted instantiation: parse_param.c:unescape_crlf Unexecuted instantiation: parse_diversion.c:unescape_crlf Unexecuted instantiation: parse_nameaddr.c:unescape_crlf Unexecuted instantiation: parse_expires.c:unescape_crlf Unexecuted instantiation: parse_refer_to.c:unescape_crlf Unexecuted instantiation: parse_from.c:unescape_crlf Unexecuted instantiation: parse_pai.c:unescape_crlf Unexecuted instantiation: event_interface.c:unescape_crlf Unexecuted instantiation: receive.c:unescape_crlf Unexecuted instantiation: ip_addr.c:unescape_crlf Unexecuted instantiation: async.c:unescape_crlf Unexecuted instantiation: daemonize.c:unescape_crlf Unexecuted instantiation: timer.c:unescape_crlf Unexecuted instantiation: trace_api.c:unescape_crlf Unexecuted instantiation: mod_fix.c:unescape_crlf Unexecuted instantiation: reactor.c:unescape_crlf Unexecuted instantiation: forward.c:unescape_crlf Unexecuted instantiation: xlog.c:unescape_crlf Unexecuted instantiation: blacklists.c:unescape_crlf Unexecuted instantiation: usr_avp.c:unescape_crlf Unexecuted instantiation: resolve.c:unescape_crlf Unexecuted instantiation: io_wait.c:unescape_crlf Unexecuted instantiation: transformations.c:unescape_crlf Unexecuted instantiation: sr_module_deps.c:unescape_crlf Unexecuted instantiation: cfg_reload.c:unescape_crlf Unexecuted instantiation: time_rec.c:unescape_crlf Unexecuted instantiation: status_report.c:unescape_crlf Unexecuted instantiation: signals.c:unescape_crlf Unexecuted instantiation: db_id.c:unescape_crlf Unexecuted instantiation: csv.c:unescape_crlf Unexecuted instantiation: msg_translator.c:unescape_crlf Unexecuted instantiation: md5utils.c:unescape_crlf Unexecuted instantiation: cfg.tab.c:unescape_crlf Unexecuted instantiation: modparam.c:unescape_crlf Unexecuted instantiation: crc.c:unescape_crlf Unexecuted instantiation: lex.yy.c:unescape_crlf Unexecuted instantiation: cfg_pp.c:unescape_crlf Unexecuted instantiation: shutdown.c:unescape_crlf Unexecuted instantiation: core_cmds.c:unescape_crlf Unexecuted instantiation: cachedb.c:unescape_crlf Unexecuted instantiation: cachedb_id.c:unescape_crlf |
653 | | |
654 | | /* @max_digits should be just 15, but there are exceptions to this rule! */ |
655 | | static inline int _is_e164(const str* _user, int require_plus, int max_digits) |
656 | 0 | { |
657 | 0 | char *d, *start, *end; |
658 | 0 |
|
659 | 0 | if (_user->len < 1) |
660 | 0 | return -1; |
661 | 0 |
|
662 | 0 | if (_user->s[0] == '+') { |
663 | 0 | start = _user->s + 1; |
664 | 0 | } else { |
665 | 0 | if (require_plus) |
666 | 0 | return -1; |
667 | 0 | start = _user->s; |
668 | 0 | } |
669 | 0 |
|
670 | 0 | end = _user->s + _user->len; |
671 | 0 | if (end - start < 2 || end - start > max_digits) |
672 | 0 | return -1; |
673 | 0 |
|
674 | 0 | for (d = start; d < end; d++) |
675 | 0 | if (!_isdigit(*d)) |
676 | 0 | return -1; |
677 | 0 |
|
678 | 0 | return 1; |
679 | 0 | } Unexecuted instantiation: msg_parser.c:_is_e164 Unexecuted instantiation: parse_uri.c:_is_e164 Unexecuted instantiation: parse_fline.c:_is_e164 Unexecuted instantiation: parse_hname2.c:_is_e164 Unexecuted instantiation: parse_content.c:_is_e164 Unexecuted instantiation: hf.c:_is_e164 Unexecuted instantiation: parse_to.c:_is_e164 Unexecuted instantiation: parse_via.c:_is_e164 Unexecuted instantiation: dprint.c:_is_e164 Unexecuted instantiation: pt.c:_is_e164 Unexecuted instantiation: strcommon.c:_is_e164 Unexecuted instantiation: ut.c:_is_e164 Unexecuted instantiation: sdp_ops.c:_is_e164 Unexecuted instantiation: statistics.c:_is_e164 Unexecuted instantiation: pvar.c:_is_e164 Unexecuted instantiation: route.c:_is_e164 Unexecuted instantiation: socket_info.c:_is_e164 Unexecuted instantiation: ipc.c:_is_e164 Unexecuted instantiation: core_stats.c:_is_e164 Unexecuted instantiation: route_struct.c:_is_e164 Unexecuted instantiation: dset.c:_is_e164 Unexecuted instantiation: pt_scaling.c:_is_e164 Unexecuted instantiation: pt_load.c:_is_e164 Unexecuted instantiation: sr_module.c:_is_e164 Unexecuted instantiation: action.c:_is_e164 Unexecuted instantiation: flags.c:_is_e164 Unexecuted instantiation: db_insertq.c:_is_e164 Unexecuted instantiation: db.c:_is_e164 Unexecuted instantiation: proto_tcp.c:_is_e164 Unexecuted instantiation: proto_udp.c:_is_e164 Unexecuted instantiation: trans.c:_is_e164 Unexecuted instantiation: net_tcp_proc.c:_is_e164 Unexecuted instantiation: net_tcp.c:_is_e164 Unexecuted instantiation: tcp_common.c:_is_e164 Unexecuted instantiation: net_udp.c:_is_e164 Unexecuted instantiation: tcp_conn_profile.c:_is_e164 Unexecuted instantiation: trans_trace.c:_is_e164 Unexecuted instantiation: net_tcp_report.c:_is_e164 Unexecuted instantiation: mi.c:_is_e164 Unexecuted instantiation: item.c:_is_e164 Unexecuted instantiation: sdp.c:_is_e164 Unexecuted instantiation: sdp_helpr_funcs.c:_is_e164 Unexecuted instantiation: digest_parser.c:_is_e164 Unexecuted instantiation: param_parser.c:_is_e164 Unexecuted instantiation: parse_contact.c:_is_e164 Unexecuted instantiation: parse_body.c:_is_e164 Unexecuted instantiation: parse_security.c:_is_e164 Unexecuted instantiation: parse_call_info.c:_is_e164 Unexecuted instantiation: parse_event.c:_is_e164 Unexecuted instantiation: parse_disposition.c:_is_e164 Unexecuted instantiation: parse_authenticate.c:_is_e164 Unexecuted instantiation: parser_f.c:_is_e164 Unexecuted instantiation: parse_rpid.c:_is_e164 Unexecuted instantiation: parse_ppi.c:_is_e164 Unexecuted instantiation: parse_fcaps.c:_is_e164 Unexecuted instantiation: parse_rr.c:_is_e164 Unexecuted instantiation: parse_param.c:_is_e164 Unexecuted instantiation: parse_diversion.c:_is_e164 Unexecuted instantiation: parse_nameaddr.c:_is_e164 Unexecuted instantiation: parse_expires.c:_is_e164 Unexecuted instantiation: parse_refer_to.c:_is_e164 Unexecuted instantiation: parse_from.c:_is_e164 Unexecuted instantiation: parse_pai.c:_is_e164 Unexecuted instantiation: event_interface.c:_is_e164 Unexecuted instantiation: receive.c:_is_e164 Unexecuted instantiation: ip_addr.c:_is_e164 Unexecuted instantiation: async.c:_is_e164 Unexecuted instantiation: daemonize.c:_is_e164 Unexecuted instantiation: timer.c:_is_e164 Unexecuted instantiation: trace_api.c:_is_e164 Unexecuted instantiation: mod_fix.c:_is_e164 Unexecuted instantiation: reactor.c:_is_e164 Unexecuted instantiation: forward.c:_is_e164 Unexecuted instantiation: xlog.c:_is_e164 Unexecuted instantiation: blacklists.c:_is_e164 Unexecuted instantiation: usr_avp.c:_is_e164 Unexecuted instantiation: resolve.c:_is_e164 Unexecuted instantiation: io_wait.c:_is_e164 Unexecuted instantiation: transformations.c:_is_e164 Unexecuted instantiation: sr_module_deps.c:_is_e164 Unexecuted instantiation: cfg_reload.c:_is_e164 Unexecuted instantiation: time_rec.c:_is_e164 Unexecuted instantiation: status_report.c:_is_e164 Unexecuted instantiation: signals.c:_is_e164 Unexecuted instantiation: db_id.c:_is_e164 Unexecuted instantiation: csv.c:_is_e164 Unexecuted instantiation: msg_translator.c:_is_e164 Unexecuted instantiation: md5utils.c:_is_e164 Unexecuted instantiation: cfg.tab.c:_is_e164 Unexecuted instantiation: modparam.c:_is_e164 Unexecuted instantiation: crc.c:_is_e164 Unexecuted instantiation: lex.yy.c:_is_e164 Unexecuted instantiation: cfg_pp.c:_is_e164 Unexecuted instantiation: shutdown.c:_is_e164 Unexecuted instantiation: core_cmds.c:_is_e164 Unexecuted instantiation: cachedb.c:_is_e164 Unexecuted instantiation: cachedb_id.c:_is_e164 |
680 | | #define is_e164(_user) _is_e164(_user, 1, 15) |
681 | | |
682 | | /* |
683 | | * Convert a string to lower case |
684 | | */ |
685 | | static inline void strlower(str* _s) |
686 | 0 | { |
687 | 0 | int i; |
688 | 0 |
|
689 | 0 | for(i = 0; i < _s->len; i++) { |
690 | 0 | _s->s[i] = tolower(_s->s[i]); |
691 | 0 | } |
692 | 0 | } Unexecuted instantiation: msg_parser.c:strlower Unexecuted instantiation: parse_uri.c:strlower Unexecuted instantiation: parse_fline.c:strlower Unexecuted instantiation: parse_hname2.c:strlower Unexecuted instantiation: parse_content.c:strlower Unexecuted instantiation: hf.c:strlower Unexecuted instantiation: parse_to.c:strlower Unexecuted instantiation: parse_via.c:strlower Unexecuted instantiation: dprint.c:strlower Unexecuted instantiation: pt.c:strlower Unexecuted instantiation: strcommon.c:strlower Unexecuted instantiation: ut.c:strlower Unexecuted instantiation: sdp_ops.c:strlower Unexecuted instantiation: statistics.c:strlower Unexecuted instantiation: pvar.c:strlower Unexecuted instantiation: route.c:strlower Unexecuted instantiation: socket_info.c:strlower Unexecuted instantiation: ipc.c:strlower Unexecuted instantiation: core_stats.c:strlower Unexecuted instantiation: route_struct.c:strlower Unexecuted instantiation: dset.c:strlower Unexecuted instantiation: pt_scaling.c:strlower Unexecuted instantiation: pt_load.c:strlower Unexecuted instantiation: sr_module.c:strlower Unexecuted instantiation: action.c:strlower Unexecuted instantiation: flags.c:strlower Unexecuted instantiation: db_insertq.c:strlower Unexecuted instantiation: db.c:strlower Unexecuted instantiation: proto_tcp.c:strlower Unexecuted instantiation: proto_udp.c:strlower Unexecuted instantiation: trans.c:strlower Unexecuted instantiation: net_tcp_proc.c:strlower Unexecuted instantiation: net_tcp.c:strlower Unexecuted instantiation: tcp_common.c:strlower Unexecuted instantiation: net_udp.c:strlower Unexecuted instantiation: tcp_conn_profile.c:strlower Unexecuted instantiation: trans_trace.c:strlower Unexecuted instantiation: net_tcp_report.c:strlower Unexecuted instantiation: mi.c:strlower Unexecuted instantiation: item.c:strlower Unexecuted instantiation: sdp.c:strlower Unexecuted instantiation: sdp_helpr_funcs.c:strlower Unexecuted instantiation: digest_parser.c:strlower Unexecuted instantiation: param_parser.c:strlower Unexecuted instantiation: parse_contact.c:strlower Unexecuted instantiation: parse_body.c:strlower Unexecuted instantiation: parse_security.c:strlower Unexecuted instantiation: parse_call_info.c:strlower Unexecuted instantiation: parse_event.c:strlower Unexecuted instantiation: parse_disposition.c:strlower Unexecuted instantiation: parse_authenticate.c:strlower Unexecuted instantiation: parser_f.c:strlower Unexecuted instantiation: parse_rpid.c:strlower Unexecuted instantiation: parse_ppi.c:strlower Unexecuted instantiation: parse_fcaps.c:strlower Unexecuted instantiation: parse_rr.c:strlower Unexecuted instantiation: parse_param.c:strlower Unexecuted instantiation: parse_diversion.c:strlower Unexecuted instantiation: parse_nameaddr.c:strlower Unexecuted instantiation: parse_expires.c:strlower Unexecuted instantiation: parse_refer_to.c:strlower Unexecuted instantiation: parse_from.c:strlower Unexecuted instantiation: parse_pai.c:strlower Unexecuted instantiation: event_interface.c:strlower Unexecuted instantiation: receive.c:strlower Unexecuted instantiation: ip_addr.c:strlower Unexecuted instantiation: async.c:strlower Unexecuted instantiation: daemonize.c:strlower Unexecuted instantiation: timer.c:strlower Unexecuted instantiation: trace_api.c:strlower Unexecuted instantiation: mod_fix.c:strlower Unexecuted instantiation: reactor.c:strlower Unexecuted instantiation: forward.c:strlower Unexecuted instantiation: xlog.c:strlower Unexecuted instantiation: blacklists.c:strlower Unexecuted instantiation: usr_avp.c:strlower Unexecuted instantiation: resolve.c:strlower Unexecuted instantiation: io_wait.c:strlower Unexecuted instantiation: transformations.c:strlower Unexecuted instantiation: sr_module_deps.c:strlower Unexecuted instantiation: cfg_reload.c:strlower Unexecuted instantiation: time_rec.c:strlower Unexecuted instantiation: status_report.c:strlower Unexecuted instantiation: signals.c:strlower Unexecuted instantiation: db_id.c:strlower Unexecuted instantiation: csv.c:strlower Unexecuted instantiation: msg_translator.c:strlower Unexecuted instantiation: md5utils.c:strlower Unexecuted instantiation: cfg.tab.c:strlower Unexecuted instantiation: modparam.c:strlower Unexecuted instantiation: crc.c:strlower Unexecuted instantiation: lex.yy.c:strlower Unexecuted instantiation: cfg_pp.c:strlower Unexecuted instantiation: shutdown.c:strlower Unexecuted instantiation: core_cmds.c:strlower Unexecuted instantiation: cachedb.c:strlower Unexecuted instantiation: cachedb_id.c:strlower |
693 | | |
694 | | /* |
695 | | * Convert a str into a short integer |
696 | | */ |
697 | | static inline int str2short(str* _s, unsigned short *_r) |
698 | 0 | { |
699 | 0 | int i; |
700 | 0 |
|
701 | 0 | if (_s==0 || _s->s == 0 || _s->len == 0 || _r == 0) |
702 | 0 | return -1; |
703 | 0 |
|
704 | 0 | *_r = 0; |
705 | 0 | for(i = 0; i < _s->len; i++) { |
706 | 0 | if ((_s->s[i] >= '0') && (_s->s[i] <= '9')) { |
707 | 0 | *_r *= 10; |
708 | 0 | *_r += _s->s[i] - '0'; |
709 | 0 | } else { |
710 | 0 | return -1; |
711 | 0 | } |
712 | 0 | } |
713 | 0 |
|
714 | 0 | return 0; |
715 | 0 | } Unexecuted instantiation: msg_parser.c:str2short Unexecuted instantiation: parse_uri.c:str2short Unexecuted instantiation: parse_fline.c:str2short Unexecuted instantiation: parse_hname2.c:str2short Unexecuted instantiation: parse_content.c:str2short Unexecuted instantiation: hf.c:str2short Unexecuted instantiation: parse_to.c:str2short Unexecuted instantiation: parse_via.c:str2short Unexecuted instantiation: dprint.c:str2short Unexecuted instantiation: pt.c:str2short Unexecuted instantiation: strcommon.c:str2short Unexecuted instantiation: ut.c:str2short Unexecuted instantiation: sdp_ops.c:str2short Unexecuted instantiation: statistics.c:str2short Unexecuted instantiation: pvar.c:str2short Unexecuted instantiation: route.c:str2short Unexecuted instantiation: socket_info.c:str2short Unexecuted instantiation: ipc.c:str2short Unexecuted instantiation: core_stats.c:str2short Unexecuted instantiation: route_struct.c:str2short Unexecuted instantiation: dset.c:str2short Unexecuted instantiation: pt_scaling.c:str2short Unexecuted instantiation: pt_load.c:str2short Unexecuted instantiation: sr_module.c:str2short Unexecuted instantiation: action.c:str2short Unexecuted instantiation: flags.c:str2short Unexecuted instantiation: db_insertq.c:str2short Unexecuted instantiation: db.c:str2short Unexecuted instantiation: proto_tcp.c:str2short Unexecuted instantiation: proto_udp.c:str2short Unexecuted instantiation: trans.c:str2short Unexecuted instantiation: net_tcp_proc.c:str2short Unexecuted instantiation: net_tcp.c:str2short Unexecuted instantiation: tcp_common.c:str2short Unexecuted instantiation: net_udp.c:str2short Unexecuted instantiation: tcp_conn_profile.c:str2short Unexecuted instantiation: trans_trace.c:str2short Unexecuted instantiation: net_tcp_report.c:str2short Unexecuted instantiation: mi.c:str2short Unexecuted instantiation: item.c:str2short Unexecuted instantiation: sdp.c:str2short Unexecuted instantiation: sdp_helpr_funcs.c:str2short Unexecuted instantiation: digest_parser.c:str2short Unexecuted instantiation: param_parser.c:str2short Unexecuted instantiation: parse_contact.c:str2short Unexecuted instantiation: parse_body.c:str2short Unexecuted instantiation: parse_security.c:str2short Unexecuted instantiation: parse_call_info.c:str2short Unexecuted instantiation: parse_event.c:str2short Unexecuted instantiation: parse_disposition.c:str2short Unexecuted instantiation: parse_authenticate.c:str2short Unexecuted instantiation: parser_f.c:str2short Unexecuted instantiation: parse_rpid.c:str2short Unexecuted instantiation: parse_ppi.c:str2short Unexecuted instantiation: parse_fcaps.c:str2short Unexecuted instantiation: parse_rr.c:str2short Unexecuted instantiation: parse_param.c:str2short Unexecuted instantiation: parse_diversion.c:str2short Unexecuted instantiation: parse_nameaddr.c:str2short Unexecuted instantiation: parse_expires.c:str2short Unexecuted instantiation: parse_refer_to.c:str2short Unexecuted instantiation: parse_from.c:str2short Unexecuted instantiation: parse_pai.c:str2short Unexecuted instantiation: event_interface.c:str2short Unexecuted instantiation: receive.c:str2short Unexecuted instantiation: ip_addr.c:str2short Unexecuted instantiation: async.c:str2short Unexecuted instantiation: daemonize.c:str2short Unexecuted instantiation: timer.c:str2short Unexecuted instantiation: trace_api.c:str2short Unexecuted instantiation: mod_fix.c:str2short Unexecuted instantiation: reactor.c:str2short Unexecuted instantiation: forward.c:str2short Unexecuted instantiation: xlog.c:str2short Unexecuted instantiation: blacklists.c:str2short Unexecuted instantiation: usr_avp.c:str2short Unexecuted instantiation: resolve.c:str2short Unexecuted instantiation: io_wait.c:str2short Unexecuted instantiation: transformations.c:str2short Unexecuted instantiation: sr_module_deps.c:str2short Unexecuted instantiation: cfg_reload.c:str2short Unexecuted instantiation: time_rec.c:str2short Unexecuted instantiation: status_report.c:str2short Unexecuted instantiation: signals.c:str2short Unexecuted instantiation: db_id.c:str2short Unexecuted instantiation: csv.c:str2short Unexecuted instantiation: msg_translator.c:str2short Unexecuted instantiation: md5utils.c:str2short Unexecuted instantiation: cfg.tab.c:str2short Unexecuted instantiation: modparam.c:str2short Unexecuted instantiation: crc.c:str2short Unexecuted instantiation: lex.yy.c:str2short Unexecuted instantiation: cfg_pp.c:str2short Unexecuted instantiation: shutdown.c:str2short Unexecuted instantiation: core_cmds.c:str2short Unexecuted instantiation: cachedb.c:str2short Unexecuted instantiation: cachedb_id.c:str2short |
716 | | |
717 | | /* |
718 | | * Convert a str into integer |
719 | | */ |
720 | | static inline int str2int(const str* _s, unsigned int* _r) |
721 | 0 | { |
722 | 0 | int i; |
723 | |
|
724 | 0 | if (_s==0 || _s->s == 0 || _s->len == 0 || _r == 0) |
725 | 0 | return -1; |
726 | | |
727 | 0 | *_r = 0; |
728 | 0 | for(i = 0; i < _s->len; i++) { |
729 | 0 | if ((_s->s[i] >= '0') && (_s->s[i] <= '9')) { |
730 | 0 | *_r *= 10; |
731 | 0 | *_r += _s->s[i] - '0'; |
732 | 0 | } else { |
733 | 0 | return -1; |
734 | 0 | } |
735 | 0 | } |
736 | | |
737 | 0 | return 0; |
738 | 0 | } Unexecuted instantiation: msg_parser.c:str2int Unexecuted instantiation: parse_uri.c:str2int Unexecuted instantiation: parse_fline.c:str2int Unexecuted instantiation: parse_hname2.c:str2int Unexecuted instantiation: parse_content.c:str2int Unexecuted instantiation: hf.c:str2int Unexecuted instantiation: parse_to.c:str2int Unexecuted instantiation: parse_via.c:str2int Unexecuted instantiation: dprint.c:str2int Unexecuted instantiation: pt.c:str2int Unexecuted instantiation: strcommon.c:str2int Unexecuted instantiation: ut.c:str2int Unexecuted instantiation: sdp_ops.c:str2int Unexecuted instantiation: statistics.c:str2int Unexecuted instantiation: pvar.c:str2int Unexecuted instantiation: route.c:str2int Unexecuted instantiation: socket_info.c:str2int Unexecuted instantiation: ipc.c:str2int Unexecuted instantiation: core_stats.c:str2int Unexecuted instantiation: route_struct.c:str2int Unexecuted instantiation: dset.c:str2int Unexecuted instantiation: pt_scaling.c:str2int Unexecuted instantiation: pt_load.c:str2int Unexecuted instantiation: sr_module.c:str2int Unexecuted instantiation: action.c:str2int Unexecuted instantiation: flags.c:str2int Unexecuted instantiation: db_insertq.c:str2int Unexecuted instantiation: db.c:str2int Unexecuted instantiation: proto_tcp.c:str2int Unexecuted instantiation: proto_udp.c:str2int Unexecuted instantiation: trans.c:str2int Unexecuted instantiation: net_tcp_proc.c:str2int Unexecuted instantiation: net_tcp.c:str2int Unexecuted instantiation: tcp_common.c:str2int Unexecuted instantiation: net_udp.c:str2int Unexecuted instantiation: tcp_conn_profile.c:str2int Unexecuted instantiation: trans_trace.c:str2int Unexecuted instantiation: net_tcp_report.c:str2int Unexecuted instantiation: mi.c:str2int Unexecuted instantiation: item.c:str2int Unexecuted instantiation: sdp.c:str2int Unexecuted instantiation: sdp_helpr_funcs.c:str2int Unexecuted instantiation: digest_parser.c:str2int Unexecuted instantiation: param_parser.c:str2int Unexecuted instantiation: parse_contact.c:str2int Unexecuted instantiation: parse_body.c:str2int Unexecuted instantiation: parse_security.c:str2int Unexecuted instantiation: parse_call_info.c:str2int Unexecuted instantiation: parse_event.c:str2int Unexecuted instantiation: parse_disposition.c:str2int Unexecuted instantiation: parse_authenticate.c:str2int Unexecuted instantiation: parser_f.c:str2int Unexecuted instantiation: parse_rpid.c:str2int Unexecuted instantiation: parse_ppi.c:str2int Unexecuted instantiation: parse_fcaps.c:str2int Unexecuted instantiation: parse_rr.c:str2int Unexecuted instantiation: parse_param.c:str2int Unexecuted instantiation: parse_diversion.c:str2int Unexecuted instantiation: parse_nameaddr.c:str2int Unexecuted instantiation: parse_expires.c:str2int Unexecuted instantiation: parse_refer_to.c:str2int Unexecuted instantiation: parse_from.c:str2int Unexecuted instantiation: parse_pai.c:str2int Unexecuted instantiation: event_interface.c:str2int Unexecuted instantiation: receive.c:str2int Unexecuted instantiation: ip_addr.c:str2int Unexecuted instantiation: async.c:str2int Unexecuted instantiation: daemonize.c:str2int Unexecuted instantiation: timer.c:str2int Unexecuted instantiation: trace_api.c:str2int Unexecuted instantiation: mod_fix.c:str2int Unexecuted instantiation: reactor.c:str2int Unexecuted instantiation: forward.c:str2int Unexecuted instantiation: xlog.c:str2int Unexecuted instantiation: blacklists.c:str2int Unexecuted instantiation: usr_avp.c:str2int Unexecuted instantiation: resolve.c:str2int Unexecuted instantiation: io_wait.c:str2int Unexecuted instantiation: transformations.c:str2int Unexecuted instantiation: sr_module_deps.c:str2int Unexecuted instantiation: cfg_reload.c:str2int Unexecuted instantiation: time_rec.c:str2int Unexecuted instantiation: status_report.c:str2int Unexecuted instantiation: signals.c:str2int Unexecuted instantiation: db_id.c:str2int Unexecuted instantiation: csv.c:str2int Unexecuted instantiation: msg_translator.c:str2int Unexecuted instantiation: md5utils.c:str2int Unexecuted instantiation: cfg.tab.c:str2int Unexecuted instantiation: modparam.c:str2int Unexecuted instantiation: crc.c:str2int Unexecuted instantiation: lex.yy.c:str2int Unexecuted instantiation: cfg_pp.c:str2int Unexecuted instantiation: shutdown.c:str2int Unexecuted instantiation: core_cmds.c:str2int Unexecuted instantiation: cachedb.c:str2int Unexecuted instantiation: cachedb_id.c:str2int |
739 | | |
740 | | /* |
741 | | * Convert a str into a big integer |
742 | | */ |
743 | | static inline int str2int64(const str* _s, uint64_t *_r) |
744 | 0 | { |
745 | 0 | int i; |
746 | 0 |
|
747 | 0 | if (_s==0 || _s->s == 0 || _s->len == 0 || _r == 0) |
748 | 0 | return -1; |
749 | 0 |
|
750 | 0 | *_r = 0; |
751 | 0 | for(i = 0; i < _s->len; i++) { |
752 | 0 | if ((_s->s[i] >= '0') && (_s->s[i] <= '9')) { |
753 | 0 | *_r *= 10; |
754 | 0 | *_r += _s->s[i] - '0'; |
755 | 0 | } else { |
756 | 0 | return -1; |
757 | 0 | } |
758 | 0 | } |
759 | 0 |
|
760 | 0 | return 0; |
761 | 0 | } Unexecuted instantiation: msg_parser.c:str2int64 Unexecuted instantiation: parse_uri.c:str2int64 Unexecuted instantiation: parse_fline.c:str2int64 Unexecuted instantiation: parse_hname2.c:str2int64 Unexecuted instantiation: parse_content.c:str2int64 Unexecuted instantiation: hf.c:str2int64 Unexecuted instantiation: parse_to.c:str2int64 Unexecuted instantiation: parse_via.c:str2int64 Unexecuted instantiation: dprint.c:str2int64 Unexecuted instantiation: pt.c:str2int64 Unexecuted instantiation: strcommon.c:str2int64 Unexecuted instantiation: ut.c:str2int64 Unexecuted instantiation: sdp_ops.c:str2int64 Unexecuted instantiation: statistics.c:str2int64 Unexecuted instantiation: pvar.c:str2int64 Unexecuted instantiation: route.c:str2int64 Unexecuted instantiation: socket_info.c:str2int64 Unexecuted instantiation: ipc.c:str2int64 Unexecuted instantiation: core_stats.c:str2int64 Unexecuted instantiation: route_struct.c:str2int64 Unexecuted instantiation: dset.c:str2int64 Unexecuted instantiation: pt_scaling.c:str2int64 Unexecuted instantiation: pt_load.c:str2int64 Unexecuted instantiation: sr_module.c:str2int64 Unexecuted instantiation: action.c:str2int64 Unexecuted instantiation: flags.c:str2int64 Unexecuted instantiation: db_insertq.c:str2int64 Unexecuted instantiation: db.c:str2int64 Unexecuted instantiation: proto_tcp.c:str2int64 Unexecuted instantiation: proto_udp.c:str2int64 Unexecuted instantiation: trans.c:str2int64 Unexecuted instantiation: net_tcp_proc.c:str2int64 Unexecuted instantiation: net_tcp.c:str2int64 Unexecuted instantiation: tcp_common.c:str2int64 Unexecuted instantiation: net_udp.c:str2int64 Unexecuted instantiation: tcp_conn_profile.c:str2int64 Unexecuted instantiation: trans_trace.c:str2int64 Unexecuted instantiation: net_tcp_report.c:str2int64 Unexecuted instantiation: mi.c:str2int64 Unexecuted instantiation: item.c:str2int64 Unexecuted instantiation: sdp.c:str2int64 Unexecuted instantiation: sdp_helpr_funcs.c:str2int64 Unexecuted instantiation: digest_parser.c:str2int64 Unexecuted instantiation: param_parser.c:str2int64 Unexecuted instantiation: parse_contact.c:str2int64 Unexecuted instantiation: parse_body.c:str2int64 Unexecuted instantiation: parse_security.c:str2int64 Unexecuted instantiation: parse_call_info.c:str2int64 Unexecuted instantiation: parse_event.c:str2int64 Unexecuted instantiation: parse_disposition.c:str2int64 Unexecuted instantiation: parse_authenticate.c:str2int64 Unexecuted instantiation: parser_f.c:str2int64 Unexecuted instantiation: parse_rpid.c:str2int64 Unexecuted instantiation: parse_ppi.c:str2int64 Unexecuted instantiation: parse_fcaps.c:str2int64 Unexecuted instantiation: parse_rr.c:str2int64 Unexecuted instantiation: parse_param.c:str2int64 Unexecuted instantiation: parse_diversion.c:str2int64 Unexecuted instantiation: parse_nameaddr.c:str2int64 Unexecuted instantiation: parse_expires.c:str2int64 Unexecuted instantiation: parse_refer_to.c:str2int64 Unexecuted instantiation: parse_from.c:str2int64 Unexecuted instantiation: parse_pai.c:str2int64 Unexecuted instantiation: event_interface.c:str2int64 Unexecuted instantiation: receive.c:str2int64 Unexecuted instantiation: ip_addr.c:str2int64 Unexecuted instantiation: async.c:str2int64 Unexecuted instantiation: daemonize.c:str2int64 Unexecuted instantiation: timer.c:str2int64 Unexecuted instantiation: trace_api.c:str2int64 Unexecuted instantiation: mod_fix.c:str2int64 Unexecuted instantiation: reactor.c:str2int64 Unexecuted instantiation: forward.c:str2int64 Unexecuted instantiation: xlog.c:str2int64 Unexecuted instantiation: blacklists.c:str2int64 Unexecuted instantiation: usr_avp.c:str2int64 Unexecuted instantiation: resolve.c:str2int64 Unexecuted instantiation: io_wait.c:str2int64 Unexecuted instantiation: transformations.c:str2int64 Unexecuted instantiation: sr_module_deps.c:str2int64 Unexecuted instantiation: cfg_reload.c:str2int64 Unexecuted instantiation: time_rec.c:str2int64 Unexecuted instantiation: status_report.c:str2int64 Unexecuted instantiation: signals.c:str2int64 Unexecuted instantiation: db_id.c:str2int64 Unexecuted instantiation: csv.c:str2int64 Unexecuted instantiation: msg_translator.c:str2int64 Unexecuted instantiation: md5utils.c:str2int64 Unexecuted instantiation: cfg.tab.c:str2int64 Unexecuted instantiation: modparam.c:str2int64 Unexecuted instantiation: crc.c:str2int64 Unexecuted instantiation: lex.yy.c:str2int64 Unexecuted instantiation: cfg_pp.c:str2int64 Unexecuted instantiation: shutdown.c:str2int64 Unexecuted instantiation: core_cmds.c:str2int64 Unexecuted instantiation: cachedb.c:str2int64 Unexecuted instantiation: cachedb_id.c:str2int64 |
762 | | |
763 | | |
764 | | /* |
765 | | * Convert a str into signed integer |
766 | | */ |
767 | | static inline int str2sint(const str* _s, int* _r) |
768 | 0 | { |
769 | 0 | int i; |
770 | 0 | int s; |
771 | |
|
772 | 0 | if (_s==0 || _s->s == 0 || _s->len == 0 || _r == 0) |
773 | 0 | return -1; |
774 | | |
775 | 0 | *_r = 0; |
776 | 0 | s = 1; |
777 | 0 | i=0; |
778 | 0 | if(_s->s[i]=='-') { |
779 | 0 | s=-1; |
780 | 0 | i++; |
781 | 0 | } else if (_s->s[i]=='+') { |
782 | 0 | i++; |
783 | 0 | } |
784 | 0 | for(; i < _s->len; i++) { |
785 | 0 | if ((_s->s[i] >= '0') && (_s->s[i] <= '9')) { |
786 | 0 | *_r *= 10; |
787 | 0 | *_r += _s->s[i] - '0'; |
788 | 0 | } else { |
789 | | //Preserve sign for partially converted strings |
790 | 0 | *_r *= s; |
791 | 0 | return -1; |
792 | 0 | } |
793 | 0 | } |
794 | 0 | *_r *= s; |
795 | 0 | return 0; |
796 | 0 | } Unexecuted instantiation: msg_parser.c:str2sint Unexecuted instantiation: parse_uri.c:str2sint Unexecuted instantiation: parse_fline.c:str2sint Unexecuted instantiation: parse_hname2.c:str2sint Unexecuted instantiation: parse_content.c:str2sint Unexecuted instantiation: hf.c:str2sint Unexecuted instantiation: parse_to.c:str2sint Unexecuted instantiation: parse_via.c:str2sint Unexecuted instantiation: dprint.c:str2sint Unexecuted instantiation: pt.c:str2sint Unexecuted instantiation: strcommon.c:str2sint Unexecuted instantiation: ut.c:str2sint Unexecuted instantiation: sdp_ops.c:str2sint Unexecuted instantiation: statistics.c:str2sint Unexecuted instantiation: pvar.c:str2sint Unexecuted instantiation: route.c:str2sint Unexecuted instantiation: socket_info.c:str2sint Unexecuted instantiation: ipc.c:str2sint Unexecuted instantiation: core_stats.c:str2sint Unexecuted instantiation: route_struct.c:str2sint Unexecuted instantiation: dset.c:str2sint Unexecuted instantiation: pt_scaling.c:str2sint Unexecuted instantiation: pt_load.c:str2sint Unexecuted instantiation: sr_module.c:str2sint Unexecuted instantiation: action.c:str2sint Unexecuted instantiation: flags.c:str2sint Unexecuted instantiation: db_insertq.c:str2sint Unexecuted instantiation: db.c:str2sint Unexecuted instantiation: proto_tcp.c:str2sint Unexecuted instantiation: proto_udp.c:str2sint Unexecuted instantiation: trans.c:str2sint Unexecuted instantiation: net_tcp_proc.c:str2sint Unexecuted instantiation: net_tcp.c:str2sint Unexecuted instantiation: tcp_common.c:str2sint Unexecuted instantiation: net_udp.c:str2sint Unexecuted instantiation: tcp_conn_profile.c:str2sint Unexecuted instantiation: trans_trace.c:str2sint Unexecuted instantiation: net_tcp_report.c:str2sint Unexecuted instantiation: mi.c:str2sint Unexecuted instantiation: item.c:str2sint Unexecuted instantiation: sdp.c:str2sint Unexecuted instantiation: sdp_helpr_funcs.c:str2sint Unexecuted instantiation: digest_parser.c:str2sint Unexecuted instantiation: param_parser.c:str2sint Unexecuted instantiation: parse_contact.c:str2sint Unexecuted instantiation: parse_body.c:str2sint Unexecuted instantiation: parse_security.c:str2sint Unexecuted instantiation: parse_call_info.c:str2sint Unexecuted instantiation: parse_event.c:str2sint Unexecuted instantiation: parse_disposition.c:str2sint Unexecuted instantiation: parse_authenticate.c:str2sint Unexecuted instantiation: parser_f.c:str2sint Unexecuted instantiation: parse_rpid.c:str2sint Unexecuted instantiation: parse_ppi.c:str2sint Unexecuted instantiation: parse_fcaps.c:str2sint Unexecuted instantiation: parse_rr.c:str2sint Unexecuted instantiation: parse_param.c:str2sint Unexecuted instantiation: parse_diversion.c:str2sint Unexecuted instantiation: parse_nameaddr.c:str2sint Unexecuted instantiation: parse_expires.c:str2sint Unexecuted instantiation: parse_refer_to.c:str2sint Unexecuted instantiation: parse_from.c:str2sint Unexecuted instantiation: parse_pai.c:str2sint Unexecuted instantiation: event_interface.c:str2sint Unexecuted instantiation: receive.c:str2sint Unexecuted instantiation: ip_addr.c:str2sint Unexecuted instantiation: async.c:str2sint Unexecuted instantiation: daemonize.c:str2sint Unexecuted instantiation: timer.c:str2sint Unexecuted instantiation: trace_api.c:str2sint Unexecuted instantiation: mod_fix.c:str2sint Unexecuted instantiation: reactor.c:str2sint Unexecuted instantiation: forward.c:str2sint Unexecuted instantiation: xlog.c:str2sint Unexecuted instantiation: blacklists.c:str2sint Unexecuted instantiation: usr_avp.c:str2sint Unexecuted instantiation: resolve.c:str2sint Unexecuted instantiation: io_wait.c:str2sint Unexecuted instantiation: transformations.c:str2sint Unexecuted instantiation: sr_module_deps.c:str2sint Unexecuted instantiation: cfg_reload.c:str2sint Unexecuted instantiation: time_rec.c:str2sint Unexecuted instantiation: status_report.c:str2sint Unexecuted instantiation: signals.c:str2sint Unexecuted instantiation: db_id.c:str2sint Unexecuted instantiation: csv.c:str2sint Unexecuted instantiation: msg_translator.c:str2sint Unexecuted instantiation: md5utils.c:str2sint Unexecuted instantiation: cfg.tab.c:str2sint Unexecuted instantiation: modparam.c:str2sint Unexecuted instantiation: crc.c:str2sint Unexecuted instantiation: lex.yy.c:str2sint Unexecuted instantiation: cfg_pp.c:str2sint Unexecuted instantiation: shutdown.c:str2sint Unexecuted instantiation: core_cmds.c:str2sint Unexecuted instantiation: cachedb.c:str2sint Unexecuted instantiation: cachedb_id.c:str2sint |
797 | | |
798 | | |
799 | | /* |
800 | | * Convert a str (base 10 or 16) into integer |
801 | | */ |
802 | | static inline int strno2int(const str *val, unsigned int *mask ) |
803 | 0 | { |
804 | 0 | /* hexa or decimal*/ |
805 | 0 | if (val->len>2 && val->s[0]=='0' && val->s[1]=='x') { |
806 | 0 | return hexstr2int( val->s+2, val->len-2, mask); |
807 | 0 | } else { |
808 | 0 | return str2int( val, mask); |
809 | 0 | } |
810 | 0 | } Unexecuted instantiation: msg_parser.c:strno2int Unexecuted instantiation: parse_uri.c:strno2int Unexecuted instantiation: parse_fline.c:strno2int Unexecuted instantiation: parse_hname2.c:strno2int Unexecuted instantiation: parse_content.c:strno2int Unexecuted instantiation: hf.c:strno2int Unexecuted instantiation: parse_to.c:strno2int Unexecuted instantiation: parse_via.c:strno2int Unexecuted instantiation: dprint.c:strno2int Unexecuted instantiation: pt.c:strno2int Unexecuted instantiation: strcommon.c:strno2int Unexecuted instantiation: ut.c:strno2int Unexecuted instantiation: sdp_ops.c:strno2int Unexecuted instantiation: statistics.c:strno2int Unexecuted instantiation: pvar.c:strno2int Unexecuted instantiation: route.c:strno2int Unexecuted instantiation: socket_info.c:strno2int Unexecuted instantiation: ipc.c:strno2int Unexecuted instantiation: core_stats.c:strno2int Unexecuted instantiation: route_struct.c:strno2int Unexecuted instantiation: dset.c:strno2int Unexecuted instantiation: pt_scaling.c:strno2int Unexecuted instantiation: pt_load.c:strno2int Unexecuted instantiation: sr_module.c:strno2int Unexecuted instantiation: action.c:strno2int Unexecuted instantiation: flags.c:strno2int Unexecuted instantiation: db_insertq.c:strno2int Unexecuted instantiation: db.c:strno2int Unexecuted instantiation: proto_tcp.c:strno2int Unexecuted instantiation: proto_udp.c:strno2int Unexecuted instantiation: trans.c:strno2int Unexecuted instantiation: net_tcp_proc.c:strno2int Unexecuted instantiation: net_tcp.c:strno2int Unexecuted instantiation: tcp_common.c:strno2int Unexecuted instantiation: net_udp.c:strno2int Unexecuted instantiation: tcp_conn_profile.c:strno2int Unexecuted instantiation: trans_trace.c:strno2int Unexecuted instantiation: net_tcp_report.c:strno2int Unexecuted instantiation: mi.c:strno2int Unexecuted instantiation: item.c:strno2int Unexecuted instantiation: sdp.c:strno2int Unexecuted instantiation: sdp_helpr_funcs.c:strno2int Unexecuted instantiation: digest_parser.c:strno2int Unexecuted instantiation: param_parser.c:strno2int Unexecuted instantiation: parse_contact.c:strno2int Unexecuted instantiation: parse_body.c:strno2int Unexecuted instantiation: parse_security.c:strno2int Unexecuted instantiation: parse_call_info.c:strno2int Unexecuted instantiation: parse_event.c:strno2int Unexecuted instantiation: parse_disposition.c:strno2int Unexecuted instantiation: parse_authenticate.c:strno2int Unexecuted instantiation: parser_f.c:strno2int Unexecuted instantiation: parse_rpid.c:strno2int Unexecuted instantiation: parse_ppi.c:strno2int Unexecuted instantiation: parse_fcaps.c:strno2int Unexecuted instantiation: parse_rr.c:strno2int Unexecuted instantiation: parse_param.c:strno2int Unexecuted instantiation: parse_diversion.c:strno2int Unexecuted instantiation: parse_nameaddr.c:strno2int Unexecuted instantiation: parse_expires.c:strno2int Unexecuted instantiation: parse_refer_to.c:strno2int Unexecuted instantiation: parse_from.c:strno2int Unexecuted instantiation: parse_pai.c:strno2int Unexecuted instantiation: event_interface.c:strno2int Unexecuted instantiation: receive.c:strno2int Unexecuted instantiation: ip_addr.c:strno2int Unexecuted instantiation: async.c:strno2int Unexecuted instantiation: daemonize.c:strno2int Unexecuted instantiation: timer.c:strno2int Unexecuted instantiation: trace_api.c:strno2int Unexecuted instantiation: mod_fix.c:strno2int Unexecuted instantiation: reactor.c:strno2int Unexecuted instantiation: forward.c:strno2int Unexecuted instantiation: xlog.c:strno2int Unexecuted instantiation: blacklists.c:strno2int Unexecuted instantiation: usr_avp.c:strno2int Unexecuted instantiation: resolve.c:strno2int Unexecuted instantiation: io_wait.c:strno2int Unexecuted instantiation: transformations.c:strno2int Unexecuted instantiation: sr_module_deps.c:strno2int Unexecuted instantiation: cfg_reload.c:strno2int Unexecuted instantiation: time_rec.c:strno2int Unexecuted instantiation: status_report.c:strno2int Unexecuted instantiation: signals.c:strno2int Unexecuted instantiation: db_id.c:strno2int Unexecuted instantiation: csv.c:strno2int Unexecuted instantiation: msg_translator.c:strno2int Unexecuted instantiation: md5utils.c:strno2int Unexecuted instantiation: cfg.tab.c:strno2int Unexecuted instantiation: modparam.c:strno2int Unexecuted instantiation: crc.c:strno2int Unexecuted instantiation: lex.yy.c:strno2int Unexecuted instantiation: cfg_pp.c:strno2int Unexecuted instantiation: shutdown.c:strno2int Unexecuted instantiation: core_cmds.c:strno2int Unexecuted instantiation: cachedb.c:strno2int Unexecuted instantiation: cachedb_id.c:strno2int |
811 | | |
812 | | |
813 | | /* |
814 | | * Make a copy of a str structure using shm_malloc |
815 | | * |
816 | | * Return: 0 on success, -1 on failure |
817 | | */ |
818 | | #define shm_str_dup(/* str* */_dst_, /* str* */_src_) \ |
819 | | ({ \ |
820 | | int __ret__; \ |
821 | | (_dst_)->s = shm_malloc((_src_)->len); \ |
822 | | if (!(_dst_)->s) { \ |
823 | | LM_ERR("no shared memory left\n"); \ |
824 | | (_dst_)->len = 0; \ |
825 | | __ret__ = -1; \ |
826 | | } else { \ |
827 | | memcpy((_dst_)->s, (_src_)->s, (_src_)->len); \ |
828 | | (_dst_)->len = (_src_)->len; \ |
829 | | __ret__ = 0; \ |
830 | | } \ |
831 | | __ret__; \ |
832 | | }) |
833 | | |
834 | | |
835 | | /* |
836 | | * Make a copy of an str structure using shm_malloc |
837 | | * + an additional '\0' byte, so you can make use of dst->s |
838 | | * |
839 | | * dst == src is allowed! |
840 | | */ |
841 | | static inline int shm_nt_str_dup(str* dst, const str* src) |
842 | 0 | { |
843 | 0 | const str _src = *src; |
844 | |
|
845 | 0 | if (!_src.s) { |
846 | 0 | memset(dst, 0, sizeof *dst); |
847 | 0 | return 0; |
848 | 0 | } |
849 | | |
850 | 0 | dst->s = shm_malloc(_src.len + 1); |
851 | 0 | if (!dst->s) { |
852 | 0 | LM_ERR("no shared memory left\n"); |
853 | 0 | dst->len = 0; |
854 | 0 | if (dst == src) |
855 | 0 | *dst = _src; |
856 | 0 | return -1; |
857 | 0 | } |
858 | | |
859 | 0 | memcpy(dst->s, _src.s, _src.len); |
860 | 0 | dst->len = _src.len; |
861 | 0 | dst->s[_src.len] = '\0'; |
862 | 0 | return 0; |
863 | 0 | } Unexecuted instantiation: msg_parser.c:shm_nt_str_dup Unexecuted instantiation: parse_uri.c:shm_nt_str_dup Unexecuted instantiation: parse_fline.c:shm_nt_str_dup Unexecuted instantiation: parse_hname2.c:shm_nt_str_dup Unexecuted instantiation: parse_content.c:shm_nt_str_dup Unexecuted instantiation: hf.c:shm_nt_str_dup Unexecuted instantiation: parse_to.c:shm_nt_str_dup Unexecuted instantiation: parse_via.c:shm_nt_str_dup Unexecuted instantiation: dprint.c:shm_nt_str_dup Unexecuted instantiation: pt.c:shm_nt_str_dup Unexecuted instantiation: strcommon.c:shm_nt_str_dup Unexecuted instantiation: ut.c:shm_nt_str_dup Unexecuted instantiation: sdp_ops.c:shm_nt_str_dup Unexecuted instantiation: statistics.c:shm_nt_str_dup Unexecuted instantiation: pvar.c:shm_nt_str_dup Unexecuted instantiation: route.c:shm_nt_str_dup Unexecuted instantiation: socket_info.c:shm_nt_str_dup Unexecuted instantiation: ipc.c:shm_nt_str_dup Unexecuted instantiation: core_stats.c:shm_nt_str_dup Unexecuted instantiation: route_struct.c:shm_nt_str_dup Unexecuted instantiation: dset.c:shm_nt_str_dup Unexecuted instantiation: pt_scaling.c:shm_nt_str_dup Unexecuted instantiation: pt_load.c:shm_nt_str_dup Unexecuted instantiation: sr_module.c:shm_nt_str_dup Unexecuted instantiation: action.c:shm_nt_str_dup Unexecuted instantiation: flags.c:shm_nt_str_dup Unexecuted instantiation: db_insertq.c:shm_nt_str_dup Unexecuted instantiation: db.c:shm_nt_str_dup Unexecuted instantiation: proto_tcp.c:shm_nt_str_dup Unexecuted instantiation: proto_udp.c:shm_nt_str_dup Unexecuted instantiation: trans.c:shm_nt_str_dup Unexecuted instantiation: net_tcp_proc.c:shm_nt_str_dup Unexecuted instantiation: net_tcp.c:shm_nt_str_dup Unexecuted instantiation: tcp_common.c:shm_nt_str_dup Unexecuted instantiation: net_udp.c:shm_nt_str_dup Unexecuted instantiation: tcp_conn_profile.c:shm_nt_str_dup Unexecuted instantiation: trans_trace.c:shm_nt_str_dup Unexecuted instantiation: net_tcp_report.c:shm_nt_str_dup Unexecuted instantiation: mi.c:shm_nt_str_dup Unexecuted instantiation: item.c:shm_nt_str_dup Unexecuted instantiation: sdp.c:shm_nt_str_dup Unexecuted instantiation: sdp_helpr_funcs.c:shm_nt_str_dup Unexecuted instantiation: digest_parser.c:shm_nt_str_dup Unexecuted instantiation: param_parser.c:shm_nt_str_dup Unexecuted instantiation: parse_contact.c:shm_nt_str_dup Unexecuted instantiation: parse_body.c:shm_nt_str_dup Unexecuted instantiation: parse_security.c:shm_nt_str_dup Unexecuted instantiation: parse_call_info.c:shm_nt_str_dup Unexecuted instantiation: parse_event.c:shm_nt_str_dup Unexecuted instantiation: parse_disposition.c:shm_nt_str_dup Unexecuted instantiation: parse_authenticate.c:shm_nt_str_dup Unexecuted instantiation: parser_f.c:shm_nt_str_dup Unexecuted instantiation: parse_rpid.c:shm_nt_str_dup Unexecuted instantiation: parse_ppi.c:shm_nt_str_dup Unexecuted instantiation: parse_fcaps.c:shm_nt_str_dup Unexecuted instantiation: parse_rr.c:shm_nt_str_dup Unexecuted instantiation: parse_param.c:shm_nt_str_dup Unexecuted instantiation: parse_diversion.c:shm_nt_str_dup Unexecuted instantiation: parse_nameaddr.c:shm_nt_str_dup Unexecuted instantiation: parse_expires.c:shm_nt_str_dup Unexecuted instantiation: parse_refer_to.c:shm_nt_str_dup Unexecuted instantiation: parse_from.c:shm_nt_str_dup Unexecuted instantiation: parse_pai.c:shm_nt_str_dup Unexecuted instantiation: event_interface.c:shm_nt_str_dup Unexecuted instantiation: receive.c:shm_nt_str_dup Unexecuted instantiation: ip_addr.c:shm_nt_str_dup Unexecuted instantiation: async.c:shm_nt_str_dup Unexecuted instantiation: daemonize.c:shm_nt_str_dup Unexecuted instantiation: timer.c:shm_nt_str_dup Unexecuted instantiation: trace_api.c:shm_nt_str_dup Unexecuted instantiation: mod_fix.c:shm_nt_str_dup Unexecuted instantiation: reactor.c:shm_nt_str_dup Unexecuted instantiation: forward.c:shm_nt_str_dup Unexecuted instantiation: xlog.c:shm_nt_str_dup Unexecuted instantiation: blacklists.c:shm_nt_str_dup Unexecuted instantiation: usr_avp.c:shm_nt_str_dup Unexecuted instantiation: resolve.c:shm_nt_str_dup Unexecuted instantiation: io_wait.c:shm_nt_str_dup Unexecuted instantiation: transformations.c:shm_nt_str_dup Unexecuted instantiation: sr_module_deps.c:shm_nt_str_dup Unexecuted instantiation: cfg_reload.c:shm_nt_str_dup Unexecuted instantiation: time_rec.c:shm_nt_str_dup Unexecuted instantiation: status_report.c:shm_nt_str_dup Unexecuted instantiation: signals.c:shm_nt_str_dup Unexecuted instantiation: db_id.c:shm_nt_str_dup Unexecuted instantiation: csv.c:shm_nt_str_dup Unexecuted instantiation: msg_translator.c:shm_nt_str_dup Unexecuted instantiation: md5utils.c:shm_nt_str_dup Unexecuted instantiation: cfg.tab.c:shm_nt_str_dup Unexecuted instantiation: modparam.c:shm_nt_str_dup Unexecuted instantiation: crc.c:shm_nt_str_dup Unexecuted instantiation: lex.yy.c:shm_nt_str_dup Unexecuted instantiation: cfg_pp.c:shm_nt_str_dup Unexecuted instantiation: shutdown.c:shm_nt_str_dup Unexecuted instantiation: core_cmds.c:shm_nt_str_dup Unexecuted instantiation: cachedb.c:shm_nt_str_dup Unexecuted instantiation: cachedb_id.c:shm_nt_str_dup |
864 | | |
865 | | /* |
866 | | * Make a copy of an str structure using pkg_malloc |
867 | | * + an additional '\0' byte, so you can make use of dst->s |
868 | | * |
869 | | * dst == src is allowed! |
870 | | */ |
871 | | static inline int pkg_nt_str_dup(str* dst, const str* src) |
872 | 0 | { |
873 | 0 | const str _src = *src; |
874 | |
|
875 | 0 | if (!_src.s) { |
876 | 0 | memset(dst, 0, sizeof *dst); |
877 | 0 | return 0; |
878 | 0 | } |
879 | | |
880 | 0 | dst->s = pkg_malloc(_src.len + 1); |
881 | 0 | if (!dst->s) { |
882 | 0 | LM_ERR("no private memory left\n"); |
883 | 0 | dst->len = 0; |
884 | 0 | if (dst == src) |
885 | 0 | *dst = _src; |
886 | 0 | return -1; |
887 | 0 | } |
888 | | |
889 | 0 | memcpy(dst->s, _src.s, _src.len); |
890 | 0 | dst->len = _src.len; |
891 | 0 | dst->s[_src.len] = '\0'; |
892 | 0 | return 0; |
893 | 0 | } Unexecuted instantiation: msg_parser.c:pkg_nt_str_dup Unexecuted instantiation: parse_uri.c:pkg_nt_str_dup Unexecuted instantiation: parse_fline.c:pkg_nt_str_dup Unexecuted instantiation: parse_hname2.c:pkg_nt_str_dup Unexecuted instantiation: parse_content.c:pkg_nt_str_dup Unexecuted instantiation: hf.c:pkg_nt_str_dup Unexecuted instantiation: parse_to.c:pkg_nt_str_dup Unexecuted instantiation: parse_via.c:pkg_nt_str_dup Unexecuted instantiation: dprint.c:pkg_nt_str_dup Unexecuted instantiation: pt.c:pkg_nt_str_dup Unexecuted instantiation: strcommon.c:pkg_nt_str_dup Unexecuted instantiation: ut.c:pkg_nt_str_dup Unexecuted instantiation: sdp_ops.c:pkg_nt_str_dup Unexecuted instantiation: statistics.c:pkg_nt_str_dup Unexecuted instantiation: pvar.c:pkg_nt_str_dup Unexecuted instantiation: route.c:pkg_nt_str_dup Unexecuted instantiation: socket_info.c:pkg_nt_str_dup Unexecuted instantiation: ipc.c:pkg_nt_str_dup Unexecuted instantiation: core_stats.c:pkg_nt_str_dup Unexecuted instantiation: route_struct.c:pkg_nt_str_dup Unexecuted instantiation: dset.c:pkg_nt_str_dup Unexecuted instantiation: pt_scaling.c:pkg_nt_str_dup Unexecuted instantiation: pt_load.c:pkg_nt_str_dup Unexecuted instantiation: sr_module.c:pkg_nt_str_dup Unexecuted instantiation: action.c:pkg_nt_str_dup Unexecuted instantiation: flags.c:pkg_nt_str_dup Unexecuted instantiation: db_insertq.c:pkg_nt_str_dup Unexecuted instantiation: db.c:pkg_nt_str_dup Unexecuted instantiation: proto_tcp.c:pkg_nt_str_dup Unexecuted instantiation: proto_udp.c:pkg_nt_str_dup Unexecuted instantiation: trans.c:pkg_nt_str_dup Unexecuted instantiation: net_tcp_proc.c:pkg_nt_str_dup Unexecuted instantiation: net_tcp.c:pkg_nt_str_dup Unexecuted instantiation: tcp_common.c:pkg_nt_str_dup Unexecuted instantiation: net_udp.c:pkg_nt_str_dup Unexecuted instantiation: tcp_conn_profile.c:pkg_nt_str_dup Unexecuted instantiation: trans_trace.c:pkg_nt_str_dup Unexecuted instantiation: net_tcp_report.c:pkg_nt_str_dup Unexecuted instantiation: mi.c:pkg_nt_str_dup Unexecuted instantiation: item.c:pkg_nt_str_dup Unexecuted instantiation: sdp.c:pkg_nt_str_dup Unexecuted instantiation: sdp_helpr_funcs.c:pkg_nt_str_dup Unexecuted instantiation: digest_parser.c:pkg_nt_str_dup Unexecuted instantiation: param_parser.c:pkg_nt_str_dup Unexecuted instantiation: parse_contact.c:pkg_nt_str_dup Unexecuted instantiation: parse_body.c:pkg_nt_str_dup Unexecuted instantiation: parse_security.c:pkg_nt_str_dup Unexecuted instantiation: parse_call_info.c:pkg_nt_str_dup Unexecuted instantiation: parse_event.c:pkg_nt_str_dup Unexecuted instantiation: parse_disposition.c:pkg_nt_str_dup Unexecuted instantiation: parse_authenticate.c:pkg_nt_str_dup Unexecuted instantiation: parser_f.c:pkg_nt_str_dup Unexecuted instantiation: parse_rpid.c:pkg_nt_str_dup Unexecuted instantiation: parse_ppi.c:pkg_nt_str_dup Unexecuted instantiation: parse_fcaps.c:pkg_nt_str_dup Unexecuted instantiation: parse_rr.c:pkg_nt_str_dup Unexecuted instantiation: parse_param.c:pkg_nt_str_dup Unexecuted instantiation: parse_diversion.c:pkg_nt_str_dup Unexecuted instantiation: parse_nameaddr.c:pkg_nt_str_dup Unexecuted instantiation: parse_expires.c:pkg_nt_str_dup Unexecuted instantiation: parse_refer_to.c:pkg_nt_str_dup Unexecuted instantiation: parse_from.c:pkg_nt_str_dup Unexecuted instantiation: parse_pai.c:pkg_nt_str_dup Unexecuted instantiation: event_interface.c:pkg_nt_str_dup Unexecuted instantiation: receive.c:pkg_nt_str_dup Unexecuted instantiation: ip_addr.c:pkg_nt_str_dup Unexecuted instantiation: async.c:pkg_nt_str_dup Unexecuted instantiation: daemonize.c:pkg_nt_str_dup Unexecuted instantiation: timer.c:pkg_nt_str_dup Unexecuted instantiation: trace_api.c:pkg_nt_str_dup Unexecuted instantiation: mod_fix.c:pkg_nt_str_dup Unexecuted instantiation: reactor.c:pkg_nt_str_dup Unexecuted instantiation: forward.c:pkg_nt_str_dup Unexecuted instantiation: xlog.c:pkg_nt_str_dup Unexecuted instantiation: blacklists.c:pkg_nt_str_dup Unexecuted instantiation: usr_avp.c:pkg_nt_str_dup Unexecuted instantiation: resolve.c:pkg_nt_str_dup Unexecuted instantiation: io_wait.c:pkg_nt_str_dup Unexecuted instantiation: transformations.c:pkg_nt_str_dup Unexecuted instantiation: sr_module_deps.c:pkg_nt_str_dup Unexecuted instantiation: cfg_reload.c:pkg_nt_str_dup Unexecuted instantiation: time_rec.c:pkg_nt_str_dup Unexecuted instantiation: status_report.c:pkg_nt_str_dup Unexecuted instantiation: signals.c:pkg_nt_str_dup Unexecuted instantiation: db_id.c:pkg_nt_str_dup Unexecuted instantiation: csv.c:pkg_nt_str_dup Unexecuted instantiation: msg_translator.c:pkg_nt_str_dup Unexecuted instantiation: md5utils.c:pkg_nt_str_dup Unexecuted instantiation: cfg.tab.c:pkg_nt_str_dup Unexecuted instantiation: modparam.c:pkg_nt_str_dup Unexecuted instantiation: crc.c:pkg_nt_str_dup Unexecuted instantiation: lex.yy.c:pkg_nt_str_dup Unexecuted instantiation: cfg_pp.c:pkg_nt_str_dup Unexecuted instantiation: shutdown.c:pkg_nt_str_dup Unexecuted instantiation: core_cmds.c:pkg_nt_str_dup Unexecuted instantiation: cachedb.c:pkg_nt_str_dup Unexecuted instantiation: cachedb_id.c:pkg_nt_str_dup |
894 | | |
895 | | static inline char *shm_strdup(const char *str) |
896 | 0 | { |
897 | 0 | char *rval; |
898 | 0 | int len; |
899 | |
|
900 | 0 | if (!str) |
901 | 0 | return NULL; |
902 | | |
903 | 0 | len = strlen(str) + 1; |
904 | 0 | rval = shm_malloc(len); |
905 | 0 | if (!rval) |
906 | 0 | return NULL; |
907 | 0 | memcpy(rval, str, len); |
908 | 0 | return rval; |
909 | 0 | } Unexecuted instantiation: msg_parser.c:shm_strdup Unexecuted instantiation: parse_uri.c:shm_strdup Unexecuted instantiation: parse_fline.c:shm_strdup Unexecuted instantiation: parse_hname2.c:shm_strdup Unexecuted instantiation: parse_content.c:shm_strdup Unexecuted instantiation: hf.c:shm_strdup Unexecuted instantiation: parse_to.c:shm_strdup Unexecuted instantiation: parse_via.c:shm_strdup Unexecuted instantiation: dprint.c:shm_strdup Unexecuted instantiation: pt.c:shm_strdup Unexecuted instantiation: strcommon.c:shm_strdup Unexecuted instantiation: ut.c:shm_strdup Unexecuted instantiation: sdp_ops.c:shm_strdup Unexecuted instantiation: statistics.c:shm_strdup Unexecuted instantiation: pvar.c:shm_strdup Unexecuted instantiation: route.c:shm_strdup Unexecuted instantiation: socket_info.c:shm_strdup Unexecuted instantiation: ipc.c:shm_strdup Unexecuted instantiation: core_stats.c:shm_strdup Unexecuted instantiation: route_struct.c:shm_strdup Unexecuted instantiation: dset.c:shm_strdup Unexecuted instantiation: pt_scaling.c:shm_strdup Unexecuted instantiation: pt_load.c:shm_strdup Unexecuted instantiation: sr_module.c:shm_strdup Unexecuted instantiation: action.c:shm_strdup Unexecuted instantiation: flags.c:shm_strdup Unexecuted instantiation: db_insertq.c:shm_strdup Unexecuted instantiation: db.c:shm_strdup Unexecuted instantiation: proto_tcp.c:shm_strdup Unexecuted instantiation: proto_udp.c:shm_strdup Unexecuted instantiation: trans.c:shm_strdup Unexecuted instantiation: net_tcp_proc.c:shm_strdup Unexecuted instantiation: net_tcp.c:shm_strdup Unexecuted instantiation: tcp_common.c:shm_strdup Unexecuted instantiation: net_udp.c:shm_strdup Unexecuted instantiation: tcp_conn_profile.c:shm_strdup Unexecuted instantiation: trans_trace.c:shm_strdup Unexecuted instantiation: net_tcp_report.c:shm_strdup Unexecuted instantiation: mi.c:shm_strdup Unexecuted instantiation: item.c:shm_strdup Unexecuted instantiation: sdp.c:shm_strdup Unexecuted instantiation: sdp_helpr_funcs.c:shm_strdup Unexecuted instantiation: digest_parser.c:shm_strdup Unexecuted instantiation: param_parser.c:shm_strdup Unexecuted instantiation: parse_contact.c:shm_strdup Unexecuted instantiation: parse_body.c:shm_strdup Unexecuted instantiation: parse_security.c:shm_strdup Unexecuted instantiation: parse_call_info.c:shm_strdup Unexecuted instantiation: parse_event.c:shm_strdup Unexecuted instantiation: parse_disposition.c:shm_strdup Unexecuted instantiation: parse_authenticate.c:shm_strdup Unexecuted instantiation: parser_f.c:shm_strdup Unexecuted instantiation: parse_rpid.c:shm_strdup Unexecuted instantiation: parse_ppi.c:shm_strdup Unexecuted instantiation: parse_fcaps.c:shm_strdup Unexecuted instantiation: parse_rr.c:shm_strdup Unexecuted instantiation: parse_param.c:shm_strdup Unexecuted instantiation: parse_diversion.c:shm_strdup Unexecuted instantiation: parse_nameaddr.c:shm_strdup Unexecuted instantiation: parse_expires.c:shm_strdup Unexecuted instantiation: parse_refer_to.c:shm_strdup Unexecuted instantiation: parse_from.c:shm_strdup Unexecuted instantiation: parse_pai.c:shm_strdup Unexecuted instantiation: event_interface.c:shm_strdup Unexecuted instantiation: receive.c:shm_strdup Unexecuted instantiation: ip_addr.c:shm_strdup Unexecuted instantiation: async.c:shm_strdup Unexecuted instantiation: daemonize.c:shm_strdup Unexecuted instantiation: timer.c:shm_strdup Unexecuted instantiation: trace_api.c:shm_strdup Unexecuted instantiation: mod_fix.c:shm_strdup Unexecuted instantiation: reactor.c:shm_strdup Unexecuted instantiation: forward.c:shm_strdup Unexecuted instantiation: xlog.c:shm_strdup Unexecuted instantiation: blacklists.c:shm_strdup Unexecuted instantiation: usr_avp.c:shm_strdup Unexecuted instantiation: resolve.c:shm_strdup Unexecuted instantiation: io_wait.c:shm_strdup Unexecuted instantiation: transformations.c:shm_strdup Unexecuted instantiation: sr_module_deps.c:shm_strdup Unexecuted instantiation: cfg_reload.c:shm_strdup Unexecuted instantiation: time_rec.c:shm_strdup Unexecuted instantiation: status_report.c:shm_strdup Unexecuted instantiation: signals.c:shm_strdup Unexecuted instantiation: db_id.c:shm_strdup Unexecuted instantiation: csv.c:shm_strdup Unexecuted instantiation: msg_translator.c:shm_strdup Unexecuted instantiation: md5utils.c:shm_strdup Unexecuted instantiation: cfg.tab.c:shm_strdup Unexecuted instantiation: modparam.c:shm_strdup Unexecuted instantiation: crc.c:shm_strdup Unexecuted instantiation: lex.yy.c:shm_strdup Unexecuted instantiation: cfg_pp.c:shm_strdup Unexecuted instantiation: shutdown.c:shm_strdup Unexecuted instantiation: core_cmds.c:shm_strdup Unexecuted instantiation: cachedb.c:shm_strdup Unexecuted instantiation: cachedb_id.c:shm_strdup |
910 | | |
911 | | /* |
912 | | * Ensure the given (str *) points to an SHM buffer of at least "size" bytes |
913 | | * |
914 | | * Return: 0 on success, -1 on failure |
915 | | */ |
916 | | #define shm_str_extend(/* str* */_in_, /* int */_size_) \ |
917 | | ({ \ |
918 | | int __ret__ = 0; \ |
919 | | /* do not check for !in->s here, as it's better \ |
920 | | * to crash sooner on a corrupt @in string (e.g. {NULL, 172}) */ \ |
921 | | if ((_in_)->len < (_size_)) { \ |
922 | | char *_p_ = shm_realloc((_in_)->s, _size_); \ |
923 | | if (!_p_) { \ |
924 | | LM_ERR("oom\n"); \ |
925 | | __ret__ = -1; \ |
926 | | } else { \ |
927 | | (_in_)->s = _p_; \ |
928 | | (_in_)->len = _size_; \ |
929 | | } \ |
930 | | } \ |
931 | | __ret__; \ |
932 | | }) |
933 | | |
934 | | |
935 | | /* |
936 | | * Ensure "dst" matches the content of "src" without leaking memory |
937 | | * |
938 | | * Note: if you just want to dup a string, use "shm_str_dup()" instead |
939 | | * Return: 0 on success, -1 on failure |
940 | | */ |
941 | | #define shm_str_sync(/* str* */_dst_, /* str* */_src_) \ |
942 | | ({ \ |
943 | | int __ret__; \ |
944 | | if ((str *)(_src_) == (str *)NULL || !(_src_)->s || (_src_)->len == 0) { \ |
945 | | if ((_dst_)->s) \ |
946 | | shm_free((_dst_)->s); \ |
947 | | memset((_dst_), 0, sizeof *(_dst_)); \ |
948 | | __ret__ = 0; \ |
949 | | } else if (shm_str_extend(_dst_, (_src_)->len) != 0) { \ |
950 | | LM_ERR("oom\n"); \ |
951 | | __ret__ = -1; \ |
952 | | } else { \ |
953 | | memcpy((_dst_)->s, (_src_)->s, (_src_)->len); \ |
954 | | (_dst_)->len = (_src_)->len; \ |
955 | | __ret__ = 0; \ |
956 | | } \ |
957 | | __ret__; \ |
958 | | }) |
959 | | |
960 | | |
961 | | static inline void shm_str_clean(str* dst) |
962 | 0 | { |
963 | 0 | if (dst->s) |
964 | 0 | shm_free(dst->s); |
965 | 0 | memset(dst, 0, sizeof *dst); |
966 | 0 | } Unexecuted instantiation: msg_parser.c:shm_str_clean Unexecuted instantiation: parse_uri.c:shm_str_clean Unexecuted instantiation: parse_fline.c:shm_str_clean Unexecuted instantiation: parse_hname2.c:shm_str_clean Unexecuted instantiation: parse_content.c:shm_str_clean Unexecuted instantiation: hf.c:shm_str_clean Unexecuted instantiation: parse_to.c:shm_str_clean Unexecuted instantiation: parse_via.c:shm_str_clean Unexecuted instantiation: dprint.c:shm_str_clean Unexecuted instantiation: pt.c:shm_str_clean Unexecuted instantiation: strcommon.c:shm_str_clean Unexecuted instantiation: ut.c:shm_str_clean Unexecuted instantiation: sdp_ops.c:shm_str_clean Unexecuted instantiation: statistics.c:shm_str_clean Unexecuted instantiation: pvar.c:shm_str_clean Unexecuted instantiation: route.c:shm_str_clean Unexecuted instantiation: socket_info.c:shm_str_clean Unexecuted instantiation: ipc.c:shm_str_clean Unexecuted instantiation: core_stats.c:shm_str_clean Unexecuted instantiation: route_struct.c:shm_str_clean Unexecuted instantiation: dset.c:shm_str_clean Unexecuted instantiation: pt_scaling.c:shm_str_clean Unexecuted instantiation: pt_load.c:shm_str_clean Unexecuted instantiation: sr_module.c:shm_str_clean Unexecuted instantiation: action.c:shm_str_clean Unexecuted instantiation: flags.c:shm_str_clean Unexecuted instantiation: db_insertq.c:shm_str_clean Unexecuted instantiation: db.c:shm_str_clean Unexecuted instantiation: proto_tcp.c:shm_str_clean Unexecuted instantiation: proto_udp.c:shm_str_clean Unexecuted instantiation: trans.c:shm_str_clean Unexecuted instantiation: net_tcp_proc.c:shm_str_clean Unexecuted instantiation: net_tcp.c:shm_str_clean Unexecuted instantiation: tcp_common.c:shm_str_clean Unexecuted instantiation: net_udp.c:shm_str_clean Unexecuted instantiation: tcp_conn_profile.c:shm_str_clean Unexecuted instantiation: trans_trace.c:shm_str_clean Unexecuted instantiation: net_tcp_report.c:shm_str_clean Unexecuted instantiation: mi.c:shm_str_clean Unexecuted instantiation: item.c:shm_str_clean Unexecuted instantiation: sdp.c:shm_str_clean Unexecuted instantiation: sdp_helpr_funcs.c:shm_str_clean Unexecuted instantiation: digest_parser.c:shm_str_clean Unexecuted instantiation: param_parser.c:shm_str_clean Unexecuted instantiation: parse_contact.c:shm_str_clean Unexecuted instantiation: parse_body.c:shm_str_clean Unexecuted instantiation: parse_security.c:shm_str_clean Unexecuted instantiation: parse_call_info.c:shm_str_clean Unexecuted instantiation: parse_event.c:shm_str_clean Unexecuted instantiation: parse_disposition.c:shm_str_clean Unexecuted instantiation: parse_authenticate.c:shm_str_clean Unexecuted instantiation: parser_f.c:shm_str_clean Unexecuted instantiation: parse_rpid.c:shm_str_clean Unexecuted instantiation: parse_ppi.c:shm_str_clean Unexecuted instantiation: parse_fcaps.c:shm_str_clean Unexecuted instantiation: parse_rr.c:shm_str_clean Unexecuted instantiation: parse_param.c:shm_str_clean Unexecuted instantiation: parse_diversion.c:shm_str_clean Unexecuted instantiation: parse_nameaddr.c:shm_str_clean Unexecuted instantiation: parse_expires.c:shm_str_clean Unexecuted instantiation: parse_refer_to.c:shm_str_clean Unexecuted instantiation: parse_from.c:shm_str_clean Unexecuted instantiation: parse_pai.c:shm_str_clean Unexecuted instantiation: event_interface.c:shm_str_clean Unexecuted instantiation: receive.c:shm_str_clean Unexecuted instantiation: ip_addr.c:shm_str_clean Unexecuted instantiation: async.c:shm_str_clean Unexecuted instantiation: daemonize.c:shm_str_clean Unexecuted instantiation: timer.c:shm_str_clean Unexecuted instantiation: trace_api.c:shm_str_clean Unexecuted instantiation: mod_fix.c:shm_str_clean Unexecuted instantiation: reactor.c:shm_str_clean Unexecuted instantiation: forward.c:shm_str_clean Unexecuted instantiation: xlog.c:shm_str_clean Unexecuted instantiation: blacklists.c:shm_str_clean Unexecuted instantiation: usr_avp.c:shm_str_clean Unexecuted instantiation: resolve.c:shm_str_clean Unexecuted instantiation: io_wait.c:shm_str_clean Unexecuted instantiation: transformations.c:shm_str_clean Unexecuted instantiation: sr_module_deps.c:shm_str_clean Unexecuted instantiation: cfg_reload.c:shm_str_clean Unexecuted instantiation: time_rec.c:shm_str_clean Unexecuted instantiation: status_report.c:shm_str_clean Unexecuted instantiation: signals.c:shm_str_clean Unexecuted instantiation: db_id.c:shm_str_clean Unexecuted instantiation: csv.c:shm_str_clean Unexecuted instantiation: msg_translator.c:shm_str_clean Unexecuted instantiation: md5utils.c:shm_str_clean Unexecuted instantiation: cfg.tab.c:shm_str_clean Unexecuted instantiation: modparam.c:shm_str_clean Unexecuted instantiation: crc.c:shm_str_clean Unexecuted instantiation: lex.yy.c:shm_str_clean Unexecuted instantiation: cfg_pp.c:shm_str_clean Unexecuted instantiation: shutdown.c:shm_str_clean Unexecuted instantiation: core_cmds.c:shm_str_clean Unexecuted instantiation: cachedb.c:shm_str_clean Unexecuted instantiation: cachedb_id.c:shm_str_clean |
967 | | |
968 | | /* |
969 | | * Make a copy of a str structure using pkg_malloc |
970 | | */ |
971 | | static inline int pkg_str_dup(str* dst, const str* src) |
972 | 0 | { |
973 | 0 | dst->s = pkg_malloc(src->len); |
974 | 0 | if (!dst->s) { |
975 | 0 | LM_ERR("no private memory left\n"); |
976 | 0 | dst->len = 0; |
977 | 0 | return -1; |
978 | 0 | } |
979 | | |
980 | 0 | memcpy(dst->s, src->s, src->len); |
981 | 0 | dst->len = src->len; |
982 | 0 | return 0; |
983 | 0 | } Unexecuted instantiation: msg_parser.c:pkg_str_dup Unexecuted instantiation: parse_uri.c:pkg_str_dup Unexecuted instantiation: parse_fline.c:pkg_str_dup Unexecuted instantiation: parse_hname2.c:pkg_str_dup Unexecuted instantiation: parse_content.c:pkg_str_dup Unexecuted instantiation: hf.c:pkg_str_dup Unexecuted instantiation: parse_to.c:pkg_str_dup Unexecuted instantiation: parse_via.c:pkg_str_dup Unexecuted instantiation: dprint.c:pkg_str_dup Unexecuted instantiation: pt.c:pkg_str_dup Unexecuted instantiation: strcommon.c:pkg_str_dup Unexecuted instantiation: ut.c:pkg_str_dup Unexecuted instantiation: sdp_ops.c:pkg_str_dup Unexecuted instantiation: statistics.c:pkg_str_dup Unexecuted instantiation: pvar.c:pkg_str_dup Unexecuted instantiation: route.c:pkg_str_dup Unexecuted instantiation: socket_info.c:pkg_str_dup Unexecuted instantiation: ipc.c:pkg_str_dup Unexecuted instantiation: core_stats.c:pkg_str_dup Unexecuted instantiation: route_struct.c:pkg_str_dup Unexecuted instantiation: dset.c:pkg_str_dup Unexecuted instantiation: pt_scaling.c:pkg_str_dup Unexecuted instantiation: pt_load.c:pkg_str_dup Unexecuted instantiation: sr_module.c:pkg_str_dup Unexecuted instantiation: action.c:pkg_str_dup Unexecuted instantiation: flags.c:pkg_str_dup Unexecuted instantiation: db_insertq.c:pkg_str_dup Unexecuted instantiation: db.c:pkg_str_dup Unexecuted instantiation: proto_tcp.c:pkg_str_dup Unexecuted instantiation: proto_udp.c:pkg_str_dup Unexecuted instantiation: trans.c:pkg_str_dup Unexecuted instantiation: net_tcp_proc.c:pkg_str_dup Unexecuted instantiation: net_tcp.c:pkg_str_dup Unexecuted instantiation: tcp_common.c:pkg_str_dup Unexecuted instantiation: net_udp.c:pkg_str_dup Unexecuted instantiation: tcp_conn_profile.c:pkg_str_dup Unexecuted instantiation: trans_trace.c:pkg_str_dup Unexecuted instantiation: net_tcp_report.c:pkg_str_dup Unexecuted instantiation: mi.c:pkg_str_dup Unexecuted instantiation: item.c:pkg_str_dup Unexecuted instantiation: sdp.c:pkg_str_dup Unexecuted instantiation: sdp_helpr_funcs.c:pkg_str_dup Unexecuted instantiation: digest_parser.c:pkg_str_dup Unexecuted instantiation: param_parser.c:pkg_str_dup Unexecuted instantiation: parse_contact.c:pkg_str_dup Unexecuted instantiation: parse_body.c:pkg_str_dup Unexecuted instantiation: parse_security.c:pkg_str_dup Unexecuted instantiation: parse_call_info.c:pkg_str_dup Unexecuted instantiation: parse_event.c:pkg_str_dup Unexecuted instantiation: parse_disposition.c:pkg_str_dup Unexecuted instantiation: parse_authenticate.c:pkg_str_dup Unexecuted instantiation: parser_f.c:pkg_str_dup Unexecuted instantiation: parse_rpid.c:pkg_str_dup Unexecuted instantiation: parse_ppi.c:pkg_str_dup Unexecuted instantiation: parse_fcaps.c:pkg_str_dup Unexecuted instantiation: parse_rr.c:pkg_str_dup Unexecuted instantiation: parse_param.c:pkg_str_dup Unexecuted instantiation: parse_diversion.c:pkg_str_dup Unexecuted instantiation: parse_nameaddr.c:pkg_str_dup Unexecuted instantiation: parse_expires.c:pkg_str_dup Unexecuted instantiation: parse_refer_to.c:pkg_str_dup Unexecuted instantiation: parse_from.c:pkg_str_dup Unexecuted instantiation: parse_pai.c:pkg_str_dup Unexecuted instantiation: event_interface.c:pkg_str_dup Unexecuted instantiation: receive.c:pkg_str_dup Unexecuted instantiation: ip_addr.c:pkg_str_dup Unexecuted instantiation: async.c:pkg_str_dup Unexecuted instantiation: daemonize.c:pkg_str_dup Unexecuted instantiation: timer.c:pkg_str_dup Unexecuted instantiation: trace_api.c:pkg_str_dup Unexecuted instantiation: mod_fix.c:pkg_str_dup Unexecuted instantiation: reactor.c:pkg_str_dup Unexecuted instantiation: forward.c:pkg_str_dup Unexecuted instantiation: xlog.c:pkg_str_dup Unexecuted instantiation: blacklists.c:pkg_str_dup Unexecuted instantiation: usr_avp.c:pkg_str_dup Unexecuted instantiation: resolve.c:pkg_str_dup Unexecuted instantiation: io_wait.c:pkg_str_dup Unexecuted instantiation: transformations.c:pkg_str_dup Unexecuted instantiation: sr_module_deps.c:pkg_str_dup Unexecuted instantiation: cfg_reload.c:pkg_str_dup Unexecuted instantiation: time_rec.c:pkg_str_dup Unexecuted instantiation: status_report.c:pkg_str_dup Unexecuted instantiation: signals.c:pkg_str_dup Unexecuted instantiation: db_id.c:pkg_str_dup Unexecuted instantiation: csv.c:pkg_str_dup Unexecuted instantiation: msg_translator.c:pkg_str_dup Unexecuted instantiation: md5utils.c:pkg_str_dup Unexecuted instantiation: cfg.tab.c:pkg_str_dup Unexecuted instantiation: modparam.c:pkg_str_dup Unexecuted instantiation: crc.c:pkg_str_dup Unexecuted instantiation: lex.yy.c:pkg_str_dup Unexecuted instantiation: cfg_pp.c:pkg_str_dup Unexecuted instantiation: shutdown.c:pkg_str_dup Unexecuted instantiation: core_cmds.c:pkg_str_dup Unexecuted instantiation: cachedb.c:pkg_str_dup Unexecuted instantiation: cachedb_id.c:pkg_str_dup |
984 | | |
985 | | static inline char *pkg_strdup(const char *str) |
986 | 0 | { |
987 | 0 | char *rval; |
988 | 0 | int len; |
989 | |
|
990 | 0 | if (!str) |
991 | 0 | return NULL; |
992 | | |
993 | 0 | len = strlen(str) + 1; |
994 | 0 | rval = pkg_malloc(len); |
995 | 0 | if (!rval) |
996 | 0 | return NULL; |
997 | 0 | memcpy(rval, str, len); |
998 | 0 | return rval; |
999 | 0 | } Unexecuted instantiation: msg_parser.c:pkg_strdup Unexecuted instantiation: parse_uri.c:pkg_strdup Unexecuted instantiation: parse_fline.c:pkg_strdup Unexecuted instantiation: parse_hname2.c:pkg_strdup Unexecuted instantiation: parse_content.c:pkg_strdup Unexecuted instantiation: hf.c:pkg_strdup Unexecuted instantiation: parse_to.c:pkg_strdup Unexecuted instantiation: parse_via.c:pkg_strdup Unexecuted instantiation: dprint.c:pkg_strdup Unexecuted instantiation: pt.c:pkg_strdup Unexecuted instantiation: strcommon.c:pkg_strdup Unexecuted instantiation: ut.c:pkg_strdup Unexecuted instantiation: sdp_ops.c:pkg_strdup Unexecuted instantiation: statistics.c:pkg_strdup Unexecuted instantiation: pvar.c:pkg_strdup Unexecuted instantiation: route.c:pkg_strdup Unexecuted instantiation: socket_info.c:pkg_strdup Unexecuted instantiation: ipc.c:pkg_strdup Unexecuted instantiation: core_stats.c:pkg_strdup Unexecuted instantiation: route_struct.c:pkg_strdup Unexecuted instantiation: dset.c:pkg_strdup Unexecuted instantiation: pt_scaling.c:pkg_strdup Unexecuted instantiation: pt_load.c:pkg_strdup Unexecuted instantiation: sr_module.c:pkg_strdup Unexecuted instantiation: action.c:pkg_strdup Unexecuted instantiation: flags.c:pkg_strdup Unexecuted instantiation: db_insertq.c:pkg_strdup Unexecuted instantiation: db.c:pkg_strdup Unexecuted instantiation: proto_tcp.c:pkg_strdup Unexecuted instantiation: proto_udp.c:pkg_strdup Unexecuted instantiation: trans.c:pkg_strdup Unexecuted instantiation: net_tcp_proc.c:pkg_strdup Unexecuted instantiation: net_tcp.c:pkg_strdup Unexecuted instantiation: tcp_common.c:pkg_strdup Unexecuted instantiation: net_udp.c:pkg_strdup Unexecuted instantiation: tcp_conn_profile.c:pkg_strdup Unexecuted instantiation: trans_trace.c:pkg_strdup Unexecuted instantiation: net_tcp_report.c:pkg_strdup Unexecuted instantiation: mi.c:pkg_strdup Unexecuted instantiation: item.c:pkg_strdup Unexecuted instantiation: sdp.c:pkg_strdup Unexecuted instantiation: sdp_helpr_funcs.c:pkg_strdup Unexecuted instantiation: digest_parser.c:pkg_strdup Unexecuted instantiation: param_parser.c:pkg_strdup Unexecuted instantiation: parse_contact.c:pkg_strdup Unexecuted instantiation: parse_body.c:pkg_strdup Unexecuted instantiation: parse_security.c:pkg_strdup Unexecuted instantiation: parse_call_info.c:pkg_strdup Unexecuted instantiation: parse_event.c:pkg_strdup Unexecuted instantiation: parse_disposition.c:pkg_strdup Unexecuted instantiation: parse_authenticate.c:pkg_strdup Unexecuted instantiation: parser_f.c:pkg_strdup Unexecuted instantiation: parse_rpid.c:pkg_strdup Unexecuted instantiation: parse_ppi.c:pkg_strdup Unexecuted instantiation: parse_fcaps.c:pkg_strdup Unexecuted instantiation: parse_rr.c:pkg_strdup Unexecuted instantiation: parse_param.c:pkg_strdup Unexecuted instantiation: parse_diversion.c:pkg_strdup Unexecuted instantiation: parse_nameaddr.c:pkg_strdup Unexecuted instantiation: parse_expires.c:pkg_strdup Unexecuted instantiation: parse_refer_to.c:pkg_strdup Unexecuted instantiation: parse_from.c:pkg_strdup Unexecuted instantiation: parse_pai.c:pkg_strdup Unexecuted instantiation: event_interface.c:pkg_strdup Unexecuted instantiation: receive.c:pkg_strdup Unexecuted instantiation: ip_addr.c:pkg_strdup Unexecuted instantiation: async.c:pkg_strdup Unexecuted instantiation: daemonize.c:pkg_strdup Unexecuted instantiation: timer.c:pkg_strdup Unexecuted instantiation: trace_api.c:pkg_strdup Unexecuted instantiation: mod_fix.c:pkg_strdup Unexecuted instantiation: reactor.c:pkg_strdup Unexecuted instantiation: forward.c:pkg_strdup Unexecuted instantiation: xlog.c:pkg_strdup Unexecuted instantiation: blacklists.c:pkg_strdup Unexecuted instantiation: usr_avp.c:pkg_strdup Unexecuted instantiation: resolve.c:pkg_strdup Unexecuted instantiation: io_wait.c:pkg_strdup Unexecuted instantiation: transformations.c:pkg_strdup Unexecuted instantiation: sr_module_deps.c:pkg_strdup Unexecuted instantiation: cfg_reload.c:pkg_strdup Unexecuted instantiation: time_rec.c:pkg_strdup Unexecuted instantiation: status_report.c:pkg_strdup Unexecuted instantiation: signals.c:pkg_strdup Unexecuted instantiation: db_id.c:pkg_strdup Unexecuted instantiation: csv.c:pkg_strdup Unexecuted instantiation: msg_translator.c:pkg_strdup Unexecuted instantiation: md5utils.c:pkg_strdup Unexecuted instantiation: cfg.tab.c:pkg_strdup Unexecuted instantiation: modparam.c:pkg_strdup Unexecuted instantiation: crc.c:pkg_strdup Unexecuted instantiation: lex.yy.c:pkg_strdup Unexecuted instantiation: cfg_pp.c:pkg_strdup Unexecuted instantiation: shutdown.c:pkg_strdup Unexecuted instantiation: core_cmds.c:pkg_strdup Unexecuted instantiation: cachedb.c:pkg_strdup Unexecuted instantiation: cachedb_id.c:pkg_strdup |
1000 | | |
1001 | | /* Extend the given buffer only if needed */ |
1002 | | static inline int pkg_str_extend(str *in, int size) |
1003 | 0 | { |
1004 | 0 | char *p; |
1005 | | |
1006 | | /* do not check for !in->s here, as it's better |
1007 | | * to crash sooner on a corrupt @in string (e.g. {NULL, 172}) */ |
1008 | 0 | if (in->len < size) { |
1009 | 0 | p = pkg_realloc(in->s, size); |
1010 | 0 | if (!p) { |
1011 | 0 | LM_ERR("oom\n"); |
1012 | 0 | return -1; |
1013 | 0 | } |
1014 | | |
1015 | 0 | in->s = p; |
1016 | 0 | in->len = size; |
1017 | 0 | } |
1018 | | |
1019 | 0 | return 0; |
1020 | 0 | } Unexecuted instantiation: msg_parser.c:pkg_str_extend Unexecuted instantiation: parse_uri.c:pkg_str_extend Unexecuted instantiation: parse_fline.c:pkg_str_extend Unexecuted instantiation: parse_hname2.c:pkg_str_extend Unexecuted instantiation: parse_content.c:pkg_str_extend Unexecuted instantiation: hf.c:pkg_str_extend Unexecuted instantiation: parse_to.c:pkg_str_extend Unexecuted instantiation: parse_via.c:pkg_str_extend Unexecuted instantiation: dprint.c:pkg_str_extend Unexecuted instantiation: pt.c:pkg_str_extend Unexecuted instantiation: strcommon.c:pkg_str_extend Unexecuted instantiation: ut.c:pkg_str_extend Unexecuted instantiation: sdp_ops.c:pkg_str_extend Unexecuted instantiation: statistics.c:pkg_str_extend Unexecuted instantiation: pvar.c:pkg_str_extend Unexecuted instantiation: route.c:pkg_str_extend Unexecuted instantiation: socket_info.c:pkg_str_extend Unexecuted instantiation: ipc.c:pkg_str_extend Unexecuted instantiation: core_stats.c:pkg_str_extend Unexecuted instantiation: route_struct.c:pkg_str_extend Unexecuted instantiation: dset.c:pkg_str_extend Unexecuted instantiation: pt_scaling.c:pkg_str_extend Unexecuted instantiation: pt_load.c:pkg_str_extend Unexecuted instantiation: sr_module.c:pkg_str_extend Unexecuted instantiation: action.c:pkg_str_extend Unexecuted instantiation: flags.c:pkg_str_extend Unexecuted instantiation: db_insertq.c:pkg_str_extend Unexecuted instantiation: db.c:pkg_str_extend Unexecuted instantiation: proto_tcp.c:pkg_str_extend Unexecuted instantiation: proto_udp.c:pkg_str_extend Unexecuted instantiation: trans.c:pkg_str_extend Unexecuted instantiation: net_tcp_proc.c:pkg_str_extend Unexecuted instantiation: net_tcp.c:pkg_str_extend Unexecuted instantiation: tcp_common.c:pkg_str_extend Unexecuted instantiation: net_udp.c:pkg_str_extend Unexecuted instantiation: tcp_conn_profile.c:pkg_str_extend Unexecuted instantiation: trans_trace.c:pkg_str_extend Unexecuted instantiation: net_tcp_report.c:pkg_str_extend Unexecuted instantiation: mi.c:pkg_str_extend Unexecuted instantiation: item.c:pkg_str_extend Unexecuted instantiation: sdp.c:pkg_str_extend Unexecuted instantiation: sdp_helpr_funcs.c:pkg_str_extend Unexecuted instantiation: digest_parser.c:pkg_str_extend Unexecuted instantiation: param_parser.c:pkg_str_extend Unexecuted instantiation: parse_contact.c:pkg_str_extend Unexecuted instantiation: parse_body.c:pkg_str_extend Unexecuted instantiation: parse_security.c:pkg_str_extend Unexecuted instantiation: parse_call_info.c:pkg_str_extend Unexecuted instantiation: parse_event.c:pkg_str_extend Unexecuted instantiation: parse_disposition.c:pkg_str_extend Unexecuted instantiation: parse_authenticate.c:pkg_str_extend Unexecuted instantiation: parser_f.c:pkg_str_extend Unexecuted instantiation: parse_rpid.c:pkg_str_extend Unexecuted instantiation: parse_ppi.c:pkg_str_extend Unexecuted instantiation: parse_fcaps.c:pkg_str_extend Unexecuted instantiation: parse_rr.c:pkg_str_extend Unexecuted instantiation: parse_param.c:pkg_str_extend Unexecuted instantiation: parse_diversion.c:pkg_str_extend Unexecuted instantiation: parse_nameaddr.c:pkg_str_extend Unexecuted instantiation: parse_expires.c:pkg_str_extend Unexecuted instantiation: parse_refer_to.c:pkg_str_extend Unexecuted instantiation: parse_from.c:pkg_str_extend Unexecuted instantiation: parse_pai.c:pkg_str_extend Unexecuted instantiation: event_interface.c:pkg_str_extend Unexecuted instantiation: receive.c:pkg_str_extend Unexecuted instantiation: ip_addr.c:pkg_str_extend Unexecuted instantiation: async.c:pkg_str_extend Unexecuted instantiation: daemonize.c:pkg_str_extend Unexecuted instantiation: timer.c:pkg_str_extend Unexecuted instantiation: trace_api.c:pkg_str_extend Unexecuted instantiation: mod_fix.c:pkg_str_extend Unexecuted instantiation: reactor.c:pkg_str_extend Unexecuted instantiation: forward.c:pkg_str_extend Unexecuted instantiation: xlog.c:pkg_str_extend Unexecuted instantiation: blacklists.c:pkg_str_extend Unexecuted instantiation: usr_avp.c:pkg_str_extend Unexecuted instantiation: resolve.c:pkg_str_extend Unexecuted instantiation: io_wait.c:pkg_str_extend Unexecuted instantiation: transformations.c:pkg_str_extend Unexecuted instantiation: sr_module_deps.c:pkg_str_extend Unexecuted instantiation: cfg_reload.c:pkg_str_extend Unexecuted instantiation: time_rec.c:pkg_str_extend Unexecuted instantiation: status_report.c:pkg_str_extend Unexecuted instantiation: signals.c:pkg_str_extend Unexecuted instantiation: db_id.c:pkg_str_extend Unexecuted instantiation: csv.c:pkg_str_extend Unexecuted instantiation: msg_translator.c:pkg_str_extend Unexecuted instantiation: md5utils.c:pkg_str_extend Unexecuted instantiation: cfg.tab.c:pkg_str_extend Unexecuted instantiation: modparam.c:pkg_str_extend Unexecuted instantiation: crc.c:pkg_str_extend Unexecuted instantiation: lex.yy.c:pkg_str_extend Unexecuted instantiation: cfg_pp.c:pkg_str_extend Unexecuted instantiation: shutdown.c:pkg_str_extend Unexecuted instantiation: core_cmds.c:pkg_str_extend Unexecuted instantiation: cachedb.c:pkg_str_extend Unexecuted instantiation: cachedb_id.c:pkg_str_extend |
1021 | | |
1022 | | /* |
1023 | | * Ensure "dst" matches the content of "src" without leaking memory |
1024 | | * |
1025 | | * Note: if you just want to dup a string, use "pkg_str_dup()" instead |
1026 | | */ |
1027 | | static inline int pkg_str_sync(str* dst, const str* src) |
1028 | 0 | { |
1029 | 0 | if (ZSTRP(src)) { |
1030 | 0 | if (dst->s) |
1031 | 0 | pkg_free(dst->s); |
1032 | 0 | memset(dst, 0, sizeof *dst); |
1033 | 0 | return 0; |
1034 | 0 | } |
1035 | | |
1036 | 0 | if (pkg_str_extend(dst, src->len) != 0) { |
1037 | 0 | LM_ERR("oom\n"); |
1038 | 0 | return -1; |
1039 | 0 | } |
1040 | | |
1041 | 0 | memcpy(dst->s, src->s, src->len); |
1042 | 0 | dst->len = src->len; |
1043 | 0 | return 0; |
1044 | 0 | } Unexecuted instantiation: msg_parser.c:pkg_str_sync Unexecuted instantiation: parse_uri.c:pkg_str_sync Unexecuted instantiation: parse_fline.c:pkg_str_sync Unexecuted instantiation: parse_hname2.c:pkg_str_sync Unexecuted instantiation: parse_content.c:pkg_str_sync Unexecuted instantiation: hf.c:pkg_str_sync Unexecuted instantiation: parse_to.c:pkg_str_sync Unexecuted instantiation: parse_via.c:pkg_str_sync Unexecuted instantiation: dprint.c:pkg_str_sync Unexecuted instantiation: pt.c:pkg_str_sync Unexecuted instantiation: strcommon.c:pkg_str_sync Unexecuted instantiation: ut.c:pkg_str_sync Unexecuted instantiation: sdp_ops.c:pkg_str_sync Unexecuted instantiation: statistics.c:pkg_str_sync Unexecuted instantiation: pvar.c:pkg_str_sync Unexecuted instantiation: route.c:pkg_str_sync Unexecuted instantiation: socket_info.c:pkg_str_sync Unexecuted instantiation: ipc.c:pkg_str_sync Unexecuted instantiation: core_stats.c:pkg_str_sync Unexecuted instantiation: route_struct.c:pkg_str_sync Unexecuted instantiation: dset.c:pkg_str_sync Unexecuted instantiation: pt_scaling.c:pkg_str_sync Unexecuted instantiation: pt_load.c:pkg_str_sync Unexecuted instantiation: sr_module.c:pkg_str_sync Unexecuted instantiation: action.c:pkg_str_sync Unexecuted instantiation: flags.c:pkg_str_sync Unexecuted instantiation: db_insertq.c:pkg_str_sync Unexecuted instantiation: db.c:pkg_str_sync Unexecuted instantiation: proto_tcp.c:pkg_str_sync Unexecuted instantiation: proto_udp.c:pkg_str_sync Unexecuted instantiation: trans.c:pkg_str_sync Unexecuted instantiation: net_tcp_proc.c:pkg_str_sync Unexecuted instantiation: net_tcp.c:pkg_str_sync Unexecuted instantiation: tcp_common.c:pkg_str_sync Unexecuted instantiation: net_udp.c:pkg_str_sync Unexecuted instantiation: tcp_conn_profile.c:pkg_str_sync Unexecuted instantiation: trans_trace.c:pkg_str_sync Unexecuted instantiation: net_tcp_report.c:pkg_str_sync Unexecuted instantiation: mi.c:pkg_str_sync Unexecuted instantiation: item.c:pkg_str_sync Unexecuted instantiation: sdp.c:pkg_str_sync Unexecuted instantiation: sdp_helpr_funcs.c:pkg_str_sync Unexecuted instantiation: digest_parser.c:pkg_str_sync Unexecuted instantiation: param_parser.c:pkg_str_sync Unexecuted instantiation: parse_contact.c:pkg_str_sync Unexecuted instantiation: parse_body.c:pkg_str_sync Unexecuted instantiation: parse_security.c:pkg_str_sync Unexecuted instantiation: parse_call_info.c:pkg_str_sync Unexecuted instantiation: parse_event.c:pkg_str_sync Unexecuted instantiation: parse_disposition.c:pkg_str_sync Unexecuted instantiation: parse_authenticate.c:pkg_str_sync Unexecuted instantiation: parser_f.c:pkg_str_sync Unexecuted instantiation: parse_rpid.c:pkg_str_sync Unexecuted instantiation: parse_ppi.c:pkg_str_sync Unexecuted instantiation: parse_fcaps.c:pkg_str_sync Unexecuted instantiation: parse_rr.c:pkg_str_sync Unexecuted instantiation: parse_param.c:pkg_str_sync Unexecuted instantiation: parse_diversion.c:pkg_str_sync Unexecuted instantiation: parse_nameaddr.c:pkg_str_sync Unexecuted instantiation: parse_expires.c:pkg_str_sync Unexecuted instantiation: parse_refer_to.c:pkg_str_sync Unexecuted instantiation: parse_from.c:pkg_str_sync Unexecuted instantiation: parse_pai.c:pkg_str_sync Unexecuted instantiation: event_interface.c:pkg_str_sync Unexecuted instantiation: receive.c:pkg_str_sync Unexecuted instantiation: ip_addr.c:pkg_str_sync Unexecuted instantiation: async.c:pkg_str_sync Unexecuted instantiation: daemonize.c:pkg_str_sync Unexecuted instantiation: timer.c:pkg_str_sync Unexecuted instantiation: trace_api.c:pkg_str_sync Unexecuted instantiation: mod_fix.c:pkg_str_sync Unexecuted instantiation: reactor.c:pkg_str_sync Unexecuted instantiation: forward.c:pkg_str_sync Unexecuted instantiation: xlog.c:pkg_str_sync Unexecuted instantiation: blacklists.c:pkg_str_sync Unexecuted instantiation: usr_avp.c:pkg_str_sync Unexecuted instantiation: resolve.c:pkg_str_sync Unexecuted instantiation: io_wait.c:pkg_str_sync Unexecuted instantiation: transformations.c:pkg_str_sync Unexecuted instantiation: sr_module_deps.c:pkg_str_sync Unexecuted instantiation: cfg_reload.c:pkg_str_sync Unexecuted instantiation: time_rec.c:pkg_str_sync Unexecuted instantiation: status_report.c:pkg_str_sync Unexecuted instantiation: signals.c:pkg_str_sync Unexecuted instantiation: db_id.c:pkg_str_sync Unexecuted instantiation: csv.c:pkg_str_sync Unexecuted instantiation: msg_translator.c:pkg_str_sync Unexecuted instantiation: md5utils.c:pkg_str_sync Unexecuted instantiation: cfg.tab.c:pkg_str_sync Unexecuted instantiation: modparam.c:pkg_str_sync Unexecuted instantiation: crc.c:pkg_str_sync Unexecuted instantiation: lex.yy.c:pkg_str_sync Unexecuted instantiation: cfg_pp.c:pkg_str_sync Unexecuted instantiation: shutdown.c:pkg_str_sync Unexecuted instantiation: core_cmds.c:pkg_str_sync Unexecuted instantiation: cachedb.c:pkg_str_sync Unexecuted instantiation: cachedb_id.c:pkg_str_sync |
1045 | | |
1046 | | |
1047 | | |
1048 | | |
1049 | | /* |
1050 | | * test if two str's are equal |
1051 | | */ |
1052 | | static inline int _str_matchCC(const str_const *a, const str_const *b) |
1053 | 0 | { |
1054 | 0 | return a->len == b->len && !memcmp(a->s, b->s, a->len); |
1055 | 0 | } Unexecuted instantiation: msg_parser.c:_str_matchCC Unexecuted instantiation: parse_uri.c:_str_matchCC Unexecuted instantiation: parse_fline.c:_str_matchCC Unexecuted instantiation: parse_hname2.c:_str_matchCC Unexecuted instantiation: parse_content.c:_str_matchCC Unexecuted instantiation: hf.c:_str_matchCC Unexecuted instantiation: parse_to.c:_str_matchCC Unexecuted instantiation: parse_via.c:_str_matchCC Unexecuted instantiation: dprint.c:_str_matchCC Unexecuted instantiation: pt.c:_str_matchCC Unexecuted instantiation: strcommon.c:_str_matchCC Unexecuted instantiation: ut.c:_str_matchCC Unexecuted instantiation: sdp_ops.c:_str_matchCC Unexecuted instantiation: statistics.c:_str_matchCC Unexecuted instantiation: pvar.c:_str_matchCC Unexecuted instantiation: route.c:_str_matchCC Unexecuted instantiation: socket_info.c:_str_matchCC Unexecuted instantiation: ipc.c:_str_matchCC Unexecuted instantiation: core_stats.c:_str_matchCC Unexecuted instantiation: route_struct.c:_str_matchCC Unexecuted instantiation: dset.c:_str_matchCC Unexecuted instantiation: pt_scaling.c:_str_matchCC Unexecuted instantiation: pt_load.c:_str_matchCC Unexecuted instantiation: sr_module.c:_str_matchCC Unexecuted instantiation: action.c:_str_matchCC Unexecuted instantiation: flags.c:_str_matchCC Unexecuted instantiation: db_insertq.c:_str_matchCC Unexecuted instantiation: db.c:_str_matchCC Unexecuted instantiation: proto_tcp.c:_str_matchCC Unexecuted instantiation: proto_udp.c:_str_matchCC Unexecuted instantiation: trans.c:_str_matchCC Unexecuted instantiation: net_tcp_proc.c:_str_matchCC Unexecuted instantiation: net_tcp.c:_str_matchCC Unexecuted instantiation: tcp_common.c:_str_matchCC Unexecuted instantiation: net_udp.c:_str_matchCC Unexecuted instantiation: tcp_conn_profile.c:_str_matchCC Unexecuted instantiation: trans_trace.c:_str_matchCC Unexecuted instantiation: net_tcp_report.c:_str_matchCC Unexecuted instantiation: mi.c:_str_matchCC Unexecuted instantiation: item.c:_str_matchCC Unexecuted instantiation: sdp.c:_str_matchCC Unexecuted instantiation: sdp_helpr_funcs.c:_str_matchCC Unexecuted instantiation: digest_parser.c:_str_matchCC Unexecuted instantiation: param_parser.c:_str_matchCC Unexecuted instantiation: parse_contact.c:_str_matchCC Unexecuted instantiation: parse_body.c:_str_matchCC Unexecuted instantiation: parse_security.c:_str_matchCC Unexecuted instantiation: parse_call_info.c:_str_matchCC Unexecuted instantiation: parse_event.c:_str_matchCC Unexecuted instantiation: parse_disposition.c:_str_matchCC Unexecuted instantiation: parse_authenticate.c:_str_matchCC Unexecuted instantiation: parser_f.c:_str_matchCC Unexecuted instantiation: parse_rpid.c:_str_matchCC Unexecuted instantiation: parse_ppi.c:_str_matchCC Unexecuted instantiation: parse_fcaps.c:_str_matchCC Unexecuted instantiation: parse_rr.c:_str_matchCC Unexecuted instantiation: parse_param.c:_str_matchCC Unexecuted instantiation: parse_diversion.c:_str_matchCC Unexecuted instantiation: parse_nameaddr.c:_str_matchCC Unexecuted instantiation: parse_expires.c:_str_matchCC Unexecuted instantiation: parse_refer_to.c:_str_matchCC Unexecuted instantiation: parse_from.c:_str_matchCC Unexecuted instantiation: parse_pai.c:_str_matchCC Unexecuted instantiation: event_interface.c:_str_matchCC Unexecuted instantiation: receive.c:_str_matchCC Unexecuted instantiation: ip_addr.c:_str_matchCC Unexecuted instantiation: async.c:_str_matchCC Unexecuted instantiation: daemonize.c:_str_matchCC Unexecuted instantiation: timer.c:_str_matchCC Unexecuted instantiation: trace_api.c:_str_matchCC Unexecuted instantiation: mod_fix.c:_str_matchCC Unexecuted instantiation: reactor.c:_str_matchCC Unexecuted instantiation: forward.c:_str_matchCC Unexecuted instantiation: xlog.c:_str_matchCC Unexecuted instantiation: blacklists.c:_str_matchCC Unexecuted instantiation: usr_avp.c:_str_matchCC Unexecuted instantiation: resolve.c:_str_matchCC Unexecuted instantiation: io_wait.c:_str_matchCC Unexecuted instantiation: transformations.c:_str_matchCC Unexecuted instantiation: sr_module_deps.c:_str_matchCC Unexecuted instantiation: cfg_reload.c:_str_matchCC Unexecuted instantiation: time_rec.c:_str_matchCC Unexecuted instantiation: status_report.c:_str_matchCC Unexecuted instantiation: signals.c:_str_matchCC Unexecuted instantiation: db_id.c:_str_matchCC Unexecuted instantiation: csv.c:_str_matchCC Unexecuted instantiation: msg_translator.c:_str_matchCC Unexecuted instantiation: md5utils.c:_str_matchCC Unexecuted instantiation: cfg.tab.c:_str_matchCC Unexecuted instantiation: modparam.c:_str_matchCC Unexecuted instantiation: crc.c:_str_matchCC Unexecuted instantiation: lex.yy.c:_str_matchCC Unexecuted instantiation: cfg_pp.c:_str_matchCC Unexecuted instantiation: shutdown.c:_str_matchCC Unexecuted instantiation: core_cmds.c:_str_matchCC Unexecuted instantiation: cachedb.c:_str_matchCC Unexecuted instantiation: cachedb_id.c:_str_matchCC |
1056 | | static inline int _str_matchSS(const str *a, const str *b) |
1057 | 0 | { |
1058 | 0 | return _str_matchCC(str2const(a), str2const(b)); |
1059 | 0 | } Unexecuted instantiation: msg_parser.c:_str_matchSS Unexecuted instantiation: parse_uri.c:_str_matchSS Unexecuted instantiation: parse_fline.c:_str_matchSS Unexecuted instantiation: parse_hname2.c:_str_matchSS Unexecuted instantiation: parse_content.c:_str_matchSS Unexecuted instantiation: hf.c:_str_matchSS Unexecuted instantiation: parse_to.c:_str_matchSS Unexecuted instantiation: parse_via.c:_str_matchSS Unexecuted instantiation: dprint.c:_str_matchSS Unexecuted instantiation: pt.c:_str_matchSS Unexecuted instantiation: strcommon.c:_str_matchSS Unexecuted instantiation: ut.c:_str_matchSS Unexecuted instantiation: sdp_ops.c:_str_matchSS Unexecuted instantiation: statistics.c:_str_matchSS Unexecuted instantiation: pvar.c:_str_matchSS Unexecuted instantiation: route.c:_str_matchSS Unexecuted instantiation: socket_info.c:_str_matchSS Unexecuted instantiation: ipc.c:_str_matchSS Unexecuted instantiation: core_stats.c:_str_matchSS Unexecuted instantiation: route_struct.c:_str_matchSS Unexecuted instantiation: dset.c:_str_matchSS Unexecuted instantiation: pt_scaling.c:_str_matchSS Unexecuted instantiation: pt_load.c:_str_matchSS Unexecuted instantiation: sr_module.c:_str_matchSS Unexecuted instantiation: action.c:_str_matchSS Unexecuted instantiation: flags.c:_str_matchSS Unexecuted instantiation: db_insertq.c:_str_matchSS Unexecuted instantiation: db.c:_str_matchSS Unexecuted instantiation: proto_tcp.c:_str_matchSS Unexecuted instantiation: proto_udp.c:_str_matchSS Unexecuted instantiation: trans.c:_str_matchSS Unexecuted instantiation: net_tcp_proc.c:_str_matchSS Unexecuted instantiation: net_tcp.c:_str_matchSS Unexecuted instantiation: tcp_common.c:_str_matchSS Unexecuted instantiation: net_udp.c:_str_matchSS Unexecuted instantiation: tcp_conn_profile.c:_str_matchSS Unexecuted instantiation: trans_trace.c:_str_matchSS Unexecuted instantiation: net_tcp_report.c:_str_matchSS Unexecuted instantiation: mi.c:_str_matchSS Unexecuted instantiation: item.c:_str_matchSS Unexecuted instantiation: sdp.c:_str_matchSS Unexecuted instantiation: sdp_helpr_funcs.c:_str_matchSS Unexecuted instantiation: digest_parser.c:_str_matchSS Unexecuted instantiation: param_parser.c:_str_matchSS Unexecuted instantiation: parse_contact.c:_str_matchSS Unexecuted instantiation: parse_body.c:_str_matchSS Unexecuted instantiation: parse_security.c:_str_matchSS Unexecuted instantiation: parse_call_info.c:_str_matchSS Unexecuted instantiation: parse_event.c:_str_matchSS Unexecuted instantiation: parse_disposition.c:_str_matchSS Unexecuted instantiation: parse_authenticate.c:_str_matchSS Unexecuted instantiation: parser_f.c:_str_matchSS Unexecuted instantiation: parse_rpid.c:_str_matchSS Unexecuted instantiation: parse_ppi.c:_str_matchSS Unexecuted instantiation: parse_fcaps.c:_str_matchSS Unexecuted instantiation: parse_rr.c:_str_matchSS Unexecuted instantiation: parse_param.c:_str_matchSS Unexecuted instantiation: parse_diversion.c:_str_matchSS Unexecuted instantiation: parse_nameaddr.c:_str_matchSS Unexecuted instantiation: parse_expires.c:_str_matchSS Unexecuted instantiation: parse_refer_to.c:_str_matchSS Unexecuted instantiation: parse_from.c:_str_matchSS Unexecuted instantiation: parse_pai.c:_str_matchSS Unexecuted instantiation: event_interface.c:_str_matchSS Unexecuted instantiation: receive.c:_str_matchSS Unexecuted instantiation: ip_addr.c:_str_matchSS Unexecuted instantiation: async.c:_str_matchSS Unexecuted instantiation: daemonize.c:_str_matchSS Unexecuted instantiation: timer.c:_str_matchSS Unexecuted instantiation: trace_api.c:_str_matchSS Unexecuted instantiation: mod_fix.c:_str_matchSS Unexecuted instantiation: reactor.c:_str_matchSS Unexecuted instantiation: forward.c:_str_matchSS Unexecuted instantiation: xlog.c:_str_matchSS Unexecuted instantiation: blacklists.c:_str_matchSS Unexecuted instantiation: usr_avp.c:_str_matchSS Unexecuted instantiation: resolve.c:_str_matchSS Unexecuted instantiation: io_wait.c:_str_matchSS Unexecuted instantiation: transformations.c:_str_matchSS Unexecuted instantiation: sr_module_deps.c:_str_matchSS Unexecuted instantiation: cfg_reload.c:_str_matchSS Unexecuted instantiation: time_rec.c:_str_matchSS Unexecuted instantiation: status_report.c:_str_matchSS Unexecuted instantiation: signals.c:_str_matchSS Unexecuted instantiation: db_id.c:_str_matchSS Unexecuted instantiation: csv.c:_str_matchSS Unexecuted instantiation: msg_translator.c:_str_matchSS Unexecuted instantiation: md5utils.c:_str_matchSS Unexecuted instantiation: cfg.tab.c:_str_matchSS Unexecuted instantiation: modparam.c:_str_matchSS Unexecuted instantiation: crc.c:_str_matchSS Unexecuted instantiation: lex.yy.c:_str_matchSS Unexecuted instantiation: cfg_pp.c:_str_matchSS Unexecuted instantiation: shutdown.c:_str_matchSS Unexecuted instantiation: core_cmds.c:_str_matchSS Unexecuted instantiation: cachedb.c:_str_matchSS Unexecuted instantiation: cachedb_id.c:_str_matchSS |
1060 | | static inline int _str_matchSC(const str *a, const str_const *b) |
1061 | 0 | { |
1062 | 0 | return _str_matchCC(str2const(a), b); |
1063 | 0 | } Unexecuted instantiation: msg_parser.c:_str_matchSC Unexecuted instantiation: parse_uri.c:_str_matchSC Unexecuted instantiation: parse_fline.c:_str_matchSC Unexecuted instantiation: parse_hname2.c:_str_matchSC Unexecuted instantiation: parse_content.c:_str_matchSC Unexecuted instantiation: hf.c:_str_matchSC Unexecuted instantiation: parse_to.c:_str_matchSC Unexecuted instantiation: parse_via.c:_str_matchSC Unexecuted instantiation: dprint.c:_str_matchSC Unexecuted instantiation: pt.c:_str_matchSC Unexecuted instantiation: strcommon.c:_str_matchSC Unexecuted instantiation: ut.c:_str_matchSC Unexecuted instantiation: sdp_ops.c:_str_matchSC Unexecuted instantiation: statistics.c:_str_matchSC Unexecuted instantiation: pvar.c:_str_matchSC Unexecuted instantiation: route.c:_str_matchSC Unexecuted instantiation: socket_info.c:_str_matchSC Unexecuted instantiation: ipc.c:_str_matchSC Unexecuted instantiation: core_stats.c:_str_matchSC Unexecuted instantiation: route_struct.c:_str_matchSC Unexecuted instantiation: dset.c:_str_matchSC Unexecuted instantiation: pt_scaling.c:_str_matchSC Unexecuted instantiation: pt_load.c:_str_matchSC Unexecuted instantiation: sr_module.c:_str_matchSC Unexecuted instantiation: action.c:_str_matchSC Unexecuted instantiation: flags.c:_str_matchSC Unexecuted instantiation: db_insertq.c:_str_matchSC Unexecuted instantiation: db.c:_str_matchSC Unexecuted instantiation: proto_tcp.c:_str_matchSC Unexecuted instantiation: proto_udp.c:_str_matchSC Unexecuted instantiation: trans.c:_str_matchSC Unexecuted instantiation: net_tcp_proc.c:_str_matchSC Unexecuted instantiation: net_tcp.c:_str_matchSC Unexecuted instantiation: tcp_common.c:_str_matchSC Unexecuted instantiation: net_udp.c:_str_matchSC Unexecuted instantiation: tcp_conn_profile.c:_str_matchSC Unexecuted instantiation: trans_trace.c:_str_matchSC Unexecuted instantiation: net_tcp_report.c:_str_matchSC Unexecuted instantiation: mi.c:_str_matchSC Unexecuted instantiation: item.c:_str_matchSC Unexecuted instantiation: sdp.c:_str_matchSC Unexecuted instantiation: sdp_helpr_funcs.c:_str_matchSC Unexecuted instantiation: digest_parser.c:_str_matchSC Unexecuted instantiation: param_parser.c:_str_matchSC Unexecuted instantiation: parse_contact.c:_str_matchSC Unexecuted instantiation: parse_body.c:_str_matchSC Unexecuted instantiation: parse_security.c:_str_matchSC Unexecuted instantiation: parse_call_info.c:_str_matchSC Unexecuted instantiation: parse_event.c:_str_matchSC Unexecuted instantiation: parse_disposition.c:_str_matchSC Unexecuted instantiation: parse_authenticate.c:_str_matchSC Unexecuted instantiation: parser_f.c:_str_matchSC Unexecuted instantiation: parse_rpid.c:_str_matchSC Unexecuted instantiation: parse_ppi.c:_str_matchSC Unexecuted instantiation: parse_fcaps.c:_str_matchSC Unexecuted instantiation: parse_rr.c:_str_matchSC Unexecuted instantiation: parse_param.c:_str_matchSC Unexecuted instantiation: parse_diversion.c:_str_matchSC Unexecuted instantiation: parse_nameaddr.c:_str_matchSC Unexecuted instantiation: parse_expires.c:_str_matchSC Unexecuted instantiation: parse_refer_to.c:_str_matchSC Unexecuted instantiation: parse_from.c:_str_matchSC Unexecuted instantiation: parse_pai.c:_str_matchSC Unexecuted instantiation: event_interface.c:_str_matchSC Unexecuted instantiation: receive.c:_str_matchSC Unexecuted instantiation: ip_addr.c:_str_matchSC Unexecuted instantiation: async.c:_str_matchSC Unexecuted instantiation: daemonize.c:_str_matchSC Unexecuted instantiation: timer.c:_str_matchSC Unexecuted instantiation: trace_api.c:_str_matchSC Unexecuted instantiation: mod_fix.c:_str_matchSC Unexecuted instantiation: reactor.c:_str_matchSC Unexecuted instantiation: forward.c:_str_matchSC Unexecuted instantiation: xlog.c:_str_matchSC Unexecuted instantiation: blacklists.c:_str_matchSC Unexecuted instantiation: usr_avp.c:_str_matchSC Unexecuted instantiation: resolve.c:_str_matchSC Unexecuted instantiation: io_wait.c:_str_matchSC Unexecuted instantiation: transformations.c:_str_matchSC Unexecuted instantiation: sr_module_deps.c:_str_matchSC Unexecuted instantiation: cfg_reload.c:_str_matchSC Unexecuted instantiation: time_rec.c:_str_matchSC Unexecuted instantiation: status_report.c:_str_matchSC Unexecuted instantiation: signals.c:_str_matchSC Unexecuted instantiation: db_id.c:_str_matchSC Unexecuted instantiation: csv.c:_str_matchSC Unexecuted instantiation: msg_translator.c:_str_matchSC Unexecuted instantiation: md5utils.c:_str_matchSC Unexecuted instantiation: cfg.tab.c:_str_matchSC Unexecuted instantiation: modparam.c:_str_matchSC Unexecuted instantiation: crc.c:_str_matchSC Unexecuted instantiation: lex.yy.c:_str_matchSC Unexecuted instantiation: cfg_pp.c:_str_matchSC Unexecuted instantiation: shutdown.c:_str_matchSC Unexecuted instantiation: core_cmds.c:_str_matchSC Unexecuted instantiation: cachedb.c:_str_matchSC Unexecuted instantiation: cachedb_id.c:_str_matchSC |
1064 | | static inline int _str_matchCS(const str_const *a, const str *b) |
1065 | 0 | { |
1066 | 0 | return _str_matchCC(a, str2const(b)); |
1067 | 0 | } Unexecuted instantiation: msg_parser.c:_str_matchCS Unexecuted instantiation: parse_uri.c:_str_matchCS Unexecuted instantiation: parse_fline.c:_str_matchCS Unexecuted instantiation: parse_hname2.c:_str_matchCS Unexecuted instantiation: parse_content.c:_str_matchCS Unexecuted instantiation: hf.c:_str_matchCS Unexecuted instantiation: parse_to.c:_str_matchCS Unexecuted instantiation: parse_via.c:_str_matchCS Unexecuted instantiation: dprint.c:_str_matchCS Unexecuted instantiation: pt.c:_str_matchCS Unexecuted instantiation: strcommon.c:_str_matchCS Unexecuted instantiation: ut.c:_str_matchCS Unexecuted instantiation: sdp_ops.c:_str_matchCS Unexecuted instantiation: statistics.c:_str_matchCS Unexecuted instantiation: pvar.c:_str_matchCS Unexecuted instantiation: route.c:_str_matchCS Unexecuted instantiation: socket_info.c:_str_matchCS Unexecuted instantiation: ipc.c:_str_matchCS Unexecuted instantiation: core_stats.c:_str_matchCS Unexecuted instantiation: route_struct.c:_str_matchCS Unexecuted instantiation: dset.c:_str_matchCS Unexecuted instantiation: pt_scaling.c:_str_matchCS Unexecuted instantiation: pt_load.c:_str_matchCS Unexecuted instantiation: sr_module.c:_str_matchCS Unexecuted instantiation: action.c:_str_matchCS Unexecuted instantiation: flags.c:_str_matchCS Unexecuted instantiation: db_insertq.c:_str_matchCS Unexecuted instantiation: db.c:_str_matchCS Unexecuted instantiation: proto_tcp.c:_str_matchCS Unexecuted instantiation: proto_udp.c:_str_matchCS Unexecuted instantiation: trans.c:_str_matchCS Unexecuted instantiation: net_tcp_proc.c:_str_matchCS Unexecuted instantiation: net_tcp.c:_str_matchCS Unexecuted instantiation: tcp_common.c:_str_matchCS Unexecuted instantiation: net_udp.c:_str_matchCS Unexecuted instantiation: tcp_conn_profile.c:_str_matchCS Unexecuted instantiation: trans_trace.c:_str_matchCS Unexecuted instantiation: net_tcp_report.c:_str_matchCS Unexecuted instantiation: mi.c:_str_matchCS Unexecuted instantiation: item.c:_str_matchCS Unexecuted instantiation: sdp.c:_str_matchCS Unexecuted instantiation: sdp_helpr_funcs.c:_str_matchCS Unexecuted instantiation: digest_parser.c:_str_matchCS Unexecuted instantiation: param_parser.c:_str_matchCS Unexecuted instantiation: parse_contact.c:_str_matchCS Unexecuted instantiation: parse_body.c:_str_matchCS Unexecuted instantiation: parse_security.c:_str_matchCS Unexecuted instantiation: parse_call_info.c:_str_matchCS Unexecuted instantiation: parse_event.c:_str_matchCS Unexecuted instantiation: parse_disposition.c:_str_matchCS Unexecuted instantiation: parse_authenticate.c:_str_matchCS Unexecuted instantiation: parser_f.c:_str_matchCS Unexecuted instantiation: parse_rpid.c:_str_matchCS Unexecuted instantiation: parse_ppi.c:_str_matchCS Unexecuted instantiation: parse_fcaps.c:_str_matchCS Unexecuted instantiation: parse_rr.c:_str_matchCS Unexecuted instantiation: parse_param.c:_str_matchCS Unexecuted instantiation: parse_diversion.c:_str_matchCS Unexecuted instantiation: parse_nameaddr.c:_str_matchCS Unexecuted instantiation: parse_expires.c:_str_matchCS Unexecuted instantiation: parse_refer_to.c:_str_matchCS Unexecuted instantiation: parse_from.c:_str_matchCS Unexecuted instantiation: parse_pai.c:_str_matchCS Unexecuted instantiation: event_interface.c:_str_matchCS Unexecuted instantiation: receive.c:_str_matchCS Unexecuted instantiation: ip_addr.c:_str_matchCS Unexecuted instantiation: async.c:_str_matchCS Unexecuted instantiation: daemonize.c:_str_matchCS Unexecuted instantiation: timer.c:_str_matchCS Unexecuted instantiation: trace_api.c:_str_matchCS Unexecuted instantiation: mod_fix.c:_str_matchCS Unexecuted instantiation: reactor.c:_str_matchCS Unexecuted instantiation: forward.c:_str_matchCS Unexecuted instantiation: xlog.c:_str_matchCS Unexecuted instantiation: blacklists.c:_str_matchCS Unexecuted instantiation: usr_avp.c:_str_matchCS Unexecuted instantiation: resolve.c:_str_matchCS Unexecuted instantiation: io_wait.c:_str_matchCS Unexecuted instantiation: transformations.c:_str_matchCS Unexecuted instantiation: sr_module_deps.c:_str_matchCS Unexecuted instantiation: cfg_reload.c:_str_matchCS Unexecuted instantiation: time_rec.c:_str_matchCS Unexecuted instantiation: status_report.c:_str_matchCS Unexecuted instantiation: signals.c:_str_matchCS Unexecuted instantiation: db_id.c:_str_matchCS Unexecuted instantiation: csv.c:_str_matchCS Unexecuted instantiation: msg_translator.c:_str_matchCS Unexecuted instantiation: md5utils.c:_str_matchCS Unexecuted instantiation: cfg.tab.c:_str_matchCS Unexecuted instantiation: modparam.c:_str_matchCS Unexecuted instantiation: crc.c:_str_matchCS Unexecuted instantiation: lex.yy.c:_str_matchCS Unexecuted instantiation: cfg_pp.c:_str_matchCS Unexecuted instantiation: shutdown.c:_str_matchCS Unexecuted instantiation: core_cmds.c:_str_matchCS Unexecuted instantiation: cachedb.c:_str_matchCS Unexecuted instantiation: cachedb_id.c:_str_matchCS |
1068 | | |
1069 | | /* |
1070 | | * test if two str's are equal, case-insensitive |
1071 | | */ |
1072 | | static inline int _str_casematchCC(const str_const *a, const str_const *b) |
1073 | 0 | { |
1074 | 0 | const char *p, *q, *end; |
1075 | |
|
1076 | 0 | if (a->len != b->len) |
1077 | 0 | return 0; |
1078 | | |
1079 | 0 | p = a->s; |
1080 | 0 | q = b->s; |
1081 | |
|
1082 | 0 | if (p == q || a->len == 0) |
1083 | 0 | return 1; |
1084 | | |
1085 | 0 | end = p + a->len; |
1086 | |
|
1087 | 0 | do { |
1088 | 0 | if (tolower(*p) != tolower(*q++)) |
1089 | 0 | return 0; |
1090 | 0 | } while (++p < end); |
1091 | | |
1092 | 0 | return 1; |
1093 | 0 | } Unexecuted instantiation: msg_parser.c:_str_casematchCC Unexecuted instantiation: parse_uri.c:_str_casematchCC Unexecuted instantiation: parse_fline.c:_str_casematchCC Unexecuted instantiation: parse_hname2.c:_str_casematchCC Unexecuted instantiation: parse_content.c:_str_casematchCC Unexecuted instantiation: hf.c:_str_casematchCC Unexecuted instantiation: parse_to.c:_str_casematchCC Unexecuted instantiation: parse_via.c:_str_casematchCC Unexecuted instantiation: dprint.c:_str_casematchCC Unexecuted instantiation: pt.c:_str_casematchCC Unexecuted instantiation: strcommon.c:_str_casematchCC Unexecuted instantiation: ut.c:_str_casematchCC Unexecuted instantiation: sdp_ops.c:_str_casematchCC Unexecuted instantiation: statistics.c:_str_casematchCC Unexecuted instantiation: pvar.c:_str_casematchCC Unexecuted instantiation: route.c:_str_casematchCC Unexecuted instantiation: socket_info.c:_str_casematchCC Unexecuted instantiation: ipc.c:_str_casematchCC Unexecuted instantiation: core_stats.c:_str_casematchCC Unexecuted instantiation: route_struct.c:_str_casematchCC Unexecuted instantiation: dset.c:_str_casematchCC Unexecuted instantiation: pt_scaling.c:_str_casematchCC Unexecuted instantiation: pt_load.c:_str_casematchCC Unexecuted instantiation: sr_module.c:_str_casematchCC Unexecuted instantiation: action.c:_str_casematchCC Unexecuted instantiation: flags.c:_str_casematchCC Unexecuted instantiation: db_insertq.c:_str_casematchCC Unexecuted instantiation: db.c:_str_casematchCC Unexecuted instantiation: proto_tcp.c:_str_casematchCC Unexecuted instantiation: proto_udp.c:_str_casematchCC Unexecuted instantiation: trans.c:_str_casematchCC Unexecuted instantiation: net_tcp_proc.c:_str_casematchCC Unexecuted instantiation: net_tcp.c:_str_casematchCC Unexecuted instantiation: tcp_common.c:_str_casematchCC Unexecuted instantiation: net_udp.c:_str_casematchCC Unexecuted instantiation: tcp_conn_profile.c:_str_casematchCC Unexecuted instantiation: trans_trace.c:_str_casematchCC Unexecuted instantiation: net_tcp_report.c:_str_casematchCC Unexecuted instantiation: mi.c:_str_casematchCC Unexecuted instantiation: item.c:_str_casematchCC Unexecuted instantiation: sdp.c:_str_casematchCC Unexecuted instantiation: sdp_helpr_funcs.c:_str_casematchCC Unexecuted instantiation: digest_parser.c:_str_casematchCC Unexecuted instantiation: param_parser.c:_str_casematchCC Unexecuted instantiation: parse_contact.c:_str_casematchCC Unexecuted instantiation: parse_body.c:_str_casematchCC Unexecuted instantiation: parse_security.c:_str_casematchCC Unexecuted instantiation: parse_call_info.c:_str_casematchCC Unexecuted instantiation: parse_event.c:_str_casematchCC Unexecuted instantiation: parse_disposition.c:_str_casematchCC Unexecuted instantiation: parse_authenticate.c:_str_casematchCC Unexecuted instantiation: parser_f.c:_str_casematchCC Unexecuted instantiation: parse_rpid.c:_str_casematchCC Unexecuted instantiation: parse_ppi.c:_str_casematchCC Unexecuted instantiation: parse_fcaps.c:_str_casematchCC Unexecuted instantiation: parse_rr.c:_str_casematchCC Unexecuted instantiation: parse_param.c:_str_casematchCC Unexecuted instantiation: parse_diversion.c:_str_casematchCC Unexecuted instantiation: parse_nameaddr.c:_str_casematchCC Unexecuted instantiation: parse_expires.c:_str_casematchCC Unexecuted instantiation: parse_refer_to.c:_str_casematchCC Unexecuted instantiation: parse_from.c:_str_casematchCC Unexecuted instantiation: parse_pai.c:_str_casematchCC Unexecuted instantiation: event_interface.c:_str_casematchCC Unexecuted instantiation: receive.c:_str_casematchCC Unexecuted instantiation: ip_addr.c:_str_casematchCC Unexecuted instantiation: async.c:_str_casematchCC Unexecuted instantiation: daemonize.c:_str_casematchCC Unexecuted instantiation: timer.c:_str_casematchCC Unexecuted instantiation: trace_api.c:_str_casematchCC Unexecuted instantiation: mod_fix.c:_str_casematchCC Unexecuted instantiation: reactor.c:_str_casematchCC Unexecuted instantiation: forward.c:_str_casematchCC Unexecuted instantiation: xlog.c:_str_casematchCC Unexecuted instantiation: blacklists.c:_str_casematchCC Unexecuted instantiation: usr_avp.c:_str_casematchCC Unexecuted instantiation: resolve.c:_str_casematchCC Unexecuted instantiation: io_wait.c:_str_casematchCC Unexecuted instantiation: transformations.c:_str_casematchCC Unexecuted instantiation: sr_module_deps.c:_str_casematchCC Unexecuted instantiation: cfg_reload.c:_str_casematchCC Unexecuted instantiation: time_rec.c:_str_casematchCC Unexecuted instantiation: status_report.c:_str_casematchCC Unexecuted instantiation: signals.c:_str_casematchCC Unexecuted instantiation: db_id.c:_str_casematchCC Unexecuted instantiation: csv.c:_str_casematchCC Unexecuted instantiation: msg_translator.c:_str_casematchCC Unexecuted instantiation: md5utils.c:_str_casematchCC Unexecuted instantiation: cfg.tab.c:_str_casematchCC Unexecuted instantiation: modparam.c:_str_casematchCC Unexecuted instantiation: crc.c:_str_casematchCC Unexecuted instantiation: lex.yy.c:_str_casematchCC Unexecuted instantiation: cfg_pp.c:_str_casematchCC Unexecuted instantiation: shutdown.c:_str_casematchCC Unexecuted instantiation: core_cmds.c:_str_casematchCC Unexecuted instantiation: cachedb.c:_str_casematchCC Unexecuted instantiation: cachedb_id.c:_str_casematchCC |
1094 | | static inline int _str_casematchSS(const str *a, const str *b) |
1095 | 0 | { |
1096 | 0 | return _str_casematchCC(str2const(a), str2const(b)); |
1097 | 0 | } Unexecuted instantiation: msg_parser.c:_str_casematchSS Unexecuted instantiation: parse_uri.c:_str_casematchSS Unexecuted instantiation: parse_fline.c:_str_casematchSS Unexecuted instantiation: parse_hname2.c:_str_casematchSS Unexecuted instantiation: parse_content.c:_str_casematchSS Unexecuted instantiation: hf.c:_str_casematchSS Unexecuted instantiation: parse_to.c:_str_casematchSS Unexecuted instantiation: parse_via.c:_str_casematchSS Unexecuted instantiation: dprint.c:_str_casematchSS Unexecuted instantiation: pt.c:_str_casematchSS Unexecuted instantiation: strcommon.c:_str_casematchSS Unexecuted instantiation: ut.c:_str_casematchSS Unexecuted instantiation: sdp_ops.c:_str_casematchSS Unexecuted instantiation: statistics.c:_str_casematchSS Unexecuted instantiation: pvar.c:_str_casematchSS Unexecuted instantiation: route.c:_str_casematchSS Unexecuted instantiation: socket_info.c:_str_casematchSS Unexecuted instantiation: ipc.c:_str_casematchSS Unexecuted instantiation: core_stats.c:_str_casematchSS Unexecuted instantiation: route_struct.c:_str_casematchSS Unexecuted instantiation: dset.c:_str_casematchSS Unexecuted instantiation: pt_scaling.c:_str_casematchSS Unexecuted instantiation: pt_load.c:_str_casematchSS Unexecuted instantiation: sr_module.c:_str_casematchSS Unexecuted instantiation: action.c:_str_casematchSS Unexecuted instantiation: flags.c:_str_casematchSS Unexecuted instantiation: db_insertq.c:_str_casematchSS Unexecuted instantiation: db.c:_str_casematchSS Unexecuted instantiation: proto_tcp.c:_str_casematchSS Unexecuted instantiation: proto_udp.c:_str_casematchSS Unexecuted instantiation: trans.c:_str_casematchSS Unexecuted instantiation: net_tcp_proc.c:_str_casematchSS Unexecuted instantiation: net_tcp.c:_str_casematchSS Unexecuted instantiation: tcp_common.c:_str_casematchSS Unexecuted instantiation: net_udp.c:_str_casematchSS Unexecuted instantiation: tcp_conn_profile.c:_str_casematchSS Unexecuted instantiation: trans_trace.c:_str_casematchSS Unexecuted instantiation: net_tcp_report.c:_str_casematchSS Unexecuted instantiation: mi.c:_str_casematchSS Unexecuted instantiation: item.c:_str_casematchSS Unexecuted instantiation: sdp.c:_str_casematchSS Unexecuted instantiation: sdp_helpr_funcs.c:_str_casematchSS Unexecuted instantiation: digest_parser.c:_str_casematchSS Unexecuted instantiation: param_parser.c:_str_casematchSS Unexecuted instantiation: parse_contact.c:_str_casematchSS Unexecuted instantiation: parse_body.c:_str_casematchSS Unexecuted instantiation: parse_security.c:_str_casematchSS Unexecuted instantiation: parse_call_info.c:_str_casematchSS Unexecuted instantiation: parse_event.c:_str_casematchSS Unexecuted instantiation: parse_disposition.c:_str_casematchSS Unexecuted instantiation: parse_authenticate.c:_str_casematchSS Unexecuted instantiation: parser_f.c:_str_casematchSS Unexecuted instantiation: parse_rpid.c:_str_casematchSS Unexecuted instantiation: parse_ppi.c:_str_casematchSS Unexecuted instantiation: parse_fcaps.c:_str_casematchSS Unexecuted instantiation: parse_rr.c:_str_casematchSS Unexecuted instantiation: parse_param.c:_str_casematchSS Unexecuted instantiation: parse_diversion.c:_str_casematchSS Unexecuted instantiation: parse_nameaddr.c:_str_casematchSS Unexecuted instantiation: parse_expires.c:_str_casematchSS Unexecuted instantiation: parse_refer_to.c:_str_casematchSS Unexecuted instantiation: parse_from.c:_str_casematchSS Unexecuted instantiation: parse_pai.c:_str_casematchSS Unexecuted instantiation: event_interface.c:_str_casematchSS Unexecuted instantiation: receive.c:_str_casematchSS Unexecuted instantiation: ip_addr.c:_str_casematchSS Unexecuted instantiation: async.c:_str_casematchSS Unexecuted instantiation: daemonize.c:_str_casematchSS Unexecuted instantiation: timer.c:_str_casematchSS Unexecuted instantiation: trace_api.c:_str_casematchSS Unexecuted instantiation: mod_fix.c:_str_casematchSS Unexecuted instantiation: reactor.c:_str_casematchSS Unexecuted instantiation: forward.c:_str_casematchSS Unexecuted instantiation: xlog.c:_str_casematchSS Unexecuted instantiation: blacklists.c:_str_casematchSS Unexecuted instantiation: usr_avp.c:_str_casematchSS Unexecuted instantiation: resolve.c:_str_casematchSS Unexecuted instantiation: io_wait.c:_str_casematchSS Unexecuted instantiation: transformations.c:_str_casematchSS Unexecuted instantiation: sr_module_deps.c:_str_casematchSS Unexecuted instantiation: cfg_reload.c:_str_casematchSS Unexecuted instantiation: time_rec.c:_str_casematchSS Unexecuted instantiation: status_report.c:_str_casematchSS Unexecuted instantiation: signals.c:_str_casematchSS Unexecuted instantiation: db_id.c:_str_casematchSS Unexecuted instantiation: csv.c:_str_casematchSS Unexecuted instantiation: msg_translator.c:_str_casematchSS Unexecuted instantiation: md5utils.c:_str_casematchSS Unexecuted instantiation: cfg.tab.c:_str_casematchSS Unexecuted instantiation: modparam.c:_str_casematchSS Unexecuted instantiation: crc.c:_str_casematchSS Unexecuted instantiation: lex.yy.c:_str_casematchSS Unexecuted instantiation: cfg_pp.c:_str_casematchSS Unexecuted instantiation: shutdown.c:_str_casematchSS Unexecuted instantiation: core_cmds.c:_str_casematchSS Unexecuted instantiation: cachedb.c:_str_casematchSS Unexecuted instantiation: cachedb_id.c:_str_casematchSS |
1098 | | static inline int _str_casematchSC(const str *a, const str_const *b) |
1099 | 0 | { |
1100 | 0 | return _str_casematchCC(str2const(a), b); |
1101 | 0 | } Unexecuted instantiation: msg_parser.c:_str_casematchSC Unexecuted instantiation: parse_uri.c:_str_casematchSC Unexecuted instantiation: parse_fline.c:_str_casematchSC Unexecuted instantiation: parse_hname2.c:_str_casematchSC Unexecuted instantiation: parse_content.c:_str_casematchSC Unexecuted instantiation: hf.c:_str_casematchSC Unexecuted instantiation: parse_to.c:_str_casematchSC Unexecuted instantiation: parse_via.c:_str_casematchSC Unexecuted instantiation: dprint.c:_str_casematchSC Unexecuted instantiation: pt.c:_str_casematchSC Unexecuted instantiation: strcommon.c:_str_casematchSC Unexecuted instantiation: ut.c:_str_casematchSC Unexecuted instantiation: sdp_ops.c:_str_casematchSC Unexecuted instantiation: statistics.c:_str_casematchSC Unexecuted instantiation: pvar.c:_str_casematchSC Unexecuted instantiation: route.c:_str_casematchSC Unexecuted instantiation: socket_info.c:_str_casematchSC Unexecuted instantiation: ipc.c:_str_casematchSC Unexecuted instantiation: core_stats.c:_str_casematchSC Unexecuted instantiation: route_struct.c:_str_casematchSC Unexecuted instantiation: dset.c:_str_casematchSC Unexecuted instantiation: pt_scaling.c:_str_casematchSC Unexecuted instantiation: pt_load.c:_str_casematchSC Unexecuted instantiation: sr_module.c:_str_casematchSC Unexecuted instantiation: action.c:_str_casematchSC Unexecuted instantiation: flags.c:_str_casematchSC Unexecuted instantiation: db_insertq.c:_str_casematchSC Unexecuted instantiation: db.c:_str_casematchSC Unexecuted instantiation: proto_tcp.c:_str_casematchSC Unexecuted instantiation: proto_udp.c:_str_casematchSC Unexecuted instantiation: trans.c:_str_casematchSC Unexecuted instantiation: net_tcp_proc.c:_str_casematchSC Unexecuted instantiation: net_tcp.c:_str_casematchSC Unexecuted instantiation: tcp_common.c:_str_casematchSC Unexecuted instantiation: net_udp.c:_str_casematchSC Unexecuted instantiation: tcp_conn_profile.c:_str_casematchSC Unexecuted instantiation: trans_trace.c:_str_casematchSC Unexecuted instantiation: net_tcp_report.c:_str_casematchSC Unexecuted instantiation: mi.c:_str_casematchSC Unexecuted instantiation: item.c:_str_casematchSC Unexecuted instantiation: sdp.c:_str_casematchSC Unexecuted instantiation: sdp_helpr_funcs.c:_str_casematchSC Unexecuted instantiation: digest_parser.c:_str_casematchSC Unexecuted instantiation: param_parser.c:_str_casematchSC Unexecuted instantiation: parse_contact.c:_str_casematchSC Unexecuted instantiation: parse_body.c:_str_casematchSC Unexecuted instantiation: parse_security.c:_str_casematchSC Unexecuted instantiation: parse_call_info.c:_str_casematchSC Unexecuted instantiation: parse_event.c:_str_casematchSC Unexecuted instantiation: parse_disposition.c:_str_casematchSC Unexecuted instantiation: parse_authenticate.c:_str_casematchSC Unexecuted instantiation: parser_f.c:_str_casematchSC Unexecuted instantiation: parse_rpid.c:_str_casematchSC Unexecuted instantiation: parse_ppi.c:_str_casematchSC Unexecuted instantiation: parse_fcaps.c:_str_casematchSC Unexecuted instantiation: parse_rr.c:_str_casematchSC Unexecuted instantiation: parse_param.c:_str_casematchSC Unexecuted instantiation: parse_diversion.c:_str_casematchSC Unexecuted instantiation: parse_nameaddr.c:_str_casematchSC Unexecuted instantiation: parse_expires.c:_str_casematchSC Unexecuted instantiation: parse_refer_to.c:_str_casematchSC Unexecuted instantiation: parse_from.c:_str_casematchSC Unexecuted instantiation: parse_pai.c:_str_casematchSC Unexecuted instantiation: event_interface.c:_str_casematchSC Unexecuted instantiation: receive.c:_str_casematchSC Unexecuted instantiation: ip_addr.c:_str_casematchSC Unexecuted instantiation: async.c:_str_casematchSC Unexecuted instantiation: daemonize.c:_str_casematchSC Unexecuted instantiation: timer.c:_str_casematchSC Unexecuted instantiation: trace_api.c:_str_casematchSC Unexecuted instantiation: mod_fix.c:_str_casematchSC Unexecuted instantiation: reactor.c:_str_casematchSC Unexecuted instantiation: forward.c:_str_casematchSC Unexecuted instantiation: xlog.c:_str_casematchSC Unexecuted instantiation: blacklists.c:_str_casematchSC Unexecuted instantiation: usr_avp.c:_str_casematchSC Unexecuted instantiation: resolve.c:_str_casematchSC Unexecuted instantiation: io_wait.c:_str_casematchSC Unexecuted instantiation: transformations.c:_str_casematchSC Unexecuted instantiation: sr_module_deps.c:_str_casematchSC Unexecuted instantiation: cfg_reload.c:_str_casematchSC Unexecuted instantiation: time_rec.c:_str_casematchSC Unexecuted instantiation: status_report.c:_str_casematchSC Unexecuted instantiation: signals.c:_str_casematchSC Unexecuted instantiation: db_id.c:_str_casematchSC Unexecuted instantiation: csv.c:_str_casematchSC Unexecuted instantiation: msg_translator.c:_str_casematchSC Unexecuted instantiation: md5utils.c:_str_casematchSC Unexecuted instantiation: cfg.tab.c:_str_casematchSC Unexecuted instantiation: modparam.c:_str_casematchSC Unexecuted instantiation: crc.c:_str_casematchSC Unexecuted instantiation: lex.yy.c:_str_casematchSC Unexecuted instantiation: cfg_pp.c:_str_casematchSC Unexecuted instantiation: shutdown.c:_str_casematchSC Unexecuted instantiation: core_cmds.c:_str_casematchSC Unexecuted instantiation: cachedb.c:_str_casematchSC Unexecuted instantiation: cachedb_id.c:_str_casematchSC |
1102 | | static inline int _str_casematchCS(const str_const *a, const str *b) |
1103 | 0 | { |
1104 | 0 | return _str_casematchCC(a, str2const(b)); |
1105 | 0 | } Unexecuted instantiation: msg_parser.c:_str_casematchCS Unexecuted instantiation: parse_uri.c:_str_casematchCS Unexecuted instantiation: parse_fline.c:_str_casematchCS Unexecuted instantiation: parse_hname2.c:_str_casematchCS Unexecuted instantiation: parse_content.c:_str_casematchCS Unexecuted instantiation: hf.c:_str_casematchCS Unexecuted instantiation: parse_to.c:_str_casematchCS Unexecuted instantiation: parse_via.c:_str_casematchCS Unexecuted instantiation: dprint.c:_str_casematchCS Unexecuted instantiation: pt.c:_str_casematchCS Unexecuted instantiation: strcommon.c:_str_casematchCS Unexecuted instantiation: ut.c:_str_casematchCS Unexecuted instantiation: sdp_ops.c:_str_casematchCS Unexecuted instantiation: statistics.c:_str_casematchCS Unexecuted instantiation: pvar.c:_str_casematchCS Unexecuted instantiation: route.c:_str_casematchCS Unexecuted instantiation: socket_info.c:_str_casematchCS Unexecuted instantiation: ipc.c:_str_casematchCS Unexecuted instantiation: core_stats.c:_str_casematchCS Unexecuted instantiation: route_struct.c:_str_casematchCS Unexecuted instantiation: dset.c:_str_casematchCS Unexecuted instantiation: pt_scaling.c:_str_casematchCS Unexecuted instantiation: pt_load.c:_str_casematchCS Unexecuted instantiation: sr_module.c:_str_casematchCS Unexecuted instantiation: action.c:_str_casematchCS Unexecuted instantiation: flags.c:_str_casematchCS Unexecuted instantiation: db_insertq.c:_str_casematchCS Unexecuted instantiation: db.c:_str_casematchCS Unexecuted instantiation: proto_tcp.c:_str_casematchCS Unexecuted instantiation: proto_udp.c:_str_casematchCS Unexecuted instantiation: trans.c:_str_casematchCS Unexecuted instantiation: net_tcp_proc.c:_str_casematchCS Unexecuted instantiation: net_tcp.c:_str_casematchCS Unexecuted instantiation: tcp_common.c:_str_casematchCS Unexecuted instantiation: net_udp.c:_str_casematchCS Unexecuted instantiation: tcp_conn_profile.c:_str_casematchCS Unexecuted instantiation: trans_trace.c:_str_casematchCS Unexecuted instantiation: net_tcp_report.c:_str_casematchCS Unexecuted instantiation: mi.c:_str_casematchCS Unexecuted instantiation: item.c:_str_casematchCS Unexecuted instantiation: sdp.c:_str_casematchCS Unexecuted instantiation: sdp_helpr_funcs.c:_str_casematchCS Unexecuted instantiation: digest_parser.c:_str_casematchCS Unexecuted instantiation: param_parser.c:_str_casematchCS Unexecuted instantiation: parse_contact.c:_str_casematchCS Unexecuted instantiation: parse_body.c:_str_casematchCS Unexecuted instantiation: parse_security.c:_str_casematchCS Unexecuted instantiation: parse_call_info.c:_str_casematchCS Unexecuted instantiation: parse_event.c:_str_casematchCS Unexecuted instantiation: parse_disposition.c:_str_casematchCS Unexecuted instantiation: parse_authenticate.c:_str_casematchCS Unexecuted instantiation: parser_f.c:_str_casematchCS Unexecuted instantiation: parse_rpid.c:_str_casematchCS Unexecuted instantiation: parse_ppi.c:_str_casematchCS Unexecuted instantiation: parse_fcaps.c:_str_casematchCS Unexecuted instantiation: parse_rr.c:_str_casematchCS Unexecuted instantiation: parse_param.c:_str_casematchCS Unexecuted instantiation: parse_diversion.c:_str_casematchCS Unexecuted instantiation: parse_nameaddr.c:_str_casematchCS Unexecuted instantiation: parse_expires.c:_str_casematchCS Unexecuted instantiation: parse_refer_to.c:_str_casematchCS Unexecuted instantiation: parse_from.c:_str_casematchCS Unexecuted instantiation: parse_pai.c:_str_casematchCS Unexecuted instantiation: event_interface.c:_str_casematchCS Unexecuted instantiation: receive.c:_str_casematchCS Unexecuted instantiation: ip_addr.c:_str_casematchCS Unexecuted instantiation: async.c:_str_casematchCS Unexecuted instantiation: daemonize.c:_str_casematchCS Unexecuted instantiation: timer.c:_str_casematchCS Unexecuted instantiation: trace_api.c:_str_casematchCS Unexecuted instantiation: mod_fix.c:_str_casematchCS Unexecuted instantiation: reactor.c:_str_casematchCS Unexecuted instantiation: forward.c:_str_casematchCS Unexecuted instantiation: xlog.c:_str_casematchCS Unexecuted instantiation: blacklists.c:_str_casematchCS Unexecuted instantiation: usr_avp.c:_str_casematchCS Unexecuted instantiation: resolve.c:_str_casematchCS Unexecuted instantiation: io_wait.c:_str_casematchCS Unexecuted instantiation: transformations.c:_str_casematchCS Unexecuted instantiation: sr_module_deps.c:_str_casematchCS Unexecuted instantiation: cfg_reload.c:_str_casematchCS Unexecuted instantiation: time_rec.c:_str_casematchCS Unexecuted instantiation: status_report.c:_str_casematchCS Unexecuted instantiation: signals.c:_str_casematchCS Unexecuted instantiation: db_id.c:_str_casematchCS Unexecuted instantiation: csv.c:_str_casematchCS Unexecuted instantiation: msg_translator.c:_str_casematchCS Unexecuted instantiation: md5utils.c:_str_casematchCS Unexecuted instantiation: cfg.tab.c:_str_casematchCS Unexecuted instantiation: modparam.c:_str_casematchCS Unexecuted instantiation: crc.c:_str_casematchCS Unexecuted instantiation: lex.yy.c:_str_casematchCS Unexecuted instantiation: cfg_pp.c:_str_casematchCS Unexecuted instantiation: shutdown.c:_str_casematchCS Unexecuted instantiation: core_cmds.c:_str_casematchCS Unexecuted instantiation: cachedb.c:_str_casematchCS Unexecuted instantiation: cachedb_id.c:_str_casematchCS |
1106 | | |
1107 | | /* |
1108 | | * compare two str's |
1109 | | */ |
1110 | | static inline int _str_strcmpCC(const str_const *stra, const str_const *strb) |
1111 | 0 | { |
1112 | 0 | int i; |
1113 | 0 | int alen; |
1114 | 0 | int blen; |
1115 | 0 | int minlen; |
1116 | |
|
1117 | 0 | if(stra==NULL || strb==NULL || stra->s ==NULL || strb->s==NULL |
1118 | 0 | || stra->len<0 || strb->len<0) |
1119 | 0 | { |
1120 | | #ifdef EXTRA_DEBUG |
1121 | | LM_DBG("bad parameters\n"); |
1122 | | #endif |
1123 | 0 | return -2; |
1124 | 0 | } |
1125 | | |
1126 | 0 | alen = stra->len; |
1127 | 0 | blen = strb->len; |
1128 | 0 | minlen = (alen < blen ? alen : blen); |
1129 | |
|
1130 | 0 | for (i = 0; i < minlen; i++) { |
1131 | 0 | const char a = stra->s[i]; |
1132 | 0 | const char b = strb->s[i]; |
1133 | 0 | if (a < b) |
1134 | 0 | return -1; |
1135 | 0 | if (a > b) |
1136 | 0 | return 1; |
1137 | 0 | } |
1138 | | |
1139 | 0 | if (alen < blen) |
1140 | 0 | return -1; |
1141 | 0 | else if (alen > blen) |
1142 | 0 | return 1; |
1143 | 0 | else |
1144 | 0 | return 0; |
1145 | 0 | } Unexecuted instantiation: msg_parser.c:_str_strcmpCC Unexecuted instantiation: parse_uri.c:_str_strcmpCC Unexecuted instantiation: parse_fline.c:_str_strcmpCC Unexecuted instantiation: parse_hname2.c:_str_strcmpCC Unexecuted instantiation: parse_content.c:_str_strcmpCC Unexecuted instantiation: hf.c:_str_strcmpCC Unexecuted instantiation: parse_to.c:_str_strcmpCC Unexecuted instantiation: parse_via.c:_str_strcmpCC Unexecuted instantiation: dprint.c:_str_strcmpCC Unexecuted instantiation: pt.c:_str_strcmpCC Unexecuted instantiation: strcommon.c:_str_strcmpCC Unexecuted instantiation: ut.c:_str_strcmpCC Unexecuted instantiation: sdp_ops.c:_str_strcmpCC Unexecuted instantiation: statistics.c:_str_strcmpCC Unexecuted instantiation: pvar.c:_str_strcmpCC Unexecuted instantiation: route.c:_str_strcmpCC Unexecuted instantiation: socket_info.c:_str_strcmpCC Unexecuted instantiation: ipc.c:_str_strcmpCC Unexecuted instantiation: core_stats.c:_str_strcmpCC Unexecuted instantiation: route_struct.c:_str_strcmpCC Unexecuted instantiation: dset.c:_str_strcmpCC Unexecuted instantiation: pt_scaling.c:_str_strcmpCC Unexecuted instantiation: pt_load.c:_str_strcmpCC Unexecuted instantiation: sr_module.c:_str_strcmpCC Unexecuted instantiation: action.c:_str_strcmpCC Unexecuted instantiation: flags.c:_str_strcmpCC Unexecuted instantiation: db_insertq.c:_str_strcmpCC Unexecuted instantiation: db.c:_str_strcmpCC Unexecuted instantiation: proto_tcp.c:_str_strcmpCC Unexecuted instantiation: proto_udp.c:_str_strcmpCC Unexecuted instantiation: trans.c:_str_strcmpCC Unexecuted instantiation: net_tcp_proc.c:_str_strcmpCC Unexecuted instantiation: net_tcp.c:_str_strcmpCC Unexecuted instantiation: tcp_common.c:_str_strcmpCC Unexecuted instantiation: net_udp.c:_str_strcmpCC Unexecuted instantiation: tcp_conn_profile.c:_str_strcmpCC Unexecuted instantiation: trans_trace.c:_str_strcmpCC Unexecuted instantiation: net_tcp_report.c:_str_strcmpCC Unexecuted instantiation: mi.c:_str_strcmpCC Unexecuted instantiation: item.c:_str_strcmpCC Unexecuted instantiation: sdp.c:_str_strcmpCC Unexecuted instantiation: sdp_helpr_funcs.c:_str_strcmpCC Unexecuted instantiation: digest_parser.c:_str_strcmpCC Unexecuted instantiation: param_parser.c:_str_strcmpCC Unexecuted instantiation: parse_contact.c:_str_strcmpCC Unexecuted instantiation: parse_body.c:_str_strcmpCC Unexecuted instantiation: parse_security.c:_str_strcmpCC Unexecuted instantiation: parse_call_info.c:_str_strcmpCC Unexecuted instantiation: parse_event.c:_str_strcmpCC Unexecuted instantiation: parse_disposition.c:_str_strcmpCC Unexecuted instantiation: parse_authenticate.c:_str_strcmpCC Unexecuted instantiation: parser_f.c:_str_strcmpCC Unexecuted instantiation: parse_rpid.c:_str_strcmpCC Unexecuted instantiation: parse_ppi.c:_str_strcmpCC Unexecuted instantiation: parse_fcaps.c:_str_strcmpCC Unexecuted instantiation: parse_rr.c:_str_strcmpCC Unexecuted instantiation: parse_param.c:_str_strcmpCC Unexecuted instantiation: parse_diversion.c:_str_strcmpCC Unexecuted instantiation: parse_nameaddr.c:_str_strcmpCC Unexecuted instantiation: parse_expires.c:_str_strcmpCC Unexecuted instantiation: parse_refer_to.c:_str_strcmpCC Unexecuted instantiation: parse_from.c:_str_strcmpCC Unexecuted instantiation: parse_pai.c:_str_strcmpCC Unexecuted instantiation: event_interface.c:_str_strcmpCC Unexecuted instantiation: receive.c:_str_strcmpCC Unexecuted instantiation: ip_addr.c:_str_strcmpCC Unexecuted instantiation: async.c:_str_strcmpCC Unexecuted instantiation: daemonize.c:_str_strcmpCC Unexecuted instantiation: timer.c:_str_strcmpCC Unexecuted instantiation: trace_api.c:_str_strcmpCC Unexecuted instantiation: mod_fix.c:_str_strcmpCC Unexecuted instantiation: reactor.c:_str_strcmpCC Unexecuted instantiation: forward.c:_str_strcmpCC Unexecuted instantiation: xlog.c:_str_strcmpCC Unexecuted instantiation: blacklists.c:_str_strcmpCC Unexecuted instantiation: usr_avp.c:_str_strcmpCC Unexecuted instantiation: resolve.c:_str_strcmpCC Unexecuted instantiation: io_wait.c:_str_strcmpCC Unexecuted instantiation: transformations.c:_str_strcmpCC Unexecuted instantiation: sr_module_deps.c:_str_strcmpCC Unexecuted instantiation: cfg_reload.c:_str_strcmpCC Unexecuted instantiation: time_rec.c:_str_strcmpCC Unexecuted instantiation: status_report.c:_str_strcmpCC Unexecuted instantiation: signals.c:_str_strcmpCC Unexecuted instantiation: db_id.c:_str_strcmpCC Unexecuted instantiation: csv.c:_str_strcmpCC Unexecuted instantiation: msg_translator.c:_str_strcmpCC Unexecuted instantiation: md5utils.c:_str_strcmpCC Unexecuted instantiation: cfg.tab.c:_str_strcmpCC Unexecuted instantiation: modparam.c:_str_strcmpCC Unexecuted instantiation: crc.c:_str_strcmpCC Unexecuted instantiation: lex.yy.c:_str_strcmpCC Unexecuted instantiation: cfg_pp.c:_str_strcmpCC Unexecuted instantiation: shutdown.c:_str_strcmpCC Unexecuted instantiation: core_cmds.c:_str_strcmpCC Unexecuted instantiation: cachedb.c:_str_strcmpCC Unexecuted instantiation: cachedb_id.c:_str_strcmpCC |
1146 | | static inline int _str_strcmpSS(const str *a, const str *b) |
1147 | 0 | { |
1148 | 0 | return _str_strcmpCC(str2const(a), str2const(b)); |
1149 | 0 | } Unexecuted instantiation: msg_parser.c:_str_strcmpSS Unexecuted instantiation: parse_uri.c:_str_strcmpSS Unexecuted instantiation: parse_fline.c:_str_strcmpSS Unexecuted instantiation: parse_hname2.c:_str_strcmpSS Unexecuted instantiation: parse_content.c:_str_strcmpSS Unexecuted instantiation: hf.c:_str_strcmpSS Unexecuted instantiation: parse_to.c:_str_strcmpSS Unexecuted instantiation: parse_via.c:_str_strcmpSS Unexecuted instantiation: dprint.c:_str_strcmpSS Unexecuted instantiation: pt.c:_str_strcmpSS Unexecuted instantiation: strcommon.c:_str_strcmpSS Unexecuted instantiation: ut.c:_str_strcmpSS Unexecuted instantiation: sdp_ops.c:_str_strcmpSS Unexecuted instantiation: statistics.c:_str_strcmpSS Unexecuted instantiation: pvar.c:_str_strcmpSS Unexecuted instantiation: route.c:_str_strcmpSS Unexecuted instantiation: socket_info.c:_str_strcmpSS Unexecuted instantiation: ipc.c:_str_strcmpSS Unexecuted instantiation: core_stats.c:_str_strcmpSS Unexecuted instantiation: route_struct.c:_str_strcmpSS Unexecuted instantiation: dset.c:_str_strcmpSS Unexecuted instantiation: pt_scaling.c:_str_strcmpSS Unexecuted instantiation: pt_load.c:_str_strcmpSS Unexecuted instantiation: sr_module.c:_str_strcmpSS Unexecuted instantiation: action.c:_str_strcmpSS Unexecuted instantiation: flags.c:_str_strcmpSS Unexecuted instantiation: db_insertq.c:_str_strcmpSS Unexecuted instantiation: db.c:_str_strcmpSS Unexecuted instantiation: proto_tcp.c:_str_strcmpSS Unexecuted instantiation: proto_udp.c:_str_strcmpSS Unexecuted instantiation: trans.c:_str_strcmpSS Unexecuted instantiation: net_tcp_proc.c:_str_strcmpSS Unexecuted instantiation: net_tcp.c:_str_strcmpSS Unexecuted instantiation: tcp_common.c:_str_strcmpSS Unexecuted instantiation: net_udp.c:_str_strcmpSS Unexecuted instantiation: tcp_conn_profile.c:_str_strcmpSS Unexecuted instantiation: trans_trace.c:_str_strcmpSS Unexecuted instantiation: net_tcp_report.c:_str_strcmpSS Unexecuted instantiation: mi.c:_str_strcmpSS Unexecuted instantiation: item.c:_str_strcmpSS Unexecuted instantiation: sdp.c:_str_strcmpSS Unexecuted instantiation: sdp_helpr_funcs.c:_str_strcmpSS Unexecuted instantiation: digest_parser.c:_str_strcmpSS Unexecuted instantiation: param_parser.c:_str_strcmpSS Unexecuted instantiation: parse_contact.c:_str_strcmpSS Unexecuted instantiation: parse_body.c:_str_strcmpSS Unexecuted instantiation: parse_security.c:_str_strcmpSS Unexecuted instantiation: parse_call_info.c:_str_strcmpSS Unexecuted instantiation: parse_event.c:_str_strcmpSS Unexecuted instantiation: parse_disposition.c:_str_strcmpSS Unexecuted instantiation: parse_authenticate.c:_str_strcmpSS Unexecuted instantiation: parser_f.c:_str_strcmpSS Unexecuted instantiation: parse_rpid.c:_str_strcmpSS Unexecuted instantiation: parse_ppi.c:_str_strcmpSS Unexecuted instantiation: parse_fcaps.c:_str_strcmpSS Unexecuted instantiation: parse_rr.c:_str_strcmpSS Unexecuted instantiation: parse_param.c:_str_strcmpSS Unexecuted instantiation: parse_diversion.c:_str_strcmpSS Unexecuted instantiation: parse_nameaddr.c:_str_strcmpSS Unexecuted instantiation: parse_expires.c:_str_strcmpSS Unexecuted instantiation: parse_refer_to.c:_str_strcmpSS Unexecuted instantiation: parse_from.c:_str_strcmpSS Unexecuted instantiation: parse_pai.c:_str_strcmpSS Unexecuted instantiation: event_interface.c:_str_strcmpSS Unexecuted instantiation: receive.c:_str_strcmpSS Unexecuted instantiation: ip_addr.c:_str_strcmpSS Unexecuted instantiation: async.c:_str_strcmpSS Unexecuted instantiation: daemonize.c:_str_strcmpSS Unexecuted instantiation: timer.c:_str_strcmpSS Unexecuted instantiation: trace_api.c:_str_strcmpSS Unexecuted instantiation: mod_fix.c:_str_strcmpSS Unexecuted instantiation: reactor.c:_str_strcmpSS Unexecuted instantiation: forward.c:_str_strcmpSS Unexecuted instantiation: xlog.c:_str_strcmpSS Unexecuted instantiation: blacklists.c:_str_strcmpSS Unexecuted instantiation: usr_avp.c:_str_strcmpSS Unexecuted instantiation: resolve.c:_str_strcmpSS Unexecuted instantiation: io_wait.c:_str_strcmpSS Unexecuted instantiation: transformations.c:_str_strcmpSS Unexecuted instantiation: sr_module_deps.c:_str_strcmpSS Unexecuted instantiation: cfg_reload.c:_str_strcmpSS Unexecuted instantiation: time_rec.c:_str_strcmpSS Unexecuted instantiation: status_report.c:_str_strcmpSS Unexecuted instantiation: signals.c:_str_strcmpSS Unexecuted instantiation: db_id.c:_str_strcmpSS Unexecuted instantiation: csv.c:_str_strcmpSS Unexecuted instantiation: msg_translator.c:_str_strcmpSS Unexecuted instantiation: md5utils.c:_str_strcmpSS Unexecuted instantiation: cfg.tab.c:_str_strcmpSS Unexecuted instantiation: modparam.c:_str_strcmpSS Unexecuted instantiation: crc.c:_str_strcmpSS Unexecuted instantiation: lex.yy.c:_str_strcmpSS Unexecuted instantiation: cfg_pp.c:_str_strcmpSS Unexecuted instantiation: shutdown.c:_str_strcmpSS Unexecuted instantiation: core_cmds.c:_str_strcmpSS Unexecuted instantiation: cachedb.c:_str_strcmpSS Unexecuted instantiation: cachedb_id.c:_str_strcmpSS |
1150 | | static inline int _str_strcmpSC(const str *a, const str_const *b) |
1151 | 0 | { |
1152 | 0 | return _str_strcmpCC(str2const(a), b); |
1153 | 0 | } Unexecuted instantiation: msg_parser.c:_str_strcmpSC Unexecuted instantiation: parse_uri.c:_str_strcmpSC Unexecuted instantiation: parse_fline.c:_str_strcmpSC Unexecuted instantiation: parse_hname2.c:_str_strcmpSC Unexecuted instantiation: parse_content.c:_str_strcmpSC Unexecuted instantiation: hf.c:_str_strcmpSC Unexecuted instantiation: parse_to.c:_str_strcmpSC Unexecuted instantiation: parse_via.c:_str_strcmpSC Unexecuted instantiation: dprint.c:_str_strcmpSC Unexecuted instantiation: pt.c:_str_strcmpSC Unexecuted instantiation: strcommon.c:_str_strcmpSC Unexecuted instantiation: ut.c:_str_strcmpSC Unexecuted instantiation: sdp_ops.c:_str_strcmpSC Unexecuted instantiation: statistics.c:_str_strcmpSC Unexecuted instantiation: pvar.c:_str_strcmpSC Unexecuted instantiation: route.c:_str_strcmpSC Unexecuted instantiation: socket_info.c:_str_strcmpSC Unexecuted instantiation: ipc.c:_str_strcmpSC Unexecuted instantiation: core_stats.c:_str_strcmpSC Unexecuted instantiation: route_struct.c:_str_strcmpSC Unexecuted instantiation: dset.c:_str_strcmpSC Unexecuted instantiation: pt_scaling.c:_str_strcmpSC Unexecuted instantiation: pt_load.c:_str_strcmpSC Unexecuted instantiation: sr_module.c:_str_strcmpSC Unexecuted instantiation: action.c:_str_strcmpSC Unexecuted instantiation: flags.c:_str_strcmpSC Unexecuted instantiation: db_insertq.c:_str_strcmpSC Unexecuted instantiation: db.c:_str_strcmpSC Unexecuted instantiation: proto_tcp.c:_str_strcmpSC Unexecuted instantiation: proto_udp.c:_str_strcmpSC Unexecuted instantiation: trans.c:_str_strcmpSC Unexecuted instantiation: net_tcp_proc.c:_str_strcmpSC Unexecuted instantiation: net_tcp.c:_str_strcmpSC Unexecuted instantiation: tcp_common.c:_str_strcmpSC Unexecuted instantiation: net_udp.c:_str_strcmpSC Unexecuted instantiation: tcp_conn_profile.c:_str_strcmpSC Unexecuted instantiation: trans_trace.c:_str_strcmpSC Unexecuted instantiation: net_tcp_report.c:_str_strcmpSC Unexecuted instantiation: mi.c:_str_strcmpSC Unexecuted instantiation: item.c:_str_strcmpSC Unexecuted instantiation: sdp.c:_str_strcmpSC Unexecuted instantiation: sdp_helpr_funcs.c:_str_strcmpSC Unexecuted instantiation: digest_parser.c:_str_strcmpSC Unexecuted instantiation: param_parser.c:_str_strcmpSC Unexecuted instantiation: parse_contact.c:_str_strcmpSC Unexecuted instantiation: parse_body.c:_str_strcmpSC Unexecuted instantiation: parse_security.c:_str_strcmpSC Unexecuted instantiation: parse_call_info.c:_str_strcmpSC Unexecuted instantiation: parse_event.c:_str_strcmpSC Unexecuted instantiation: parse_disposition.c:_str_strcmpSC Unexecuted instantiation: parse_authenticate.c:_str_strcmpSC Unexecuted instantiation: parser_f.c:_str_strcmpSC Unexecuted instantiation: parse_rpid.c:_str_strcmpSC Unexecuted instantiation: parse_ppi.c:_str_strcmpSC Unexecuted instantiation: parse_fcaps.c:_str_strcmpSC Unexecuted instantiation: parse_rr.c:_str_strcmpSC Unexecuted instantiation: parse_param.c:_str_strcmpSC Unexecuted instantiation: parse_diversion.c:_str_strcmpSC Unexecuted instantiation: parse_nameaddr.c:_str_strcmpSC Unexecuted instantiation: parse_expires.c:_str_strcmpSC Unexecuted instantiation: parse_refer_to.c:_str_strcmpSC Unexecuted instantiation: parse_from.c:_str_strcmpSC Unexecuted instantiation: parse_pai.c:_str_strcmpSC Unexecuted instantiation: event_interface.c:_str_strcmpSC Unexecuted instantiation: receive.c:_str_strcmpSC Unexecuted instantiation: ip_addr.c:_str_strcmpSC Unexecuted instantiation: async.c:_str_strcmpSC Unexecuted instantiation: daemonize.c:_str_strcmpSC Unexecuted instantiation: timer.c:_str_strcmpSC Unexecuted instantiation: trace_api.c:_str_strcmpSC Unexecuted instantiation: mod_fix.c:_str_strcmpSC Unexecuted instantiation: reactor.c:_str_strcmpSC Unexecuted instantiation: forward.c:_str_strcmpSC Unexecuted instantiation: xlog.c:_str_strcmpSC Unexecuted instantiation: blacklists.c:_str_strcmpSC Unexecuted instantiation: usr_avp.c:_str_strcmpSC Unexecuted instantiation: resolve.c:_str_strcmpSC Unexecuted instantiation: io_wait.c:_str_strcmpSC Unexecuted instantiation: transformations.c:_str_strcmpSC Unexecuted instantiation: sr_module_deps.c:_str_strcmpSC Unexecuted instantiation: cfg_reload.c:_str_strcmpSC Unexecuted instantiation: time_rec.c:_str_strcmpSC Unexecuted instantiation: status_report.c:_str_strcmpSC Unexecuted instantiation: signals.c:_str_strcmpSC Unexecuted instantiation: db_id.c:_str_strcmpSC Unexecuted instantiation: csv.c:_str_strcmpSC Unexecuted instantiation: msg_translator.c:_str_strcmpSC Unexecuted instantiation: md5utils.c:_str_strcmpSC Unexecuted instantiation: cfg.tab.c:_str_strcmpSC Unexecuted instantiation: modparam.c:_str_strcmpSC Unexecuted instantiation: crc.c:_str_strcmpSC Unexecuted instantiation: lex.yy.c:_str_strcmpSC Unexecuted instantiation: cfg_pp.c:_str_strcmpSC Unexecuted instantiation: shutdown.c:_str_strcmpSC Unexecuted instantiation: core_cmds.c:_str_strcmpSC Unexecuted instantiation: cachedb.c:_str_strcmpSC Unexecuted instantiation: cachedb_id.c:_str_strcmpSC |
1154 | | static inline int _str_strcmpCS(const str_const *a, const str *b) |
1155 | 0 | { |
1156 | 0 | return _str_strcmpCC(a, str2const(b)); |
1157 | 0 | } Unexecuted instantiation: msg_parser.c:_str_strcmpCS Unexecuted instantiation: parse_uri.c:_str_strcmpCS Unexecuted instantiation: parse_fline.c:_str_strcmpCS Unexecuted instantiation: parse_hname2.c:_str_strcmpCS Unexecuted instantiation: parse_content.c:_str_strcmpCS Unexecuted instantiation: hf.c:_str_strcmpCS Unexecuted instantiation: parse_to.c:_str_strcmpCS Unexecuted instantiation: parse_via.c:_str_strcmpCS Unexecuted instantiation: dprint.c:_str_strcmpCS Unexecuted instantiation: pt.c:_str_strcmpCS Unexecuted instantiation: strcommon.c:_str_strcmpCS Unexecuted instantiation: ut.c:_str_strcmpCS Unexecuted instantiation: sdp_ops.c:_str_strcmpCS Unexecuted instantiation: statistics.c:_str_strcmpCS Unexecuted instantiation: pvar.c:_str_strcmpCS Unexecuted instantiation: route.c:_str_strcmpCS Unexecuted instantiation: socket_info.c:_str_strcmpCS Unexecuted instantiation: ipc.c:_str_strcmpCS Unexecuted instantiation: core_stats.c:_str_strcmpCS Unexecuted instantiation: route_struct.c:_str_strcmpCS Unexecuted instantiation: dset.c:_str_strcmpCS Unexecuted instantiation: pt_scaling.c:_str_strcmpCS Unexecuted instantiation: pt_load.c:_str_strcmpCS Unexecuted instantiation: sr_module.c:_str_strcmpCS Unexecuted instantiation: action.c:_str_strcmpCS Unexecuted instantiation: flags.c:_str_strcmpCS Unexecuted instantiation: db_insertq.c:_str_strcmpCS Unexecuted instantiation: db.c:_str_strcmpCS Unexecuted instantiation: proto_tcp.c:_str_strcmpCS Unexecuted instantiation: proto_udp.c:_str_strcmpCS Unexecuted instantiation: trans.c:_str_strcmpCS Unexecuted instantiation: net_tcp_proc.c:_str_strcmpCS Unexecuted instantiation: net_tcp.c:_str_strcmpCS Unexecuted instantiation: tcp_common.c:_str_strcmpCS Unexecuted instantiation: net_udp.c:_str_strcmpCS Unexecuted instantiation: tcp_conn_profile.c:_str_strcmpCS Unexecuted instantiation: trans_trace.c:_str_strcmpCS Unexecuted instantiation: net_tcp_report.c:_str_strcmpCS Unexecuted instantiation: mi.c:_str_strcmpCS Unexecuted instantiation: item.c:_str_strcmpCS Unexecuted instantiation: sdp.c:_str_strcmpCS Unexecuted instantiation: sdp_helpr_funcs.c:_str_strcmpCS Unexecuted instantiation: digest_parser.c:_str_strcmpCS Unexecuted instantiation: param_parser.c:_str_strcmpCS Unexecuted instantiation: parse_contact.c:_str_strcmpCS Unexecuted instantiation: parse_body.c:_str_strcmpCS Unexecuted instantiation: parse_security.c:_str_strcmpCS Unexecuted instantiation: parse_call_info.c:_str_strcmpCS Unexecuted instantiation: parse_event.c:_str_strcmpCS Unexecuted instantiation: parse_disposition.c:_str_strcmpCS Unexecuted instantiation: parse_authenticate.c:_str_strcmpCS Unexecuted instantiation: parser_f.c:_str_strcmpCS Unexecuted instantiation: parse_rpid.c:_str_strcmpCS Unexecuted instantiation: parse_ppi.c:_str_strcmpCS Unexecuted instantiation: parse_fcaps.c:_str_strcmpCS Unexecuted instantiation: parse_rr.c:_str_strcmpCS Unexecuted instantiation: parse_param.c:_str_strcmpCS Unexecuted instantiation: parse_diversion.c:_str_strcmpCS Unexecuted instantiation: parse_nameaddr.c:_str_strcmpCS Unexecuted instantiation: parse_expires.c:_str_strcmpCS Unexecuted instantiation: parse_refer_to.c:_str_strcmpCS Unexecuted instantiation: parse_from.c:_str_strcmpCS Unexecuted instantiation: parse_pai.c:_str_strcmpCS Unexecuted instantiation: event_interface.c:_str_strcmpCS Unexecuted instantiation: receive.c:_str_strcmpCS Unexecuted instantiation: ip_addr.c:_str_strcmpCS Unexecuted instantiation: async.c:_str_strcmpCS Unexecuted instantiation: daemonize.c:_str_strcmpCS Unexecuted instantiation: timer.c:_str_strcmpCS Unexecuted instantiation: trace_api.c:_str_strcmpCS Unexecuted instantiation: mod_fix.c:_str_strcmpCS Unexecuted instantiation: reactor.c:_str_strcmpCS Unexecuted instantiation: forward.c:_str_strcmpCS Unexecuted instantiation: xlog.c:_str_strcmpCS Unexecuted instantiation: blacklists.c:_str_strcmpCS Unexecuted instantiation: usr_avp.c:_str_strcmpCS Unexecuted instantiation: resolve.c:_str_strcmpCS Unexecuted instantiation: io_wait.c:_str_strcmpCS Unexecuted instantiation: transformations.c:_str_strcmpCS Unexecuted instantiation: sr_module_deps.c:_str_strcmpCS Unexecuted instantiation: cfg_reload.c:_str_strcmpCS Unexecuted instantiation: time_rec.c:_str_strcmpCS Unexecuted instantiation: status_report.c:_str_strcmpCS Unexecuted instantiation: signals.c:_str_strcmpCS Unexecuted instantiation: db_id.c:_str_strcmpCS Unexecuted instantiation: csv.c:_str_strcmpCS Unexecuted instantiation: msg_translator.c:_str_strcmpCS Unexecuted instantiation: md5utils.c:_str_strcmpCS Unexecuted instantiation: cfg.tab.c:_str_strcmpCS Unexecuted instantiation: modparam.c:_str_strcmpCS Unexecuted instantiation: crc.c:_str_strcmpCS Unexecuted instantiation: lex.yy.c:_str_strcmpCS Unexecuted instantiation: cfg_pp.c:_str_strcmpCS Unexecuted instantiation: shutdown.c:_str_strcmpCS Unexecuted instantiation: core_cmds.c:_str_strcmpCS Unexecuted instantiation: cachedb.c:_str_strcmpCS Unexecuted instantiation: cachedb_id.c:_str_strcmpCS |
1158 | | |
1159 | | /* |
1160 | | * compares a str with a const null terminated string |
1161 | | */ |
1162 | | static inline int str_match_nt(const str *a, const char *b) |
1163 | 0 | { |
1164 | 0 | return a->len == strlen(b) && !memcmp(a->s, b, a->len); |
1165 | 0 | } Unexecuted instantiation: msg_parser.c:str_match_nt Unexecuted instantiation: parse_uri.c:str_match_nt Unexecuted instantiation: parse_fline.c:str_match_nt Unexecuted instantiation: parse_hname2.c:str_match_nt Unexecuted instantiation: parse_content.c:str_match_nt Unexecuted instantiation: hf.c:str_match_nt Unexecuted instantiation: parse_to.c:str_match_nt Unexecuted instantiation: parse_via.c:str_match_nt Unexecuted instantiation: dprint.c:str_match_nt Unexecuted instantiation: pt.c:str_match_nt Unexecuted instantiation: strcommon.c:str_match_nt Unexecuted instantiation: ut.c:str_match_nt Unexecuted instantiation: sdp_ops.c:str_match_nt Unexecuted instantiation: statistics.c:str_match_nt Unexecuted instantiation: pvar.c:str_match_nt Unexecuted instantiation: route.c:str_match_nt Unexecuted instantiation: socket_info.c:str_match_nt Unexecuted instantiation: ipc.c:str_match_nt Unexecuted instantiation: core_stats.c:str_match_nt Unexecuted instantiation: route_struct.c:str_match_nt Unexecuted instantiation: dset.c:str_match_nt Unexecuted instantiation: pt_scaling.c:str_match_nt Unexecuted instantiation: pt_load.c:str_match_nt Unexecuted instantiation: sr_module.c:str_match_nt Unexecuted instantiation: action.c:str_match_nt Unexecuted instantiation: flags.c:str_match_nt Unexecuted instantiation: db_insertq.c:str_match_nt Unexecuted instantiation: db.c:str_match_nt Unexecuted instantiation: proto_tcp.c:str_match_nt Unexecuted instantiation: proto_udp.c:str_match_nt Unexecuted instantiation: trans.c:str_match_nt Unexecuted instantiation: net_tcp_proc.c:str_match_nt Unexecuted instantiation: net_tcp.c:str_match_nt Unexecuted instantiation: tcp_common.c:str_match_nt Unexecuted instantiation: net_udp.c:str_match_nt Unexecuted instantiation: tcp_conn_profile.c:str_match_nt Unexecuted instantiation: trans_trace.c:str_match_nt Unexecuted instantiation: net_tcp_report.c:str_match_nt Unexecuted instantiation: mi.c:str_match_nt Unexecuted instantiation: item.c:str_match_nt Unexecuted instantiation: sdp.c:str_match_nt Unexecuted instantiation: sdp_helpr_funcs.c:str_match_nt Unexecuted instantiation: digest_parser.c:str_match_nt Unexecuted instantiation: param_parser.c:str_match_nt Unexecuted instantiation: parse_contact.c:str_match_nt Unexecuted instantiation: parse_body.c:str_match_nt Unexecuted instantiation: parse_security.c:str_match_nt Unexecuted instantiation: parse_call_info.c:str_match_nt Unexecuted instantiation: parse_event.c:str_match_nt Unexecuted instantiation: parse_disposition.c:str_match_nt Unexecuted instantiation: parse_authenticate.c:str_match_nt Unexecuted instantiation: parser_f.c:str_match_nt Unexecuted instantiation: parse_rpid.c:str_match_nt Unexecuted instantiation: parse_ppi.c:str_match_nt Unexecuted instantiation: parse_fcaps.c:str_match_nt Unexecuted instantiation: parse_rr.c:str_match_nt Unexecuted instantiation: parse_param.c:str_match_nt Unexecuted instantiation: parse_diversion.c:str_match_nt Unexecuted instantiation: parse_nameaddr.c:str_match_nt Unexecuted instantiation: parse_expires.c:str_match_nt Unexecuted instantiation: parse_refer_to.c:str_match_nt Unexecuted instantiation: parse_from.c:str_match_nt Unexecuted instantiation: parse_pai.c:str_match_nt Unexecuted instantiation: event_interface.c:str_match_nt Unexecuted instantiation: receive.c:str_match_nt Unexecuted instantiation: ip_addr.c:str_match_nt Unexecuted instantiation: async.c:str_match_nt Unexecuted instantiation: daemonize.c:str_match_nt Unexecuted instantiation: timer.c:str_match_nt Unexecuted instantiation: trace_api.c:str_match_nt Unexecuted instantiation: mod_fix.c:str_match_nt Unexecuted instantiation: reactor.c:str_match_nt Unexecuted instantiation: forward.c:str_match_nt Unexecuted instantiation: xlog.c:str_match_nt Unexecuted instantiation: blacklists.c:str_match_nt Unexecuted instantiation: usr_avp.c:str_match_nt Unexecuted instantiation: resolve.c:str_match_nt Unexecuted instantiation: io_wait.c:str_match_nt Unexecuted instantiation: transformations.c:str_match_nt Unexecuted instantiation: sr_module_deps.c:str_match_nt Unexecuted instantiation: cfg_reload.c:str_match_nt Unexecuted instantiation: time_rec.c:str_match_nt Unexecuted instantiation: status_report.c:str_match_nt Unexecuted instantiation: signals.c:str_match_nt Unexecuted instantiation: db_id.c:str_match_nt Unexecuted instantiation: csv.c:str_match_nt Unexecuted instantiation: msg_translator.c:str_match_nt Unexecuted instantiation: md5utils.c:str_match_nt Unexecuted instantiation: cfg.tab.c:str_match_nt Unexecuted instantiation: modparam.c:str_match_nt Unexecuted instantiation: crc.c:str_match_nt Unexecuted instantiation: lex.yy.c:str_match_nt Unexecuted instantiation: cfg_pp.c:str_match_nt Unexecuted instantiation: shutdown.c:str_match_nt Unexecuted instantiation: core_cmds.c:str_match_nt Unexecuted instantiation: cachedb.c:str_match_nt Unexecuted instantiation: cachedb_id.c:str_match_nt |
1166 | | |
1167 | | /* |
1168 | | * compares a str with a const null terminated string, case-insensitive |
1169 | | */ |
1170 | | static inline int str_casematch_nt(const str *a, const char *b) |
1171 | 0 | { |
1172 | 0 | return a->len == strlen(b) && !strncasecmp(a->s, b, a->len); |
1173 | 0 | } Unexecuted instantiation: msg_parser.c:str_casematch_nt Unexecuted instantiation: parse_uri.c:str_casematch_nt Unexecuted instantiation: parse_fline.c:str_casematch_nt Unexecuted instantiation: parse_hname2.c:str_casematch_nt Unexecuted instantiation: parse_content.c:str_casematch_nt Unexecuted instantiation: hf.c:str_casematch_nt Unexecuted instantiation: parse_to.c:str_casematch_nt Unexecuted instantiation: parse_via.c:str_casematch_nt Unexecuted instantiation: dprint.c:str_casematch_nt Unexecuted instantiation: pt.c:str_casematch_nt Unexecuted instantiation: strcommon.c:str_casematch_nt Unexecuted instantiation: ut.c:str_casematch_nt Unexecuted instantiation: sdp_ops.c:str_casematch_nt Unexecuted instantiation: statistics.c:str_casematch_nt Unexecuted instantiation: pvar.c:str_casematch_nt Unexecuted instantiation: route.c:str_casematch_nt Unexecuted instantiation: socket_info.c:str_casematch_nt Unexecuted instantiation: ipc.c:str_casematch_nt Unexecuted instantiation: core_stats.c:str_casematch_nt Unexecuted instantiation: route_struct.c:str_casematch_nt Unexecuted instantiation: dset.c:str_casematch_nt Unexecuted instantiation: pt_scaling.c:str_casematch_nt Unexecuted instantiation: pt_load.c:str_casematch_nt Unexecuted instantiation: sr_module.c:str_casematch_nt Unexecuted instantiation: action.c:str_casematch_nt Unexecuted instantiation: flags.c:str_casematch_nt Unexecuted instantiation: db_insertq.c:str_casematch_nt Unexecuted instantiation: db.c:str_casematch_nt Unexecuted instantiation: proto_tcp.c:str_casematch_nt Unexecuted instantiation: proto_udp.c:str_casematch_nt Unexecuted instantiation: trans.c:str_casematch_nt Unexecuted instantiation: net_tcp_proc.c:str_casematch_nt Unexecuted instantiation: net_tcp.c:str_casematch_nt Unexecuted instantiation: tcp_common.c:str_casematch_nt Unexecuted instantiation: net_udp.c:str_casematch_nt Unexecuted instantiation: tcp_conn_profile.c:str_casematch_nt Unexecuted instantiation: trans_trace.c:str_casematch_nt Unexecuted instantiation: net_tcp_report.c:str_casematch_nt Unexecuted instantiation: mi.c:str_casematch_nt Unexecuted instantiation: item.c:str_casematch_nt Unexecuted instantiation: sdp.c:str_casematch_nt Unexecuted instantiation: sdp_helpr_funcs.c:str_casematch_nt Unexecuted instantiation: digest_parser.c:str_casematch_nt Unexecuted instantiation: param_parser.c:str_casematch_nt Unexecuted instantiation: parse_contact.c:str_casematch_nt Unexecuted instantiation: parse_body.c:str_casematch_nt Unexecuted instantiation: parse_security.c:str_casematch_nt Unexecuted instantiation: parse_call_info.c:str_casematch_nt Unexecuted instantiation: parse_event.c:str_casematch_nt Unexecuted instantiation: parse_disposition.c:str_casematch_nt Unexecuted instantiation: parse_authenticate.c:str_casematch_nt Unexecuted instantiation: parser_f.c:str_casematch_nt Unexecuted instantiation: parse_rpid.c:str_casematch_nt Unexecuted instantiation: parse_ppi.c:str_casematch_nt Unexecuted instantiation: parse_fcaps.c:str_casematch_nt Unexecuted instantiation: parse_rr.c:str_casematch_nt Unexecuted instantiation: parse_param.c:str_casematch_nt Unexecuted instantiation: parse_diversion.c:str_casematch_nt Unexecuted instantiation: parse_nameaddr.c:str_casematch_nt Unexecuted instantiation: parse_expires.c:str_casematch_nt Unexecuted instantiation: parse_refer_to.c:str_casematch_nt Unexecuted instantiation: parse_from.c:str_casematch_nt Unexecuted instantiation: parse_pai.c:str_casematch_nt Unexecuted instantiation: event_interface.c:str_casematch_nt Unexecuted instantiation: receive.c:str_casematch_nt Unexecuted instantiation: ip_addr.c:str_casematch_nt Unexecuted instantiation: async.c:str_casematch_nt Unexecuted instantiation: daemonize.c:str_casematch_nt Unexecuted instantiation: timer.c:str_casematch_nt Unexecuted instantiation: trace_api.c:str_casematch_nt Unexecuted instantiation: mod_fix.c:str_casematch_nt Unexecuted instantiation: reactor.c:str_casematch_nt Unexecuted instantiation: forward.c:str_casematch_nt Unexecuted instantiation: xlog.c:str_casematch_nt Unexecuted instantiation: blacklists.c:str_casematch_nt Unexecuted instantiation: usr_avp.c:str_casematch_nt Unexecuted instantiation: resolve.c:str_casematch_nt Unexecuted instantiation: io_wait.c:str_casematch_nt Unexecuted instantiation: transformations.c:str_casematch_nt Unexecuted instantiation: sr_module_deps.c:str_casematch_nt Unexecuted instantiation: cfg_reload.c:str_casematch_nt Unexecuted instantiation: time_rec.c:str_casematch_nt Unexecuted instantiation: status_report.c:str_casematch_nt Unexecuted instantiation: signals.c:str_casematch_nt Unexecuted instantiation: db_id.c:str_casematch_nt Unexecuted instantiation: csv.c:str_casematch_nt Unexecuted instantiation: msg_translator.c:str_casematch_nt Unexecuted instantiation: md5utils.c:str_casematch_nt Unexecuted instantiation: cfg.tab.c:str_casematch_nt Unexecuted instantiation: modparam.c:str_casematch_nt Unexecuted instantiation: crc.c:str_casematch_nt Unexecuted instantiation: lex.yy.c:str_casematch_nt Unexecuted instantiation: cfg_pp.c:str_casematch_nt Unexecuted instantiation: shutdown.c:str_casematch_nt Unexecuted instantiation: core_cmds.c:str_casematch_nt Unexecuted instantiation: cachedb.c:str_casematch_nt Unexecuted instantiation: cachedb_id.c:str_casematch_nt |
1174 | | |
1175 | | |
1176 | | /* |
1177 | | * search @strb in @stra, return pointer to 1st occurrence |
1178 | | */ |
1179 | | static inline char* str_strstr(const str *stra, const str *strb) |
1180 | 0 | { |
1181 | 0 | int i; |
1182 | 0 | int len; |
1183 | |
|
1184 | 0 | if (stra==NULL || strb==NULL || stra->s==NULL || strb->s==NULL |
1185 | 0 | || stra->len<=0 || strb->len<=0) { |
1186 | | #ifdef EXTRA_DEBUG |
1187 | | LM_DBG("bad parameters\n"); |
1188 | | #endif |
1189 | 0 | return NULL; |
1190 | 0 | } |
1191 | | |
1192 | 0 | if (strb->len > stra->len) |
1193 | 0 | return NULL; |
1194 | | |
1195 | 0 | len=0; |
1196 | 0 | while (stra->len-len >= strb->len){ |
1197 | 0 | if (stra->s[len] != strb->s[0]) { |
1198 | 0 | len++; |
1199 | 0 | continue; |
1200 | 0 | } |
1201 | | |
1202 | 0 | for (i=1; i<strb->len; i++) |
1203 | 0 | if (stra->s[len+i]!=strb->s[i]) { |
1204 | 0 | len++; |
1205 | 0 | break; |
1206 | 0 | } |
1207 | |
|
1208 | 0 | if (i != strb->len) |
1209 | 0 | continue; |
1210 | | |
1211 | 0 | return stra->s+len; |
1212 | 0 | } |
1213 | | |
1214 | | |
1215 | 0 | return NULL; |
1216 | 0 | } Unexecuted instantiation: msg_parser.c:str_strstr Unexecuted instantiation: parse_uri.c:str_strstr Unexecuted instantiation: parse_fline.c:str_strstr Unexecuted instantiation: parse_hname2.c:str_strstr Unexecuted instantiation: parse_content.c:str_strstr Unexecuted instantiation: hf.c:str_strstr Unexecuted instantiation: parse_to.c:str_strstr Unexecuted instantiation: parse_via.c:str_strstr Unexecuted instantiation: dprint.c:str_strstr Unexecuted instantiation: pt.c:str_strstr Unexecuted instantiation: strcommon.c:str_strstr Unexecuted instantiation: ut.c:str_strstr Unexecuted instantiation: sdp_ops.c:str_strstr Unexecuted instantiation: statistics.c:str_strstr Unexecuted instantiation: pvar.c:str_strstr Unexecuted instantiation: route.c:str_strstr Unexecuted instantiation: socket_info.c:str_strstr Unexecuted instantiation: ipc.c:str_strstr Unexecuted instantiation: core_stats.c:str_strstr Unexecuted instantiation: route_struct.c:str_strstr Unexecuted instantiation: dset.c:str_strstr Unexecuted instantiation: pt_scaling.c:str_strstr Unexecuted instantiation: pt_load.c:str_strstr Unexecuted instantiation: sr_module.c:str_strstr Unexecuted instantiation: action.c:str_strstr Unexecuted instantiation: flags.c:str_strstr Unexecuted instantiation: db_insertq.c:str_strstr Unexecuted instantiation: db.c:str_strstr Unexecuted instantiation: proto_tcp.c:str_strstr Unexecuted instantiation: proto_udp.c:str_strstr Unexecuted instantiation: trans.c:str_strstr Unexecuted instantiation: net_tcp_proc.c:str_strstr Unexecuted instantiation: net_tcp.c:str_strstr Unexecuted instantiation: tcp_common.c:str_strstr Unexecuted instantiation: net_udp.c:str_strstr Unexecuted instantiation: tcp_conn_profile.c:str_strstr Unexecuted instantiation: trans_trace.c:str_strstr Unexecuted instantiation: net_tcp_report.c:str_strstr Unexecuted instantiation: mi.c:str_strstr Unexecuted instantiation: item.c:str_strstr Unexecuted instantiation: sdp.c:str_strstr Unexecuted instantiation: sdp_helpr_funcs.c:str_strstr Unexecuted instantiation: digest_parser.c:str_strstr Unexecuted instantiation: param_parser.c:str_strstr Unexecuted instantiation: parse_contact.c:str_strstr Unexecuted instantiation: parse_body.c:str_strstr Unexecuted instantiation: parse_security.c:str_strstr Unexecuted instantiation: parse_call_info.c:str_strstr Unexecuted instantiation: parse_event.c:str_strstr Unexecuted instantiation: parse_disposition.c:str_strstr Unexecuted instantiation: parse_authenticate.c:str_strstr Unexecuted instantiation: parser_f.c:str_strstr Unexecuted instantiation: parse_rpid.c:str_strstr Unexecuted instantiation: parse_ppi.c:str_strstr Unexecuted instantiation: parse_fcaps.c:str_strstr Unexecuted instantiation: parse_rr.c:str_strstr Unexecuted instantiation: parse_param.c:str_strstr Unexecuted instantiation: parse_diversion.c:str_strstr Unexecuted instantiation: parse_nameaddr.c:str_strstr Unexecuted instantiation: parse_expires.c:str_strstr Unexecuted instantiation: parse_refer_to.c:str_strstr Unexecuted instantiation: parse_from.c:str_strstr Unexecuted instantiation: parse_pai.c:str_strstr Unexecuted instantiation: event_interface.c:str_strstr Unexecuted instantiation: receive.c:str_strstr Unexecuted instantiation: ip_addr.c:str_strstr Unexecuted instantiation: async.c:str_strstr Unexecuted instantiation: daemonize.c:str_strstr Unexecuted instantiation: timer.c:str_strstr Unexecuted instantiation: trace_api.c:str_strstr Unexecuted instantiation: mod_fix.c:str_strstr Unexecuted instantiation: reactor.c:str_strstr Unexecuted instantiation: forward.c:str_strstr Unexecuted instantiation: xlog.c:str_strstr Unexecuted instantiation: blacklists.c:str_strstr Unexecuted instantiation: usr_avp.c:str_strstr Unexecuted instantiation: resolve.c:str_strstr Unexecuted instantiation: io_wait.c:str_strstr Unexecuted instantiation: transformations.c:str_strstr Unexecuted instantiation: sr_module_deps.c:str_strstr Unexecuted instantiation: cfg_reload.c:str_strstr Unexecuted instantiation: time_rec.c:str_strstr Unexecuted instantiation: status_report.c:str_strstr Unexecuted instantiation: signals.c:str_strstr Unexecuted instantiation: db_id.c:str_strstr Unexecuted instantiation: csv.c:str_strstr Unexecuted instantiation: msg_translator.c:str_strstr Unexecuted instantiation: md5utils.c:str_strstr Unexecuted instantiation: cfg.tab.c:str_strstr Unexecuted instantiation: modparam.c:str_strstr Unexecuted instantiation: crc.c:str_strstr Unexecuted instantiation: lex.yy.c:str_strstr Unexecuted instantiation: cfg_pp.c:str_strstr Unexecuted instantiation: shutdown.c:str_strstr Unexecuted instantiation: core_cmds.c:str_strstr Unexecuted instantiation: cachedb.c:str_strstr Unexecuted instantiation: cachedb_id.c:str_strstr |
1217 | | |
1218 | | /* |
1219 | | * search @strb in @stra ignoring case of both, return pointer to 1st occurrence |
1220 | | */ |
1221 | | static inline char* str_strcasestr(const str *stra, const str *strb) |
1222 | 0 | { |
1223 | 0 | int i; |
1224 | 0 | int len; |
1225 | 0 |
|
1226 | 0 | if (stra==NULL || strb==NULL || stra->s==NULL || strb->s==NULL |
1227 | 0 | || stra->len<=0 || strb->len<=0) { |
1228 | 0 | #ifdef EXTRA_DEBUG |
1229 | 0 | LM_DBG("bad parameters\n"); |
1230 | 0 | #endif |
1231 | 0 | return NULL; |
1232 | 0 | } |
1233 | 0 |
|
1234 | 0 | if (strb->len > stra->len) |
1235 | 0 | return NULL; |
1236 | 0 |
|
1237 | 0 | len=0; |
1238 | 0 | while (stra->len-len >= strb->len){ |
1239 | 0 | if (tolower(stra->s[len]) != tolower(strb->s[0])) { |
1240 | 0 | len++; |
1241 | 0 | continue; |
1242 | 0 | } |
1243 | 0 |
|
1244 | 0 | for (i=1; i<strb->len; i++) |
1245 | 0 | if (tolower(stra->s[len+i])!=tolower(strb->s[i])) { |
1246 | 0 | len++; |
1247 | 0 | break; |
1248 | 0 | } |
1249 | 0 |
|
1250 | 0 | if (i != strb->len) |
1251 | 0 | continue; |
1252 | 0 |
|
1253 | 0 | return stra->s+len; |
1254 | 0 | } |
1255 | 0 |
|
1256 | 0 |
|
1257 | 0 | return NULL; |
1258 | 0 | } Unexecuted instantiation: msg_parser.c:str_strcasestr Unexecuted instantiation: parse_uri.c:str_strcasestr Unexecuted instantiation: parse_fline.c:str_strcasestr Unexecuted instantiation: parse_hname2.c:str_strcasestr Unexecuted instantiation: parse_content.c:str_strcasestr Unexecuted instantiation: hf.c:str_strcasestr Unexecuted instantiation: parse_to.c:str_strcasestr Unexecuted instantiation: parse_via.c:str_strcasestr Unexecuted instantiation: dprint.c:str_strcasestr Unexecuted instantiation: pt.c:str_strcasestr Unexecuted instantiation: strcommon.c:str_strcasestr Unexecuted instantiation: ut.c:str_strcasestr Unexecuted instantiation: sdp_ops.c:str_strcasestr Unexecuted instantiation: statistics.c:str_strcasestr Unexecuted instantiation: pvar.c:str_strcasestr Unexecuted instantiation: route.c:str_strcasestr Unexecuted instantiation: socket_info.c:str_strcasestr Unexecuted instantiation: ipc.c:str_strcasestr Unexecuted instantiation: core_stats.c:str_strcasestr Unexecuted instantiation: route_struct.c:str_strcasestr Unexecuted instantiation: dset.c:str_strcasestr Unexecuted instantiation: pt_scaling.c:str_strcasestr Unexecuted instantiation: pt_load.c:str_strcasestr Unexecuted instantiation: sr_module.c:str_strcasestr Unexecuted instantiation: action.c:str_strcasestr Unexecuted instantiation: flags.c:str_strcasestr Unexecuted instantiation: db_insertq.c:str_strcasestr Unexecuted instantiation: db.c:str_strcasestr Unexecuted instantiation: proto_tcp.c:str_strcasestr Unexecuted instantiation: proto_udp.c:str_strcasestr Unexecuted instantiation: trans.c:str_strcasestr Unexecuted instantiation: net_tcp_proc.c:str_strcasestr Unexecuted instantiation: net_tcp.c:str_strcasestr Unexecuted instantiation: tcp_common.c:str_strcasestr Unexecuted instantiation: net_udp.c:str_strcasestr Unexecuted instantiation: tcp_conn_profile.c:str_strcasestr Unexecuted instantiation: trans_trace.c:str_strcasestr Unexecuted instantiation: net_tcp_report.c:str_strcasestr Unexecuted instantiation: mi.c:str_strcasestr Unexecuted instantiation: item.c:str_strcasestr Unexecuted instantiation: sdp.c:str_strcasestr Unexecuted instantiation: sdp_helpr_funcs.c:str_strcasestr Unexecuted instantiation: digest_parser.c:str_strcasestr Unexecuted instantiation: param_parser.c:str_strcasestr Unexecuted instantiation: parse_contact.c:str_strcasestr Unexecuted instantiation: parse_body.c:str_strcasestr Unexecuted instantiation: parse_security.c:str_strcasestr Unexecuted instantiation: parse_call_info.c:str_strcasestr Unexecuted instantiation: parse_event.c:str_strcasestr Unexecuted instantiation: parse_disposition.c:str_strcasestr Unexecuted instantiation: parse_authenticate.c:str_strcasestr Unexecuted instantiation: parser_f.c:str_strcasestr Unexecuted instantiation: parse_rpid.c:str_strcasestr Unexecuted instantiation: parse_ppi.c:str_strcasestr Unexecuted instantiation: parse_fcaps.c:str_strcasestr Unexecuted instantiation: parse_rr.c:str_strcasestr Unexecuted instantiation: parse_param.c:str_strcasestr Unexecuted instantiation: parse_diversion.c:str_strcasestr Unexecuted instantiation: parse_nameaddr.c:str_strcasestr Unexecuted instantiation: parse_expires.c:str_strcasestr Unexecuted instantiation: parse_refer_to.c:str_strcasestr Unexecuted instantiation: parse_from.c:str_strcasestr Unexecuted instantiation: parse_pai.c:str_strcasestr Unexecuted instantiation: event_interface.c:str_strcasestr Unexecuted instantiation: receive.c:str_strcasestr Unexecuted instantiation: ip_addr.c:str_strcasestr Unexecuted instantiation: async.c:str_strcasestr Unexecuted instantiation: daemonize.c:str_strcasestr Unexecuted instantiation: timer.c:str_strcasestr Unexecuted instantiation: trace_api.c:str_strcasestr Unexecuted instantiation: mod_fix.c:str_strcasestr Unexecuted instantiation: reactor.c:str_strcasestr Unexecuted instantiation: forward.c:str_strcasestr Unexecuted instantiation: xlog.c:str_strcasestr Unexecuted instantiation: blacklists.c:str_strcasestr Unexecuted instantiation: usr_avp.c:str_strcasestr Unexecuted instantiation: resolve.c:str_strcasestr Unexecuted instantiation: io_wait.c:str_strcasestr Unexecuted instantiation: transformations.c:str_strcasestr Unexecuted instantiation: sr_module_deps.c:str_strcasestr Unexecuted instantiation: cfg_reload.c:str_strcasestr Unexecuted instantiation: time_rec.c:str_strcasestr Unexecuted instantiation: status_report.c:str_strcasestr Unexecuted instantiation: signals.c:str_strcasestr Unexecuted instantiation: db_id.c:str_strcasestr Unexecuted instantiation: csv.c:str_strcasestr Unexecuted instantiation: msg_translator.c:str_strcasestr Unexecuted instantiation: md5utils.c:str_strcasestr Unexecuted instantiation: cfg.tab.c:str_strcasestr Unexecuted instantiation: modparam.c:str_strcasestr Unexecuted instantiation: crc.c:str_strcasestr Unexecuted instantiation: lex.yy.c:str_strcasestr Unexecuted instantiation: cfg_pp.c:str_strcasestr Unexecuted instantiation: shutdown.c:str_strcasestr Unexecuted instantiation: core_cmds.c:str_strcasestr Unexecuted instantiation: cachedb.c:str_strcasestr Unexecuted instantiation: cachedb_id.c:str_strcasestr |
1259 | | |
1260 | | /* |
1261 | | * case-insensitive compare n chars of two str's |
1262 | | */ |
1263 | | static inline int str_strncasecmp(const str *stra, const str *strb, int n) |
1264 | 0 | { |
1265 | 0 | int i; |
1266 | 0 |
|
1267 | 0 | if(stra==NULL || strb==NULL || stra->s ==NULL || strb->s==NULL |
1268 | 0 | || stra->len<0 || strb->len<0) |
1269 | 0 | { |
1270 | 0 | #ifdef EXTRA_DEBUG |
1271 | 0 | LM_DBG("bad parameters\n"); |
1272 | 0 | #endif |
1273 | 0 | return -2; |
1274 | 0 | } |
1275 | 0 |
|
1276 | 0 | if (stra->len<n || strb->len<n) { |
1277 | 0 | LM_ERR("input strings don't have at least [n=%d] characters\n", n); |
1278 | 0 | return -2; |
1279 | 0 | } |
1280 | 0 |
|
1281 | 0 | for (i = 0; i < n; i++) { |
1282 | 0 | const char a = tolower(stra->s[i]); |
1283 | 0 | const char b = tolower(strb->s[i]); |
1284 | 0 | if (a < b) |
1285 | 0 | return -1; |
1286 | 0 | if (a > b) |
1287 | 0 | return 1; |
1288 | 0 | } |
1289 | 0 |
|
1290 | 0 | return 0; |
1291 | 0 |
|
1292 | 0 | } Unexecuted instantiation: msg_parser.c:str_strncasecmp Unexecuted instantiation: parse_uri.c:str_strncasecmp Unexecuted instantiation: parse_fline.c:str_strncasecmp Unexecuted instantiation: parse_hname2.c:str_strncasecmp Unexecuted instantiation: parse_content.c:str_strncasecmp Unexecuted instantiation: hf.c:str_strncasecmp Unexecuted instantiation: parse_to.c:str_strncasecmp Unexecuted instantiation: parse_via.c:str_strncasecmp Unexecuted instantiation: dprint.c:str_strncasecmp Unexecuted instantiation: pt.c:str_strncasecmp Unexecuted instantiation: strcommon.c:str_strncasecmp Unexecuted instantiation: ut.c:str_strncasecmp Unexecuted instantiation: sdp_ops.c:str_strncasecmp Unexecuted instantiation: statistics.c:str_strncasecmp Unexecuted instantiation: pvar.c:str_strncasecmp Unexecuted instantiation: route.c:str_strncasecmp Unexecuted instantiation: socket_info.c:str_strncasecmp Unexecuted instantiation: ipc.c:str_strncasecmp Unexecuted instantiation: core_stats.c:str_strncasecmp Unexecuted instantiation: route_struct.c:str_strncasecmp Unexecuted instantiation: dset.c:str_strncasecmp Unexecuted instantiation: pt_scaling.c:str_strncasecmp Unexecuted instantiation: pt_load.c:str_strncasecmp Unexecuted instantiation: sr_module.c:str_strncasecmp Unexecuted instantiation: action.c:str_strncasecmp Unexecuted instantiation: flags.c:str_strncasecmp Unexecuted instantiation: db_insertq.c:str_strncasecmp Unexecuted instantiation: db.c:str_strncasecmp Unexecuted instantiation: proto_tcp.c:str_strncasecmp Unexecuted instantiation: proto_udp.c:str_strncasecmp Unexecuted instantiation: trans.c:str_strncasecmp Unexecuted instantiation: net_tcp_proc.c:str_strncasecmp Unexecuted instantiation: net_tcp.c:str_strncasecmp Unexecuted instantiation: tcp_common.c:str_strncasecmp Unexecuted instantiation: net_udp.c:str_strncasecmp Unexecuted instantiation: tcp_conn_profile.c:str_strncasecmp Unexecuted instantiation: trans_trace.c:str_strncasecmp Unexecuted instantiation: net_tcp_report.c:str_strncasecmp Unexecuted instantiation: mi.c:str_strncasecmp Unexecuted instantiation: item.c:str_strncasecmp Unexecuted instantiation: sdp.c:str_strncasecmp Unexecuted instantiation: sdp_helpr_funcs.c:str_strncasecmp Unexecuted instantiation: digest_parser.c:str_strncasecmp Unexecuted instantiation: param_parser.c:str_strncasecmp Unexecuted instantiation: parse_contact.c:str_strncasecmp Unexecuted instantiation: parse_body.c:str_strncasecmp Unexecuted instantiation: parse_security.c:str_strncasecmp Unexecuted instantiation: parse_call_info.c:str_strncasecmp Unexecuted instantiation: parse_event.c:str_strncasecmp Unexecuted instantiation: parse_disposition.c:str_strncasecmp Unexecuted instantiation: parse_authenticate.c:str_strncasecmp Unexecuted instantiation: parser_f.c:str_strncasecmp Unexecuted instantiation: parse_rpid.c:str_strncasecmp Unexecuted instantiation: parse_ppi.c:str_strncasecmp Unexecuted instantiation: parse_fcaps.c:str_strncasecmp Unexecuted instantiation: parse_rr.c:str_strncasecmp Unexecuted instantiation: parse_param.c:str_strncasecmp Unexecuted instantiation: parse_diversion.c:str_strncasecmp Unexecuted instantiation: parse_nameaddr.c:str_strncasecmp Unexecuted instantiation: parse_expires.c:str_strncasecmp Unexecuted instantiation: parse_refer_to.c:str_strncasecmp Unexecuted instantiation: parse_from.c:str_strncasecmp Unexecuted instantiation: parse_pai.c:str_strncasecmp Unexecuted instantiation: event_interface.c:str_strncasecmp Unexecuted instantiation: receive.c:str_strncasecmp Unexecuted instantiation: ip_addr.c:str_strncasecmp Unexecuted instantiation: async.c:str_strncasecmp Unexecuted instantiation: daemonize.c:str_strncasecmp Unexecuted instantiation: timer.c:str_strncasecmp Unexecuted instantiation: trace_api.c:str_strncasecmp Unexecuted instantiation: mod_fix.c:str_strncasecmp Unexecuted instantiation: reactor.c:str_strncasecmp Unexecuted instantiation: forward.c:str_strncasecmp Unexecuted instantiation: xlog.c:str_strncasecmp Unexecuted instantiation: blacklists.c:str_strncasecmp Unexecuted instantiation: usr_avp.c:str_strncasecmp Unexecuted instantiation: resolve.c:str_strncasecmp Unexecuted instantiation: io_wait.c:str_strncasecmp Unexecuted instantiation: transformations.c:str_strncasecmp Unexecuted instantiation: sr_module_deps.c:str_strncasecmp Unexecuted instantiation: cfg_reload.c:str_strncasecmp Unexecuted instantiation: time_rec.c:str_strncasecmp Unexecuted instantiation: status_report.c:str_strncasecmp Unexecuted instantiation: signals.c:str_strncasecmp Unexecuted instantiation: db_id.c:str_strncasecmp Unexecuted instantiation: csv.c:str_strncasecmp Unexecuted instantiation: msg_translator.c:str_strncasecmp Unexecuted instantiation: md5utils.c:str_strncasecmp Unexecuted instantiation: cfg.tab.c:str_strncasecmp Unexecuted instantiation: modparam.c:str_strncasecmp Unexecuted instantiation: crc.c:str_strncasecmp Unexecuted instantiation: lex.yy.c:str_strncasecmp Unexecuted instantiation: cfg_pp.c:str_strncasecmp Unexecuted instantiation: shutdown.c:str_strncasecmp Unexecuted instantiation: core_cmds.c:str_strncasecmp Unexecuted instantiation: cachedb.c:str_strncasecmp Unexecuted instantiation: cachedb_id.c:str_strncasecmp |
1293 | | |
1294 | | /* |
1295 | | * case-insensitive compare two str's |
1296 | | */ |
1297 | | static inline int str_strcasecmp(const str *stra, const str *strb) |
1298 | 0 | { |
1299 | 0 | int i; |
1300 | 0 | int alen; |
1301 | 0 | int blen; |
1302 | 0 | int minlen; |
1303 | |
|
1304 | 0 | if(stra==NULL || strb==NULL || stra->s ==NULL || strb->s==NULL |
1305 | 0 | || stra->len<0 || strb->len<0) |
1306 | 0 | { |
1307 | | #ifdef EXTRA_DEBUG |
1308 | | LM_DBG("bad parameters\n"); |
1309 | | #endif |
1310 | 0 | return -2; |
1311 | 0 | } |
1312 | 0 | alen = stra->len; |
1313 | 0 | blen = strb->len; |
1314 | 0 | minlen = (alen < blen ? alen : blen); |
1315 | |
|
1316 | 0 | for (i = 0; i < minlen; i++) { |
1317 | 0 | const char a = tolower(stra->s[i]); |
1318 | 0 | const char b = tolower(strb->s[i]); |
1319 | 0 | if (a < b) |
1320 | 0 | return -1; |
1321 | 0 | if (a > b) |
1322 | 0 | return 1; |
1323 | 0 | } |
1324 | 0 | if (alen < blen) |
1325 | 0 | return -1; |
1326 | 0 | else if (alen > blen) |
1327 | 0 | return 1; |
1328 | 0 | else |
1329 | 0 | return 0; |
1330 | 0 | } Unexecuted instantiation: msg_parser.c:str_strcasecmp Unexecuted instantiation: parse_uri.c:str_strcasecmp Unexecuted instantiation: parse_fline.c:str_strcasecmp Unexecuted instantiation: parse_hname2.c:str_strcasecmp Unexecuted instantiation: parse_content.c:str_strcasecmp Unexecuted instantiation: hf.c:str_strcasecmp Unexecuted instantiation: parse_to.c:str_strcasecmp Unexecuted instantiation: parse_via.c:str_strcasecmp Unexecuted instantiation: dprint.c:str_strcasecmp Unexecuted instantiation: pt.c:str_strcasecmp Unexecuted instantiation: strcommon.c:str_strcasecmp Unexecuted instantiation: ut.c:str_strcasecmp Unexecuted instantiation: sdp_ops.c:str_strcasecmp Unexecuted instantiation: statistics.c:str_strcasecmp Unexecuted instantiation: pvar.c:str_strcasecmp Unexecuted instantiation: route.c:str_strcasecmp Unexecuted instantiation: socket_info.c:str_strcasecmp Unexecuted instantiation: ipc.c:str_strcasecmp Unexecuted instantiation: core_stats.c:str_strcasecmp Unexecuted instantiation: route_struct.c:str_strcasecmp Unexecuted instantiation: dset.c:str_strcasecmp Unexecuted instantiation: pt_scaling.c:str_strcasecmp Unexecuted instantiation: pt_load.c:str_strcasecmp Unexecuted instantiation: sr_module.c:str_strcasecmp Unexecuted instantiation: action.c:str_strcasecmp Unexecuted instantiation: flags.c:str_strcasecmp Unexecuted instantiation: db_insertq.c:str_strcasecmp Unexecuted instantiation: db.c:str_strcasecmp Unexecuted instantiation: proto_tcp.c:str_strcasecmp Unexecuted instantiation: proto_udp.c:str_strcasecmp Unexecuted instantiation: trans.c:str_strcasecmp Unexecuted instantiation: net_tcp_proc.c:str_strcasecmp Unexecuted instantiation: net_tcp.c:str_strcasecmp Unexecuted instantiation: tcp_common.c:str_strcasecmp Unexecuted instantiation: net_udp.c:str_strcasecmp Unexecuted instantiation: tcp_conn_profile.c:str_strcasecmp Unexecuted instantiation: trans_trace.c:str_strcasecmp Unexecuted instantiation: net_tcp_report.c:str_strcasecmp Unexecuted instantiation: mi.c:str_strcasecmp Unexecuted instantiation: item.c:str_strcasecmp Unexecuted instantiation: sdp.c:str_strcasecmp Unexecuted instantiation: sdp_helpr_funcs.c:str_strcasecmp Unexecuted instantiation: digest_parser.c:str_strcasecmp Unexecuted instantiation: param_parser.c:str_strcasecmp Unexecuted instantiation: parse_contact.c:str_strcasecmp Unexecuted instantiation: parse_body.c:str_strcasecmp Unexecuted instantiation: parse_security.c:str_strcasecmp Unexecuted instantiation: parse_call_info.c:str_strcasecmp Unexecuted instantiation: parse_event.c:str_strcasecmp Unexecuted instantiation: parse_disposition.c:str_strcasecmp Unexecuted instantiation: parse_authenticate.c:str_strcasecmp Unexecuted instantiation: parser_f.c:str_strcasecmp Unexecuted instantiation: parse_rpid.c:str_strcasecmp Unexecuted instantiation: parse_ppi.c:str_strcasecmp Unexecuted instantiation: parse_fcaps.c:str_strcasecmp Unexecuted instantiation: parse_rr.c:str_strcasecmp Unexecuted instantiation: parse_param.c:str_strcasecmp Unexecuted instantiation: parse_diversion.c:str_strcasecmp Unexecuted instantiation: parse_nameaddr.c:str_strcasecmp Unexecuted instantiation: parse_expires.c:str_strcasecmp Unexecuted instantiation: parse_refer_to.c:str_strcasecmp Unexecuted instantiation: parse_from.c:str_strcasecmp Unexecuted instantiation: parse_pai.c:str_strcasecmp Unexecuted instantiation: event_interface.c:str_strcasecmp Unexecuted instantiation: receive.c:str_strcasecmp Unexecuted instantiation: ip_addr.c:str_strcasecmp Unexecuted instantiation: async.c:str_strcasecmp Unexecuted instantiation: daemonize.c:str_strcasecmp Unexecuted instantiation: timer.c:str_strcasecmp Unexecuted instantiation: trace_api.c:str_strcasecmp Unexecuted instantiation: mod_fix.c:str_strcasecmp Unexecuted instantiation: reactor.c:str_strcasecmp Unexecuted instantiation: forward.c:str_strcasecmp Unexecuted instantiation: xlog.c:str_strcasecmp Unexecuted instantiation: blacklists.c:str_strcasecmp Unexecuted instantiation: usr_avp.c:str_strcasecmp Unexecuted instantiation: resolve.c:str_strcasecmp Unexecuted instantiation: io_wait.c:str_strcasecmp Unexecuted instantiation: transformations.c:str_strcasecmp Unexecuted instantiation: sr_module_deps.c:str_strcasecmp Unexecuted instantiation: cfg_reload.c:str_strcasecmp Unexecuted instantiation: time_rec.c:str_strcasecmp Unexecuted instantiation: status_report.c:str_strcasecmp Unexecuted instantiation: signals.c:str_strcasecmp Unexecuted instantiation: db_id.c:str_strcasecmp Unexecuted instantiation: csv.c:str_strcasecmp Unexecuted instantiation: msg_translator.c:str_strcasecmp Unexecuted instantiation: md5utils.c:str_strcasecmp Unexecuted instantiation: cfg.tab.c:str_strcasecmp Unexecuted instantiation: modparam.c:str_strcasecmp Unexecuted instantiation: crc.c:str_strcasecmp Unexecuted instantiation: lex.yy.c:str_strcasecmp Unexecuted instantiation: cfg_pp.c:str_strcasecmp Unexecuted instantiation: shutdown.c:str_strcasecmp Unexecuted instantiation: core_cmds.c:str_strcasecmp Unexecuted instantiation: cachedb.c:str_strcasecmp Unexecuted instantiation: cachedb_id.c:str_strcasecmp |
1331 | | |
1332 | | #define start_expire_timer(begin,threshold) \ |
1333 | 0 | do { \ |
1334 | 0 | if (threshold) \ |
1335 | 0 | gettimeofday(&(begin), NULL); \ |
1336 | 0 | } while(0) \ |
1337 | | |
1338 | | #define __stop_expire_timer(begin,threshold,func_info, \ |
1339 | | extra_s,extra_len,tcp,_slow_stat) \ |
1340 | 0 | do { \ |
1341 | 0 | if (threshold) { \ |
1342 | 0 | int __usdiff__ = get_time_diff(&(begin)); \ |
1343 | 0 | if (__usdiff__ > (threshold)) { \ |
1344 | 0 | log_expiry(__usdiff__,(threshold),(func_info), \ |
1345 | 0 | (extra_s),(extra_len),tcp); \ |
1346 | 0 | if (_slow_stat) \ |
1347 | 0 | inc_stat(_slow_stat); \ |
1348 | 0 | } \ |
1349 | 0 | } \ |
1350 | 0 | } while(0) |
1351 | | |
1352 | | #define stop_expire_timer(begin,threshold,func_info,extra_s,extra_len,tcp) \ |
1353 | 0 | __stop_expire_timer(begin,threshold,func_info, \ |
1354 | 0 | extra_s,extra_len,tcp,(stat_var *)NULL) |
1355 | | |
1356 | | #define _stop_expire_timer(begin,threshold,func_info,extra_s,extra_len,tcp, \ |
1357 | | slow, total) \ |
1358 | 0 | do { \ |
1359 | 0 | __stop_expire_timer(begin,threshold,func_info, \ |
1360 | 0 | extra_s,extra_len,tcp,slow); \ |
1361 | 0 | if (total) \ |
1362 | 0 | inc_stat(total); \ |
1363 | 0 | } while (0) |
1364 | | |
1365 | | extern int tcp_timeout_con_get; |
1366 | | extern int tcp_timeout_receive_fd; |
1367 | | extern int tcp_timeout_send; |
1368 | | |
1369 | | #define reset_tcp_vars(threshold) \ |
1370 | 0 | do { \ |
1371 | 0 | if (threshold) \ |
1372 | 0 | { \ |
1373 | 0 | tcp_timeout_con_get=0; \ |
1374 | 0 | tcp_timeout_receive_fd=0; \ |
1375 | 0 | tcp_timeout_send=0; \ |
1376 | 0 | } \ |
1377 | 0 | } while(0) |
1378 | | |
1379 | | #define get_time_difference(begin,threshold,tcp_dbg) \ |
1380 | 0 | do { \ |
1381 | 0 | if ((threshold)) \ |
1382 | 0 | tcp_dbg = get_time_diff(&(begin)); \ |
1383 | 0 | } while(0) |
1384 | | |
1385 | | /* Note: limited to a max time diff of 2147 * 10^6 useconds! */ |
1386 | | static inline int get_time_diff(struct timeval *begin) |
1387 | 0 | { |
1388 | 0 | struct timeval end; |
1389 | |
|
1390 | 0 | gettimeofday(&end, NULL); |
1391 | | |
1392 | | /* difference is returned in microseconds */ |
1393 | 0 | return (long long)(end.tv_sec*1000000 + end.tv_usec) |
1394 | 0 | - (long long)(begin->tv_sec*1000000 + begin->tv_usec); |
1395 | 0 | } Unexecuted instantiation: msg_parser.c:get_time_diff Unexecuted instantiation: parse_uri.c:get_time_diff Unexecuted instantiation: parse_fline.c:get_time_diff Unexecuted instantiation: parse_hname2.c:get_time_diff Unexecuted instantiation: parse_content.c:get_time_diff Unexecuted instantiation: hf.c:get_time_diff Unexecuted instantiation: parse_to.c:get_time_diff Unexecuted instantiation: parse_via.c:get_time_diff Unexecuted instantiation: dprint.c:get_time_diff Unexecuted instantiation: pt.c:get_time_diff Unexecuted instantiation: strcommon.c:get_time_diff Unexecuted instantiation: ut.c:get_time_diff Unexecuted instantiation: sdp_ops.c:get_time_diff Unexecuted instantiation: statistics.c:get_time_diff Unexecuted instantiation: pvar.c:get_time_diff Unexecuted instantiation: route.c:get_time_diff Unexecuted instantiation: socket_info.c:get_time_diff Unexecuted instantiation: ipc.c:get_time_diff Unexecuted instantiation: core_stats.c:get_time_diff Unexecuted instantiation: route_struct.c:get_time_diff Unexecuted instantiation: dset.c:get_time_diff Unexecuted instantiation: pt_scaling.c:get_time_diff Unexecuted instantiation: pt_load.c:get_time_diff Unexecuted instantiation: sr_module.c:get_time_diff Unexecuted instantiation: action.c:get_time_diff Unexecuted instantiation: flags.c:get_time_diff Unexecuted instantiation: db_insertq.c:get_time_diff Unexecuted instantiation: db.c:get_time_diff Unexecuted instantiation: proto_tcp.c:get_time_diff Unexecuted instantiation: proto_udp.c:get_time_diff Unexecuted instantiation: trans.c:get_time_diff Unexecuted instantiation: net_tcp_proc.c:get_time_diff Unexecuted instantiation: net_tcp.c:get_time_diff Unexecuted instantiation: tcp_common.c:get_time_diff Unexecuted instantiation: net_udp.c:get_time_diff Unexecuted instantiation: tcp_conn_profile.c:get_time_diff Unexecuted instantiation: trans_trace.c:get_time_diff Unexecuted instantiation: net_tcp_report.c:get_time_diff Unexecuted instantiation: mi.c:get_time_diff Unexecuted instantiation: item.c:get_time_diff Unexecuted instantiation: sdp.c:get_time_diff Unexecuted instantiation: sdp_helpr_funcs.c:get_time_diff Unexecuted instantiation: digest_parser.c:get_time_diff Unexecuted instantiation: param_parser.c:get_time_diff Unexecuted instantiation: parse_contact.c:get_time_diff Unexecuted instantiation: parse_body.c:get_time_diff Unexecuted instantiation: parse_security.c:get_time_diff Unexecuted instantiation: parse_call_info.c:get_time_diff Unexecuted instantiation: parse_event.c:get_time_diff Unexecuted instantiation: parse_disposition.c:get_time_diff Unexecuted instantiation: parse_authenticate.c:get_time_diff Unexecuted instantiation: parser_f.c:get_time_diff Unexecuted instantiation: parse_rpid.c:get_time_diff Unexecuted instantiation: parse_ppi.c:get_time_diff Unexecuted instantiation: parse_fcaps.c:get_time_diff Unexecuted instantiation: parse_rr.c:get_time_diff Unexecuted instantiation: parse_param.c:get_time_diff Unexecuted instantiation: parse_diversion.c:get_time_diff Unexecuted instantiation: parse_nameaddr.c:get_time_diff Unexecuted instantiation: parse_expires.c:get_time_diff Unexecuted instantiation: parse_refer_to.c:get_time_diff Unexecuted instantiation: parse_from.c:get_time_diff Unexecuted instantiation: parse_pai.c:get_time_diff Unexecuted instantiation: event_interface.c:get_time_diff Unexecuted instantiation: receive.c:get_time_diff Unexecuted instantiation: ip_addr.c:get_time_diff Unexecuted instantiation: async.c:get_time_diff Unexecuted instantiation: daemonize.c:get_time_diff Unexecuted instantiation: timer.c:get_time_diff Unexecuted instantiation: trace_api.c:get_time_diff Unexecuted instantiation: mod_fix.c:get_time_diff Unexecuted instantiation: reactor.c:get_time_diff Unexecuted instantiation: forward.c:get_time_diff Unexecuted instantiation: xlog.c:get_time_diff Unexecuted instantiation: blacklists.c:get_time_diff Unexecuted instantiation: usr_avp.c:get_time_diff Unexecuted instantiation: resolve.c:get_time_diff Unexecuted instantiation: io_wait.c:get_time_diff Unexecuted instantiation: transformations.c:get_time_diff Unexecuted instantiation: sr_module_deps.c:get_time_diff Unexecuted instantiation: cfg_reload.c:get_time_diff Unexecuted instantiation: time_rec.c:get_time_diff Unexecuted instantiation: status_report.c:get_time_diff Unexecuted instantiation: signals.c:get_time_diff Unexecuted instantiation: db_id.c:get_time_diff Unexecuted instantiation: csv.c:get_time_diff Unexecuted instantiation: msg_translator.c:get_time_diff Unexecuted instantiation: md5utils.c:get_time_diff Unexecuted instantiation: cfg.tab.c:get_time_diff Unexecuted instantiation: modparam.c:get_time_diff Unexecuted instantiation: crc.c:get_time_diff Unexecuted instantiation: lex.yy.c:get_time_diff Unexecuted instantiation: cfg_pp.c:get_time_diff Unexecuted instantiation: shutdown.c:get_time_diff Unexecuted instantiation: core_cmds.c:get_time_diff Unexecuted instantiation: cachedb.c:get_time_diff Unexecuted instantiation: cachedb_id.c:get_time_diff |
1396 | | |
1397 | | static inline unsigned long long get_clock_diff(struct timespec *begin) |
1398 | 0 | { |
1399 | 0 | struct timespec end; |
1400 | 0 |
|
1401 | 0 | clock_gettime(CLOCK_REALTIME, &end); |
1402 | 0 |
|
1403 | 0 | return (end.tv_sec - begin->tv_sec) * 1000000000ULL |
1404 | 0 | + (end.tv_nsec - begin->tv_nsec); |
1405 | 0 | } Unexecuted instantiation: msg_parser.c:get_clock_diff Unexecuted instantiation: parse_uri.c:get_clock_diff Unexecuted instantiation: parse_fline.c:get_clock_diff Unexecuted instantiation: parse_hname2.c:get_clock_diff Unexecuted instantiation: parse_content.c:get_clock_diff Unexecuted instantiation: hf.c:get_clock_diff Unexecuted instantiation: parse_to.c:get_clock_diff Unexecuted instantiation: parse_via.c:get_clock_diff Unexecuted instantiation: dprint.c:get_clock_diff Unexecuted instantiation: pt.c:get_clock_diff Unexecuted instantiation: strcommon.c:get_clock_diff Unexecuted instantiation: ut.c:get_clock_diff Unexecuted instantiation: sdp_ops.c:get_clock_diff Unexecuted instantiation: statistics.c:get_clock_diff Unexecuted instantiation: pvar.c:get_clock_diff Unexecuted instantiation: route.c:get_clock_diff Unexecuted instantiation: socket_info.c:get_clock_diff Unexecuted instantiation: ipc.c:get_clock_diff Unexecuted instantiation: core_stats.c:get_clock_diff Unexecuted instantiation: route_struct.c:get_clock_diff Unexecuted instantiation: dset.c:get_clock_diff Unexecuted instantiation: pt_scaling.c:get_clock_diff Unexecuted instantiation: pt_load.c:get_clock_diff Unexecuted instantiation: sr_module.c:get_clock_diff Unexecuted instantiation: action.c:get_clock_diff Unexecuted instantiation: flags.c:get_clock_diff Unexecuted instantiation: db_insertq.c:get_clock_diff Unexecuted instantiation: db.c:get_clock_diff Unexecuted instantiation: proto_tcp.c:get_clock_diff Unexecuted instantiation: proto_udp.c:get_clock_diff Unexecuted instantiation: trans.c:get_clock_diff Unexecuted instantiation: net_tcp_proc.c:get_clock_diff Unexecuted instantiation: net_tcp.c:get_clock_diff Unexecuted instantiation: tcp_common.c:get_clock_diff Unexecuted instantiation: net_udp.c:get_clock_diff Unexecuted instantiation: tcp_conn_profile.c:get_clock_diff Unexecuted instantiation: trans_trace.c:get_clock_diff Unexecuted instantiation: net_tcp_report.c:get_clock_diff Unexecuted instantiation: mi.c:get_clock_diff Unexecuted instantiation: item.c:get_clock_diff Unexecuted instantiation: sdp.c:get_clock_diff Unexecuted instantiation: sdp_helpr_funcs.c:get_clock_diff Unexecuted instantiation: digest_parser.c:get_clock_diff Unexecuted instantiation: param_parser.c:get_clock_diff Unexecuted instantiation: parse_contact.c:get_clock_diff Unexecuted instantiation: parse_body.c:get_clock_diff Unexecuted instantiation: parse_security.c:get_clock_diff Unexecuted instantiation: parse_call_info.c:get_clock_diff Unexecuted instantiation: parse_event.c:get_clock_diff Unexecuted instantiation: parse_disposition.c:get_clock_diff Unexecuted instantiation: parse_authenticate.c:get_clock_diff Unexecuted instantiation: parser_f.c:get_clock_diff Unexecuted instantiation: parse_rpid.c:get_clock_diff Unexecuted instantiation: parse_ppi.c:get_clock_diff Unexecuted instantiation: parse_fcaps.c:get_clock_diff Unexecuted instantiation: parse_rr.c:get_clock_diff Unexecuted instantiation: parse_param.c:get_clock_diff Unexecuted instantiation: parse_diversion.c:get_clock_diff Unexecuted instantiation: parse_nameaddr.c:get_clock_diff Unexecuted instantiation: parse_expires.c:get_clock_diff Unexecuted instantiation: parse_refer_to.c:get_clock_diff Unexecuted instantiation: parse_from.c:get_clock_diff Unexecuted instantiation: parse_pai.c:get_clock_diff Unexecuted instantiation: event_interface.c:get_clock_diff Unexecuted instantiation: receive.c:get_clock_diff Unexecuted instantiation: ip_addr.c:get_clock_diff Unexecuted instantiation: async.c:get_clock_diff Unexecuted instantiation: daemonize.c:get_clock_diff Unexecuted instantiation: timer.c:get_clock_diff Unexecuted instantiation: trace_api.c:get_clock_diff Unexecuted instantiation: mod_fix.c:get_clock_diff Unexecuted instantiation: reactor.c:get_clock_diff Unexecuted instantiation: forward.c:get_clock_diff Unexecuted instantiation: xlog.c:get_clock_diff Unexecuted instantiation: blacklists.c:get_clock_diff Unexecuted instantiation: usr_avp.c:get_clock_diff Unexecuted instantiation: resolve.c:get_clock_diff Unexecuted instantiation: io_wait.c:get_clock_diff Unexecuted instantiation: transformations.c:get_clock_diff Unexecuted instantiation: sr_module_deps.c:get_clock_diff Unexecuted instantiation: cfg_reload.c:get_clock_diff Unexecuted instantiation: time_rec.c:get_clock_diff Unexecuted instantiation: status_report.c:get_clock_diff Unexecuted instantiation: signals.c:get_clock_diff Unexecuted instantiation: db_id.c:get_clock_diff Unexecuted instantiation: csv.c:get_clock_diff Unexecuted instantiation: msg_translator.c:get_clock_diff Unexecuted instantiation: md5utils.c:get_clock_diff Unexecuted instantiation: cfg.tab.c:get_clock_diff Unexecuted instantiation: modparam.c:get_clock_diff Unexecuted instantiation: crc.c:get_clock_diff Unexecuted instantiation: lex.yy.c:get_clock_diff Unexecuted instantiation: cfg_pp.c:get_clock_diff Unexecuted instantiation: shutdown.c:get_clock_diff Unexecuted instantiation: core_cmds.c:get_clock_diff Unexecuted instantiation: cachedb.c:get_clock_diff Unexecuted instantiation: cachedb_id.c:get_clock_diff |
1406 | | |
1407 | | #define __clock_check_diff(__loglv__, start_tmspec, maxdf, fmt, ...) \ |
1408 | | do { \ |
1409 | | unsigned long long _diff_ns = get_clock_diff(start_tmspec); \ |
1410 | | if (_diff_ns > (maxdf)) \ |
1411 | | LM_GEN(__loglv__, "time spent: %0.*lfs " fmt "\n", 3, \ |
1412 | | (_diff_ns)/1e9, __VA_ARGS__); \ |
1413 | | } while (0) |
1414 | | #define _clock_check_diff(start_tmspec, maxdf, fmt, ...) \ |
1415 | | __clock_check_diff(L_NOTICE, start_tmspec, maxdf, fmt, __VA_ARGS__) |
1416 | | |
1417 | | /** |
1418 | | * clock_check_diff() - measure code execution time relative to the @begin |
1419 | | * timespec; print notice msg if the difference was exceeded |
1420 | | * @maxdf (unsigned long long) - the maximum accepted execution time |
1421 | | * @fmt (char *) - extra format string + variable # of arguments |
1422 | | */ |
1423 | | #define clock_check_diff(maxdf, fmt, ...) \ |
1424 | | _clock_check_diff(&begin, maxdf, fmt, __VA_ARGS__) |
1425 | | |
1426 | | #define reset_longest_action_list(threshold) \ |
1427 | 0 | do { \ |
1428 | 0 | if ((threshold)) { \ |
1429 | 0 | min_action_time=0; \ |
1430 | 0 | memset(longest_action,0,LONGEST_ACTION_SIZE*sizeof(action_time)); \ |
1431 | 0 | } \ |
1432 | 0 | } while (0) |
1433 | | |
1434 | | static inline void log_expiry(int time_diff,int expire, |
1435 | | const char *func_info,char *extra_dbg,int dbg_len,int tcp) |
1436 | 0 | { |
1437 | 0 | str param; |
1438 | 0 | evi_params_p list; |
1439 | 0 | static str func_str = str_init("source"); |
1440 | 0 | static str time_str = str_init("time"); |
1441 | 0 | static str extra_str = str_init("extra"); |
1442 | 0 | int i; |
1443 | |
|
1444 | 0 | if (time_diff > expire) |
1445 | 0 | { |
1446 | 0 | if (tcp) { |
1447 | 0 | LM_WARN("threshold exceeded : tcp took too long : " |
1448 | 0 | "con_get=%d, rcv_fd=%d, send=%d. Source : %.*s\n", |
1449 | 0 | tcp_timeout_con_get,tcp_timeout_receive_fd, |
1450 | 0 | tcp_timeout_send,dbg_len,extra_dbg); |
1451 | 0 | time_diff = tcp_timeout_send + tcp_timeout_receive_fd + |
1452 | 0 | tcp_timeout_con_get; |
1453 | 0 | } else |
1454 | 0 | LM_WARN("threshold exceeded : %s took too long - %d us." |
1455 | 0 | "Source : %.*s\n",func_info,time_diff,dbg_len,extra_dbg); |
1456 | |
|
1457 | 0 | if (memcmp(func_info,"msg",3) == 0) { |
1458 | 0 | for (i=0;i<LONGEST_ACTION_SIZE;i++) { |
1459 | 0 | if (longest_action[i].a) { |
1460 | 0 | if ((unsigned char)longest_action[i].a->type == CMD_T) |
1461 | 0 | LM_WARN("#%i is a module action : %s - %dus - line %d\n",i+1, |
1462 | 0 | ((cmd_export_t*)(longest_action[i].a->elem[0].u.data))->name, |
1463 | 0 | longest_action[i].a_time,longest_action[i].a->line); |
1464 | 0 | else |
1465 | 0 | LM_WARN("#%i is a core action : %d - %dus - line %d\n",i+1, |
1466 | 0 | longest_action[i].a->type, |
1467 | 0 | longest_action[i].a_time,longest_action[i].a->line); |
1468 | 0 | } |
1469 | 0 | } |
1470 | 0 | } |
1471 | 0 | if (evi_probe_event(EVI_THRESHOLD_ID)) { |
1472 | |
|
1473 | 0 | param.s = (char *)func_info; |
1474 | 0 | param.len = strlen(func_info); |
1475 | 0 | if (!(list = evi_get_params())) |
1476 | 0 | return; |
1477 | 0 | if (evi_param_add_str(list, &func_str, ¶m)) { |
1478 | 0 | LM_ERR("unable to add func parameter\n"); |
1479 | 0 | goto error; |
1480 | 0 | } |
1481 | 0 | if (evi_param_add_int(list, &time_str, &time_diff)) { |
1482 | 0 | LM_ERR("unable to add time parameter\n"); |
1483 | 0 | goto error; |
1484 | 0 | } |
1485 | 0 | param.s = extra_dbg; |
1486 | 0 | param.len = dbg_len; |
1487 | 0 | if (evi_param_add_str(list, &extra_str, ¶m)) { |
1488 | 0 | LM_ERR("unable to add extra parameter\n"); |
1489 | 0 | goto error; |
1490 | 0 | } |
1491 | 0 | if (evi_raise_event(EVI_THRESHOLD_ID, list)) { |
1492 | 0 | LM_ERR("unable to send event\n"); |
1493 | 0 | } |
1494 | |
|
1495 | 0 | } else { |
1496 | 0 | LM_DBG("no event raised\n"); |
1497 | 0 | } |
1498 | 0 | } |
1499 | 0 | return; |
1500 | 0 | error: |
1501 | 0 | evi_free_params(list); |
1502 | 0 | } Unexecuted instantiation: msg_parser.c:log_expiry Unexecuted instantiation: parse_uri.c:log_expiry Unexecuted instantiation: parse_fline.c:log_expiry Unexecuted instantiation: parse_hname2.c:log_expiry Unexecuted instantiation: parse_content.c:log_expiry Unexecuted instantiation: hf.c:log_expiry Unexecuted instantiation: parse_to.c:log_expiry Unexecuted instantiation: parse_via.c:log_expiry Unexecuted instantiation: dprint.c:log_expiry Unexecuted instantiation: pt.c:log_expiry Unexecuted instantiation: strcommon.c:log_expiry Unexecuted instantiation: ut.c:log_expiry Unexecuted instantiation: sdp_ops.c:log_expiry Unexecuted instantiation: statistics.c:log_expiry Unexecuted instantiation: pvar.c:log_expiry Unexecuted instantiation: route.c:log_expiry Unexecuted instantiation: socket_info.c:log_expiry Unexecuted instantiation: ipc.c:log_expiry Unexecuted instantiation: core_stats.c:log_expiry Unexecuted instantiation: route_struct.c:log_expiry Unexecuted instantiation: dset.c:log_expiry Unexecuted instantiation: pt_scaling.c:log_expiry Unexecuted instantiation: pt_load.c:log_expiry Unexecuted instantiation: sr_module.c:log_expiry Unexecuted instantiation: action.c:log_expiry Unexecuted instantiation: flags.c:log_expiry Unexecuted instantiation: db_insertq.c:log_expiry Unexecuted instantiation: db.c:log_expiry Unexecuted instantiation: proto_tcp.c:log_expiry Unexecuted instantiation: proto_udp.c:log_expiry Unexecuted instantiation: trans.c:log_expiry Unexecuted instantiation: net_tcp_proc.c:log_expiry Unexecuted instantiation: net_tcp.c:log_expiry Unexecuted instantiation: tcp_common.c:log_expiry Unexecuted instantiation: net_udp.c:log_expiry Unexecuted instantiation: tcp_conn_profile.c:log_expiry Unexecuted instantiation: trans_trace.c:log_expiry Unexecuted instantiation: net_tcp_report.c:log_expiry Unexecuted instantiation: mi.c:log_expiry Unexecuted instantiation: item.c:log_expiry Unexecuted instantiation: sdp.c:log_expiry Unexecuted instantiation: sdp_helpr_funcs.c:log_expiry Unexecuted instantiation: digest_parser.c:log_expiry Unexecuted instantiation: param_parser.c:log_expiry Unexecuted instantiation: parse_contact.c:log_expiry Unexecuted instantiation: parse_body.c:log_expiry Unexecuted instantiation: parse_security.c:log_expiry Unexecuted instantiation: parse_call_info.c:log_expiry Unexecuted instantiation: parse_event.c:log_expiry Unexecuted instantiation: parse_disposition.c:log_expiry Unexecuted instantiation: parse_authenticate.c:log_expiry Unexecuted instantiation: parser_f.c:log_expiry Unexecuted instantiation: parse_rpid.c:log_expiry Unexecuted instantiation: parse_ppi.c:log_expiry Unexecuted instantiation: parse_fcaps.c:log_expiry Unexecuted instantiation: parse_rr.c:log_expiry Unexecuted instantiation: parse_param.c:log_expiry Unexecuted instantiation: parse_diversion.c:log_expiry Unexecuted instantiation: parse_nameaddr.c:log_expiry Unexecuted instantiation: parse_expires.c:log_expiry Unexecuted instantiation: parse_refer_to.c:log_expiry Unexecuted instantiation: parse_from.c:log_expiry Unexecuted instantiation: parse_pai.c:log_expiry Unexecuted instantiation: event_interface.c:log_expiry Unexecuted instantiation: receive.c:log_expiry Unexecuted instantiation: ip_addr.c:log_expiry Unexecuted instantiation: async.c:log_expiry Unexecuted instantiation: daemonize.c:log_expiry Unexecuted instantiation: timer.c:log_expiry Unexecuted instantiation: trace_api.c:log_expiry Unexecuted instantiation: mod_fix.c:log_expiry Unexecuted instantiation: reactor.c:log_expiry Unexecuted instantiation: forward.c:log_expiry Unexecuted instantiation: xlog.c:log_expiry Unexecuted instantiation: blacklists.c:log_expiry Unexecuted instantiation: usr_avp.c:log_expiry Unexecuted instantiation: resolve.c:log_expiry Unexecuted instantiation: io_wait.c:log_expiry Unexecuted instantiation: transformations.c:log_expiry Unexecuted instantiation: sr_module_deps.c:log_expiry Unexecuted instantiation: cfg_reload.c:log_expiry Unexecuted instantiation: time_rec.c:log_expiry Unexecuted instantiation: status_report.c:log_expiry Unexecuted instantiation: signals.c:log_expiry Unexecuted instantiation: db_id.c:log_expiry Unexecuted instantiation: csv.c:log_expiry Unexecuted instantiation: msg_translator.c:log_expiry Unexecuted instantiation: md5utils.c:log_expiry Unexecuted instantiation: cfg.tab.c:log_expiry Unexecuted instantiation: modparam.c:log_expiry Unexecuted instantiation: crc.c:log_expiry Unexecuted instantiation: lex.yy.c:log_expiry Unexecuted instantiation: cfg_pp.c:log_expiry Unexecuted instantiation: shutdown.c:log_expiry Unexecuted instantiation: core_cmds.c:log_expiry Unexecuted instantiation: cachedb.c:log_expiry Unexecuted instantiation: cachedb_id.c:log_expiry |
1503 | | |
1504 | | static inline int get_timestamp(int *sec,int *usec) |
1505 | 0 | { |
1506 | 0 | struct timeval t; |
1507 | |
|
1508 | 0 | if (gettimeofday(&t,NULL) != 0) |
1509 | 0 | { |
1510 | 0 | LM_ERR("failed to get time of day\n"); |
1511 | 0 | return -1; |
1512 | 0 | } |
1513 | | |
1514 | 0 | *sec = t.tv_sec; |
1515 | 0 | *usec = t.tv_usec; |
1516 | |
|
1517 | 0 | return 0; |
1518 | 0 | } Unexecuted instantiation: msg_parser.c:get_timestamp Unexecuted instantiation: parse_uri.c:get_timestamp Unexecuted instantiation: parse_fline.c:get_timestamp Unexecuted instantiation: parse_hname2.c:get_timestamp Unexecuted instantiation: parse_content.c:get_timestamp Unexecuted instantiation: hf.c:get_timestamp Unexecuted instantiation: parse_to.c:get_timestamp Unexecuted instantiation: parse_via.c:get_timestamp Unexecuted instantiation: dprint.c:get_timestamp Unexecuted instantiation: pt.c:get_timestamp Unexecuted instantiation: strcommon.c:get_timestamp Unexecuted instantiation: ut.c:get_timestamp Unexecuted instantiation: sdp_ops.c:get_timestamp Unexecuted instantiation: statistics.c:get_timestamp Unexecuted instantiation: pvar.c:get_timestamp Unexecuted instantiation: route.c:get_timestamp Unexecuted instantiation: socket_info.c:get_timestamp Unexecuted instantiation: ipc.c:get_timestamp Unexecuted instantiation: core_stats.c:get_timestamp Unexecuted instantiation: route_struct.c:get_timestamp Unexecuted instantiation: dset.c:get_timestamp Unexecuted instantiation: pt_scaling.c:get_timestamp Unexecuted instantiation: pt_load.c:get_timestamp Unexecuted instantiation: sr_module.c:get_timestamp Unexecuted instantiation: action.c:get_timestamp Unexecuted instantiation: flags.c:get_timestamp Unexecuted instantiation: db_insertq.c:get_timestamp Unexecuted instantiation: db.c:get_timestamp Unexecuted instantiation: proto_tcp.c:get_timestamp Unexecuted instantiation: proto_udp.c:get_timestamp Unexecuted instantiation: trans.c:get_timestamp Unexecuted instantiation: net_tcp_proc.c:get_timestamp Unexecuted instantiation: net_tcp.c:get_timestamp Unexecuted instantiation: tcp_common.c:get_timestamp Unexecuted instantiation: net_udp.c:get_timestamp Unexecuted instantiation: tcp_conn_profile.c:get_timestamp Unexecuted instantiation: trans_trace.c:get_timestamp Unexecuted instantiation: net_tcp_report.c:get_timestamp Unexecuted instantiation: mi.c:get_timestamp Unexecuted instantiation: item.c:get_timestamp Unexecuted instantiation: sdp.c:get_timestamp Unexecuted instantiation: sdp_helpr_funcs.c:get_timestamp Unexecuted instantiation: digest_parser.c:get_timestamp Unexecuted instantiation: param_parser.c:get_timestamp Unexecuted instantiation: parse_contact.c:get_timestamp Unexecuted instantiation: parse_body.c:get_timestamp Unexecuted instantiation: parse_security.c:get_timestamp Unexecuted instantiation: parse_call_info.c:get_timestamp Unexecuted instantiation: parse_event.c:get_timestamp Unexecuted instantiation: parse_disposition.c:get_timestamp Unexecuted instantiation: parse_authenticate.c:get_timestamp Unexecuted instantiation: parser_f.c:get_timestamp Unexecuted instantiation: parse_rpid.c:get_timestamp Unexecuted instantiation: parse_ppi.c:get_timestamp Unexecuted instantiation: parse_fcaps.c:get_timestamp Unexecuted instantiation: parse_rr.c:get_timestamp Unexecuted instantiation: parse_param.c:get_timestamp Unexecuted instantiation: parse_diversion.c:get_timestamp Unexecuted instantiation: parse_nameaddr.c:get_timestamp Unexecuted instantiation: parse_expires.c:get_timestamp Unexecuted instantiation: parse_refer_to.c:get_timestamp Unexecuted instantiation: parse_from.c:get_timestamp Unexecuted instantiation: parse_pai.c:get_timestamp Unexecuted instantiation: event_interface.c:get_timestamp Unexecuted instantiation: receive.c:get_timestamp Unexecuted instantiation: ip_addr.c:get_timestamp Unexecuted instantiation: async.c:get_timestamp Unexecuted instantiation: daemonize.c:get_timestamp Unexecuted instantiation: timer.c:get_timestamp Unexecuted instantiation: trace_api.c:get_timestamp Unexecuted instantiation: mod_fix.c:get_timestamp Unexecuted instantiation: reactor.c:get_timestamp Unexecuted instantiation: forward.c:get_timestamp Unexecuted instantiation: xlog.c:get_timestamp Unexecuted instantiation: blacklists.c:get_timestamp Unexecuted instantiation: usr_avp.c:get_timestamp Unexecuted instantiation: resolve.c:get_timestamp Unexecuted instantiation: io_wait.c:get_timestamp Unexecuted instantiation: transformations.c:get_timestamp Unexecuted instantiation: sr_module_deps.c:get_timestamp Unexecuted instantiation: cfg_reload.c:get_timestamp Unexecuted instantiation: time_rec.c:get_timestamp Unexecuted instantiation: status_report.c:get_timestamp Unexecuted instantiation: signals.c:get_timestamp Unexecuted instantiation: db_id.c:get_timestamp Unexecuted instantiation: csv.c:get_timestamp Unexecuted instantiation: msg_translator.c:get_timestamp Unexecuted instantiation: md5utils.c:get_timestamp Unexecuted instantiation: cfg.tab.c:get_timestamp Unexecuted instantiation: modparam.c:get_timestamp Unexecuted instantiation: crc.c:get_timestamp Unexecuted instantiation: lex.yy.c:get_timestamp Unexecuted instantiation: cfg_pp.c:get_timestamp Unexecuted instantiation: shutdown.c:get_timestamp Unexecuted instantiation: core_cmds.c:get_timestamp Unexecuted instantiation: cachedb.c:get_timestamp Unexecuted instantiation: cachedb_id.c:get_timestamp |
1519 | | |
1520 | | /* |
1521 | | * checks if the string is a token as defined in rfc3261 |
1522 | | * returns: |
1523 | | * -1 - if the string is invalid |
1524 | | * 1 - if the string is a token |
1525 | | * 0 - not a token |
1526 | | */ |
1527 | | static inline int str_check_token( str * in) |
1528 | 0 | { |
1529 | 0 | char *p; |
1530 | 0 |
|
1531 | 0 | if (!in || !in->s || !in->len) |
1532 | 0 | return -1; |
1533 | 0 |
|
1534 | 0 | p = in->s + in->len; |
1535 | 0 | while (p > in->s) { |
1536 | 0 | p--; |
1537 | 0 | if (!( |
1538 | 0 | /* alphanum */ |
1539 | 0 | (*p >= 'a' && *p <= 'z') || |
1540 | 0 | (*p >= 'A' && *p <= 'Z') || |
1541 | 0 | (*p >= '0' && *p <= '9') || |
1542 | 0 | /* other */ |
1543 | 0 | *p == '-' || *p == '.' || |
1544 | 0 | *p == '!' || *p == '%' || |
1545 | 0 | *p == '*' || *p == '_' || |
1546 | 0 | *p == '+' || *p == '`' || |
1547 | 0 | *p == '\'' || *p == '~' |
1548 | 0 | )) |
1549 | 0 | return 0; |
1550 | 0 | } |
1551 | 0 | return 1; |
1552 | 0 | } Unexecuted instantiation: msg_parser.c:str_check_token Unexecuted instantiation: parse_uri.c:str_check_token Unexecuted instantiation: parse_fline.c:str_check_token Unexecuted instantiation: parse_hname2.c:str_check_token Unexecuted instantiation: parse_content.c:str_check_token Unexecuted instantiation: hf.c:str_check_token Unexecuted instantiation: parse_to.c:str_check_token Unexecuted instantiation: parse_via.c:str_check_token Unexecuted instantiation: dprint.c:str_check_token Unexecuted instantiation: pt.c:str_check_token Unexecuted instantiation: strcommon.c:str_check_token Unexecuted instantiation: ut.c:str_check_token Unexecuted instantiation: sdp_ops.c:str_check_token Unexecuted instantiation: statistics.c:str_check_token Unexecuted instantiation: pvar.c:str_check_token Unexecuted instantiation: route.c:str_check_token Unexecuted instantiation: socket_info.c:str_check_token Unexecuted instantiation: ipc.c:str_check_token Unexecuted instantiation: core_stats.c:str_check_token Unexecuted instantiation: route_struct.c:str_check_token Unexecuted instantiation: dset.c:str_check_token Unexecuted instantiation: pt_scaling.c:str_check_token Unexecuted instantiation: pt_load.c:str_check_token Unexecuted instantiation: sr_module.c:str_check_token Unexecuted instantiation: action.c:str_check_token Unexecuted instantiation: flags.c:str_check_token Unexecuted instantiation: db_insertq.c:str_check_token Unexecuted instantiation: db.c:str_check_token Unexecuted instantiation: proto_tcp.c:str_check_token Unexecuted instantiation: proto_udp.c:str_check_token Unexecuted instantiation: trans.c:str_check_token Unexecuted instantiation: net_tcp_proc.c:str_check_token Unexecuted instantiation: net_tcp.c:str_check_token Unexecuted instantiation: tcp_common.c:str_check_token Unexecuted instantiation: net_udp.c:str_check_token Unexecuted instantiation: tcp_conn_profile.c:str_check_token Unexecuted instantiation: trans_trace.c:str_check_token Unexecuted instantiation: net_tcp_report.c:str_check_token Unexecuted instantiation: mi.c:str_check_token Unexecuted instantiation: item.c:str_check_token Unexecuted instantiation: sdp.c:str_check_token Unexecuted instantiation: sdp_helpr_funcs.c:str_check_token Unexecuted instantiation: digest_parser.c:str_check_token Unexecuted instantiation: param_parser.c:str_check_token Unexecuted instantiation: parse_contact.c:str_check_token Unexecuted instantiation: parse_body.c:str_check_token Unexecuted instantiation: parse_security.c:str_check_token Unexecuted instantiation: parse_call_info.c:str_check_token Unexecuted instantiation: parse_event.c:str_check_token Unexecuted instantiation: parse_disposition.c:str_check_token Unexecuted instantiation: parse_authenticate.c:str_check_token Unexecuted instantiation: parser_f.c:str_check_token Unexecuted instantiation: parse_rpid.c:str_check_token Unexecuted instantiation: parse_ppi.c:str_check_token Unexecuted instantiation: parse_fcaps.c:str_check_token Unexecuted instantiation: parse_rr.c:str_check_token Unexecuted instantiation: parse_param.c:str_check_token Unexecuted instantiation: parse_diversion.c:str_check_token Unexecuted instantiation: parse_nameaddr.c:str_check_token Unexecuted instantiation: parse_expires.c:str_check_token Unexecuted instantiation: parse_refer_to.c:str_check_token Unexecuted instantiation: parse_from.c:str_check_token Unexecuted instantiation: parse_pai.c:str_check_token Unexecuted instantiation: event_interface.c:str_check_token Unexecuted instantiation: receive.c:str_check_token Unexecuted instantiation: ip_addr.c:str_check_token Unexecuted instantiation: async.c:str_check_token Unexecuted instantiation: daemonize.c:str_check_token Unexecuted instantiation: timer.c:str_check_token Unexecuted instantiation: trace_api.c:str_check_token Unexecuted instantiation: mod_fix.c:str_check_token Unexecuted instantiation: reactor.c:str_check_token Unexecuted instantiation: forward.c:str_check_token Unexecuted instantiation: xlog.c:str_check_token Unexecuted instantiation: blacklists.c:str_check_token Unexecuted instantiation: usr_avp.c:str_check_token Unexecuted instantiation: resolve.c:str_check_token Unexecuted instantiation: io_wait.c:str_check_token Unexecuted instantiation: transformations.c:str_check_token Unexecuted instantiation: sr_module_deps.c:str_check_token Unexecuted instantiation: cfg_reload.c:str_check_token Unexecuted instantiation: time_rec.c:str_check_token Unexecuted instantiation: status_report.c:str_check_token Unexecuted instantiation: signals.c:str_check_token Unexecuted instantiation: db_id.c:str_check_token Unexecuted instantiation: csv.c:str_check_token Unexecuted instantiation: msg_translator.c:str_check_token Unexecuted instantiation: md5utils.c:str_check_token Unexecuted instantiation: cfg.tab.c:str_check_token Unexecuted instantiation: modparam.c:str_check_token Unexecuted instantiation: crc.c:str_check_token Unexecuted instantiation: lex.yy.c:str_check_token Unexecuted instantiation: cfg_pp.c:str_check_token Unexecuted instantiation: shutdown.c:str_check_token Unexecuted instantiation: core_cmds.c:str_check_token Unexecuted instantiation: cachedb.c:str_check_token Unexecuted instantiation: cachedb_id.c:str_check_token |
1553 | | |
1554 | | |
1555 | | /* |
1556 | | * l_memmem() returns the location of the first occurrence of data |
1557 | | * pattern b2 of size len2 in memory block b1 of size len1 or |
1558 | | * NULL if none is found. Obtained from NetBSD. |
1559 | | */ |
1560 | | static inline void * l_memmem(const void *b1, const void *b2, |
1561 | | size_t len1, size_t len2) |
1562 | 0 | { |
1563 | | /* Initialize search pointer */ |
1564 | 0 | char *sp = (char *) b1; |
1565 | | |
1566 | | /* Initialize pattern pointer */ |
1567 | 0 | char *pp = (char *) b2; |
1568 | | |
1569 | | /* Initialize end of search address space pointer */ |
1570 | 0 | char *eos = sp + len1 - len2; |
1571 | | |
1572 | | /* Sanity check */ |
1573 | 0 | if(!(b1 && b2 && len1 && len2)) |
1574 | 0 | return NULL; |
1575 | | |
1576 | 0 | while (sp <= eos) { |
1577 | 0 | if (*sp == *pp) |
1578 | 0 | if (memcmp(sp, pp, len2) == 0) |
1579 | 0 | return sp; |
1580 | | |
1581 | 0 | sp++; |
1582 | 0 | } |
1583 | | |
1584 | 0 | return NULL; |
1585 | 0 | } Unexecuted instantiation: msg_parser.c:l_memmem Unexecuted instantiation: parse_uri.c:l_memmem Unexecuted instantiation: parse_fline.c:l_memmem Unexecuted instantiation: parse_hname2.c:l_memmem Unexecuted instantiation: parse_content.c:l_memmem Unexecuted instantiation: hf.c:l_memmem Unexecuted instantiation: parse_to.c:l_memmem Unexecuted instantiation: parse_via.c:l_memmem Unexecuted instantiation: dprint.c:l_memmem Unexecuted instantiation: pt.c:l_memmem Unexecuted instantiation: strcommon.c:l_memmem Unexecuted instantiation: ut.c:l_memmem Unexecuted instantiation: sdp_ops.c:l_memmem Unexecuted instantiation: statistics.c:l_memmem Unexecuted instantiation: pvar.c:l_memmem Unexecuted instantiation: route.c:l_memmem Unexecuted instantiation: socket_info.c:l_memmem Unexecuted instantiation: ipc.c:l_memmem Unexecuted instantiation: core_stats.c:l_memmem Unexecuted instantiation: route_struct.c:l_memmem Unexecuted instantiation: dset.c:l_memmem Unexecuted instantiation: pt_scaling.c:l_memmem Unexecuted instantiation: pt_load.c:l_memmem Unexecuted instantiation: sr_module.c:l_memmem Unexecuted instantiation: action.c:l_memmem Unexecuted instantiation: flags.c:l_memmem Unexecuted instantiation: db_insertq.c:l_memmem Unexecuted instantiation: db.c:l_memmem Unexecuted instantiation: proto_tcp.c:l_memmem Unexecuted instantiation: proto_udp.c:l_memmem Unexecuted instantiation: trans.c:l_memmem Unexecuted instantiation: net_tcp_proc.c:l_memmem Unexecuted instantiation: net_tcp.c:l_memmem Unexecuted instantiation: tcp_common.c:l_memmem Unexecuted instantiation: net_udp.c:l_memmem Unexecuted instantiation: tcp_conn_profile.c:l_memmem Unexecuted instantiation: trans_trace.c:l_memmem Unexecuted instantiation: net_tcp_report.c:l_memmem Unexecuted instantiation: mi.c:l_memmem Unexecuted instantiation: item.c:l_memmem Unexecuted instantiation: sdp.c:l_memmem Unexecuted instantiation: sdp_helpr_funcs.c:l_memmem Unexecuted instantiation: digest_parser.c:l_memmem Unexecuted instantiation: param_parser.c:l_memmem Unexecuted instantiation: parse_contact.c:l_memmem Unexecuted instantiation: parse_body.c:l_memmem Unexecuted instantiation: parse_security.c:l_memmem Unexecuted instantiation: parse_call_info.c:l_memmem Unexecuted instantiation: parse_event.c:l_memmem Unexecuted instantiation: parse_disposition.c:l_memmem Unexecuted instantiation: parse_authenticate.c:l_memmem Unexecuted instantiation: parser_f.c:l_memmem Unexecuted instantiation: parse_rpid.c:l_memmem Unexecuted instantiation: parse_ppi.c:l_memmem Unexecuted instantiation: parse_fcaps.c:l_memmem Unexecuted instantiation: parse_rr.c:l_memmem Unexecuted instantiation: parse_param.c:l_memmem Unexecuted instantiation: parse_diversion.c:l_memmem Unexecuted instantiation: parse_nameaddr.c:l_memmem Unexecuted instantiation: parse_expires.c:l_memmem Unexecuted instantiation: parse_refer_to.c:l_memmem Unexecuted instantiation: parse_from.c:l_memmem Unexecuted instantiation: parse_pai.c:l_memmem Unexecuted instantiation: event_interface.c:l_memmem Unexecuted instantiation: receive.c:l_memmem Unexecuted instantiation: ip_addr.c:l_memmem Unexecuted instantiation: async.c:l_memmem Unexecuted instantiation: daemonize.c:l_memmem Unexecuted instantiation: timer.c:l_memmem Unexecuted instantiation: trace_api.c:l_memmem Unexecuted instantiation: mod_fix.c:l_memmem Unexecuted instantiation: reactor.c:l_memmem Unexecuted instantiation: forward.c:l_memmem Unexecuted instantiation: xlog.c:l_memmem Unexecuted instantiation: blacklists.c:l_memmem Unexecuted instantiation: usr_avp.c:l_memmem Unexecuted instantiation: resolve.c:l_memmem Unexecuted instantiation: io_wait.c:l_memmem Unexecuted instantiation: transformations.c:l_memmem Unexecuted instantiation: sr_module_deps.c:l_memmem Unexecuted instantiation: cfg_reload.c:l_memmem Unexecuted instantiation: time_rec.c:l_memmem Unexecuted instantiation: status_report.c:l_memmem Unexecuted instantiation: signals.c:l_memmem Unexecuted instantiation: db_id.c:l_memmem Unexecuted instantiation: csv.c:l_memmem Unexecuted instantiation: msg_translator.c:l_memmem Unexecuted instantiation: md5utils.c:l_memmem Unexecuted instantiation: cfg.tab.c:l_memmem Unexecuted instantiation: modparam.c:l_memmem Unexecuted instantiation: crc.c:l_memmem Unexecuted instantiation: lex.yy.c:l_memmem Unexecuted instantiation: cfg_pp.c:l_memmem Unexecuted instantiation: shutdown.c:l_memmem Unexecuted instantiation: core_cmds.c:l_memmem Unexecuted instantiation: cachedb.c:l_memmem Unexecuted instantiation: cachedb_id.c:l_memmem |
1586 | | |
1587 | | /** |
1588 | | * Make any database URL log-friendly by masking its password, if any |
1589 | | * Note: makes use of a single, static buffer -- use accordingly! |
1590 | | */ |
1591 | | char *db_url_escape(const str *url); |
1592 | | static inline char *_db_url_escape(const char *url) |
1593 | 0 | { |
1594 | 0 | return db_url_escape(_str(url)); |
1595 | 0 | } Unexecuted instantiation: msg_parser.c:_db_url_escape Unexecuted instantiation: parse_uri.c:_db_url_escape Unexecuted instantiation: parse_fline.c:_db_url_escape Unexecuted instantiation: parse_hname2.c:_db_url_escape Unexecuted instantiation: parse_content.c:_db_url_escape Unexecuted instantiation: hf.c:_db_url_escape Unexecuted instantiation: parse_to.c:_db_url_escape Unexecuted instantiation: parse_via.c:_db_url_escape Unexecuted instantiation: dprint.c:_db_url_escape Unexecuted instantiation: pt.c:_db_url_escape Unexecuted instantiation: strcommon.c:_db_url_escape Unexecuted instantiation: ut.c:_db_url_escape Unexecuted instantiation: sdp_ops.c:_db_url_escape Unexecuted instantiation: statistics.c:_db_url_escape Unexecuted instantiation: pvar.c:_db_url_escape Unexecuted instantiation: route.c:_db_url_escape Unexecuted instantiation: socket_info.c:_db_url_escape Unexecuted instantiation: ipc.c:_db_url_escape Unexecuted instantiation: core_stats.c:_db_url_escape Unexecuted instantiation: route_struct.c:_db_url_escape Unexecuted instantiation: dset.c:_db_url_escape Unexecuted instantiation: pt_scaling.c:_db_url_escape Unexecuted instantiation: pt_load.c:_db_url_escape Unexecuted instantiation: sr_module.c:_db_url_escape Unexecuted instantiation: action.c:_db_url_escape Unexecuted instantiation: flags.c:_db_url_escape Unexecuted instantiation: db_insertq.c:_db_url_escape Unexecuted instantiation: db.c:_db_url_escape Unexecuted instantiation: proto_tcp.c:_db_url_escape Unexecuted instantiation: proto_udp.c:_db_url_escape Unexecuted instantiation: trans.c:_db_url_escape Unexecuted instantiation: net_tcp_proc.c:_db_url_escape Unexecuted instantiation: net_tcp.c:_db_url_escape Unexecuted instantiation: tcp_common.c:_db_url_escape Unexecuted instantiation: net_udp.c:_db_url_escape Unexecuted instantiation: tcp_conn_profile.c:_db_url_escape Unexecuted instantiation: trans_trace.c:_db_url_escape Unexecuted instantiation: net_tcp_report.c:_db_url_escape Unexecuted instantiation: mi.c:_db_url_escape Unexecuted instantiation: item.c:_db_url_escape Unexecuted instantiation: sdp.c:_db_url_escape Unexecuted instantiation: sdp_helpr_funcs.c:_db_url_escape Unexecuted instantiation: digest_parser.c:_db_url_escape Unexecuted instantiation: param_parser.c:_db_url_escape Unexecuted instantiation: parse_contact.c:_db_url_escape Unexecuted instantiation: parse_body.c:_db_url_escape Unexecuted instantiation: parse_security.c:_db_url_escape Unexecuted instantiation: parse_call_info.c:_db_url_escape Unexecuted instantiation: parse_event.c:_db_url_escape Unexecuted instantiation: parse_disposition.c:_db_url_escape Unexecuted instantiation: parse_authenticate.c:_db_url_escape Unexecuted instantiation: parser_f.c:_db_url_escape Unexecuted instantiation: parse_rpid.c:_db_url_escape Unexecuted instantiation: parse_ppi.c:_db_url_escape Unexecuted instantiation: parse_fcaps.c:_db_url_escape Unexecuted instantiation: parse_rr.c:_db_url_escape Unexecuted instantiation: parse_param.c:_db_url_escape Unexecuted instantiation: parse_diversion.c:_db_url_escape Unexecuted instantiation: parse_nameaddr.c:_db_url_escape Unexecuted instantiation: parse_expires.c:_db_url_escape Unexecuted instantiation: parse_refer_to.c:_db_url_escape Unexecuted instantiation: parse_from.c:_db_url_escape Unexecuted instantiation: parse_pai.c:_db_url_escape Unexecuted instantiation: event_interface.c:_db_url_escape Unexecuted instantiation: receive.c:_db_url_escape Unexecuted instantiation: ip_addr.c:_db_url_escape Unexecuted instantiation: async.c:_db_url_escape Unexecuted instantiation: daemonize.c:_db_url_escape Unexecuted instantiation: timer.c:_db_url_escape Unexecuted instantiation: trace_api.c:_db_url_escape Unexecuted instantiation: mod_fix.c:_db_url_escape Unexecuted instantiation: reactor.c:_db_url_escape Unexecuted instantiation: forward.c:_db_url_escape Unexecuted instantiation: xlog.c:_db_url_escape Unexecuted instantiation: blacklists.c:_db_url_escape Unexecuted instantiation: usr_avp.c:_db_url_escape Unexecuted instantiation: resolve.c:_db_url_escape Unexecuted instantiation: io_wait.c:_db_url_escape Unexecuted instantiation: transformations.c:_db_url_escape Unexecuted instantiation: sr_module_deps.c:_db_url_escape Unexecuted instantiation: cfg_reload.c:_db_url_escape Unexecuted instantiation: time_rec.c:_db_url_escape Unexecuted instantiation: status_report.c:_db_url_escape Unexecuted instantiation: signals.c:_db_url_escape Unexecuted instantiation: db_id.c:_db_url_escape Unexecuted instantiation: csv.c:_db_url_escape Unexecuted instantiation: msg_translator.c:_db_url_escape Unexecuted instantiation: md5utils.c:_db_url_escape Unexecuted instantiation: cfg.tab.c:_db_url_escape Unexecuted instantiation: modparam.c:_db_url_escape Unexecuted instantiation: crc.c:_db_url_escape Unexecuted instantiation: lex.yy.c:_db_url_escape Unexecuted instantiation: cfg_pp.c:_db_url_escape Unexecuted instantiation: shutdown.c:_db_url_escape Unexecuted instantiation: core_cmds.c:_db_url_escape Unexecuted instantiation: cachedb.c:_db_url_escape Unexecuted instantiation: cachedb_id.c:_db_url_escape |
1596 | | |
1597 | | int user2uid(int* uid, int* gid, char* user); |
1598 | | |
1599 | | int group2gid(int* gid, char* group); |
1600 | | |
1601 | | char * NTcopy_str( str *s ); |
1602 | | |
1603 | | /* utility function to give each children a unique seed */ |
1604 | | void seed_child(unsigned int seed); |
1605 | | |
1606 | | |
1607 | | int parse_reply_codes( str *options_reply_codes_str, |
1608 | | int **options_reply_codes, int *options_codes_no); |
1609 | | |
1610 | | void base64encode(unsigned char *out, unsigned char *in, int inlen); |
1611 | | int base64decode(unsigned char *out,unsigned char *in,int len); |
1612 | | |
1613 | | void base64urlencode(unsigned char *out, unsigned char *in, int inlen); |
1614 | | int base64urldecode(unsigned char *out,unsigned char *in,int len); |
1615 | | |
1616 | | /* |
1617 | | * "word64" is a combination between: |
1618 | | * - RFC 3261-compatible "word" token characters |
1619 | | * - modulo-64 encoding of base64 |
1620 | | */ |
1621 | | void word64encode(unsigned char *out, unsigned char *in, int inlen); |
1622 | | int word64decode(unsigned char *out, unsigned char *in, int len); |
1623 | | |
1624 | | void _base32encode(unsigned char *out, unsigned char *in, int inlen, |
1625 | | unsigned char pad_char); |
1626 | | int _base32decode(unsigned char *out, unsigned char *in, int len, |
1627 | | unsigned char pad_char); |
1628 | | |
1629 | | #define base32encode(out, in, inlen) _base32encode(out, in, inlen, '=') |
1630 | | |
1631 | | /* also accepts lowercase letters as equivalent encoding characters |
1632 | | * of uppercase letters */ |
1633 | | #define base32decode(out, in, len) _base32decode(out, in, len, '=') |
1634 | | |
1635 | | /* same as base32 but uses '-' instead of '=' as pad character */ |
1636 | | #define word32encode(out, in, inlen) _base32encode(out, in, inlen, '-') |
1637 | | #define word32decode(out, in, len) _base32decode(out, in, len, '-') |
1638 | | |
1639 | 0 | #define calc_base64_encode_len(_l) (((_l)/3 + ((_l)%3?1:0))*4) |
1640 | | #define calc_max_base64_decode_len(_l) ((_l)*3/4) |
1641 | | |
1642 | | #define calc_word64_encode_len calc_base64_encode_len |
1643 | | #define calc_max_word64_decode_len calc_max_base64_decode_len |
1644 | | |
1645 | | #define calc_base32_encode_len(_l) (((_l)/5 + ((_l)%5?1:0))*8) |
1646 | | #define calc_max_base32_decode_len(_l) ((_l)*5/8) |
1647 | | |
1648 | | #define calc_word32_encode_len calc_base32_encode_len |
1649 | | #define calc_max_word32_decode_len calc_max_base32_decode_len |
1650 | | |
1651 | | #ifdef howmany |
1652 | | #undef howmany |
1653 | | #endif |
1654 | | #define howmany(x, y) (sizeof(x) / sizeof(y)) |
1655 | | |
1656 | | /* waits for maximum _timeout microseconds for the _cond condition to be |
1657 | | * satisfied, sleeping every _inc microseconds */ |
1658 | | #define busy_wait_for(_cond, _timeout, _inc) \ |
1659 | 0 | do { \ |
1660 | 0 | unsigned _retries = (_timeout)/(_inc);\ |
1661 | 0 | while (!(_cond) && --_retries > 0) \ |
1662 | 0 | usleep(_inc); \ |
1663 | 0 | } while (0) |
1664 | | |
1665 | | #endif |