OpenCoverage

misc.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/openssh/src/misc.c
Switch to Source codePreprocessed file
LineSourceCount
1-
2-
3-
4-
5-
6-
7-
8-
9-
10-
11-
12-
13-
14-
15-
16-
17-
18-
19-
20char *-
21chop(char *s)-
22{-
23 char *t = s;-
24 while (*
*tDescription
TRUEevaluated 2560 times by 1 test
Evaluated by:
  • test_kex
FALSEnever evaluated
t
*tDescription
TRUEevaluated 2560 times by 1 test
Evaluated by:
  • test_kex
FALSEnever evaluated
) {
0-2560
25 if (*
*t == '\n'Description
TRUEevaluated 64 times by 1 test
Evaluated by:
  • test_kex
FALSEevaluated 2496 times by 1 test
Evaluated by:
  • test_kex
t == '\n'
*t == '\n'Description
TRUEevaluated 64 times by 1 test
Evaluated by:
  • test_kex
FALSEevaluated 2496 times by 1 test
Evaluated by:
  • test_kex
|| *
*t == '\r'Description
TRUEevaluated 64 times by 1 test
Evaluated by:
  • test_kex
FALSEevaluated 2432 times by 1 test
Evaluated by:
  • test_kex
t == '\r'
*t == '\r'Description
TRUEevaluated 64 times by 1 test
Evaluated by:
  • test_kex
FALSEevaluated 2432 times by 1 test
Evaluated by:
  • test_kex
) {
64-2496
26 *t = '\0';-
27 return
executed 128 times by 1 test: return s;
Executed by:
  • test_kex
s;
executed 128 times by 1 test: return s;
Executed by:
  • test_kex
128
28 }-
29 t++;-
30 }
executed 2432 times by 1 test: end of block
Executed by:
  • test_kex
2432
31 return
never executed: return s;
s;
never executed: return s;
0
32-
33}-
34-
35-
36int-
37set_nonblock(int fd)-
38{-
39 int val;-
40-
41 val = fcntl(fd, -
42 3-
43 );-
44 if (val < 0
val < 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
45 error("fcntl(%d, F_GETFL): %s", fd, strerror(-
46 (*__errno_location ())-
47 ));-
48 return
never executed: return (-1);
(-1);
never executed: return (-1);
0
49 }-
50 if (val &
val & 04000Description
TRUEnever evaluated
FALSEnever evaluated
0
51 04000
val & 04000Description
TRUEnever evaluated
FALSEnever evaluated
0
52 ) {-
53 debug3("fd %d is O_NONBLOCK", fd);-
54 return
never executed: return (0);
(0);
never executed: return (0);
0
55 }-
56 debug2("fd %d setting O_NONBLOCK", fd);-
57 val |= -
58 04000-
59 ;-
60 if (fcntl(fd,
fcntl(fd, 4 , val) == -1Description
TRUEnever evaluated
FALSEnever evaluated
0
61 4
fcntl(fd, 4 , val) == -1Description
TRUEnever evaluated
FALSEnever evaluated
0
62 , val) == -1
fcntl(fd, 4 , val) == -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
63 debug("fcntl(%d, F_SETFL, O_NONBLOCK): %s", fd,-
64 strerror(-
65 (*__errno_location ())-
66 ));-
67 return
never executed: return (-1);
(-1);
never executed: return (-1);
0
68 }-
69 return
never executed: return (0);
(0);
never executed: return (0);
0
70}-
71-
72int-
73unset_nonblock(int fd)-
74{-
75 int val;-
76-
77 val = fcntl(fd, -
78 3-
79 );-
80 if (val < 0
val < 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
81 error("fcntl(%d, F_GETFL): %s", fd, strerror(-
82 (*__errno_location ())-
83 ));-
84 return
never executed: return (-1);
(-1);
never executed: return (-1);
0
85 }-
86 if (!(val &
!(val & 04000 )Description
TRUEnever evaluated
FALSEnever evaluated
0
87 04000
!(val & 04000 )Description
TRUEnever evaluated
FALSEnever evaluated
0
88 )
!(val & 04000 )Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
89 debug3("fd %d is not O_NONBLOCK", fd);-
90 return
never executed: return (0);
(0);
never executed: return (0);
0
91 }-
92 debug("fd %d clearing O_NONBLOCK", fd);-
93 val &= ~-
94 04000-
95 ;-
96 if (fcntl(fd,
fcntl(fd, 4 , val) == -1Description
TRUEnever evaluated
FALSEnever evaluated
0
97 4
fcntl(fd, 4 , val) == -1Description
TRUEnever evaluated
FALSEnever evaluated
0
98 , val) == -1
fcntl(fd, 4 , val) == -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
99 debug("fcntl(%d, F_SETFL, ~O_NONBLOCK): %s",-
100 fd, strerror(-
101 (*__errno_location ())-
102 ));-
103 return
never executed: return (-1);
(-1);
never executed: return (-1);
0
104 }-
105 return
never executed: return (0);
(0);
never executed: return (0);
0
106}-
107-
108const char *-
109ssh_gai_strerror(int gaierr)-
110{-
111 if (gaierr ==
gaierr == -11Description
TRUEnever evaluated
FALSEnever evaluated
0
112 -11
gaierr == -11Description
TRUEnever evaluated
FALSEnever evaluated
0
113 && -
114 (*
(*__errno_location ()) != 0Description
TRUEnever evaluated
FALSEnever evaluated
__errno_location ())
(*__errno_location ()) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
115 != 0
(*__errno_location ()) != 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
116 return
never executed: return strerror( (*__errno_location ()) );
strerror(
never executed: return strerror( (*__errno_location ()) );
0
117 (*__errno_location ())
never executed: return strerror( (*__errno_location ()) );
0
118 );
never executed: return strerror( (*__errno_location ()) );
0
119 return
never executed: return gai_strerror(gaierr);
gai_strerror(gaierr);
never executed: return gai_strerror(gaierr);
0
120}-
121-
122-
123void-
124set_nodelay(int fd)-
125{-
126 int opt;-
127 socklen_t optlen;-
128-
129 optlen = sizeof opt;-
130 if (getsockopt(fd,
getsockopt(fd,...&optlen) == -1Description
TRUEnever evaluated
FALSEnever evaluated
0
131 IPPROTO_TCP
getsockopt(fd,...&optlen) == -1Description
TRUEnever evaluated
FALSEnever evaluated
0
132 ,
getsockopt(fd,...&optlen) == -1Description
TRUEnever evaluated
FALSEnever evaluated
0
133 1
getsockopt(fd,...&optlen) == -1Description
TRUEnever evaluated
FALSEnever evaluated
0
134 , &opt, &optlen) == -1
getsockopt(fd,...&optlen) == -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
135 debug("getsockopt TCP_NODELAY: %.100s", strerror(-
136 (*__errno_location ())-
137 ));-
138 return;
never executed: return;
0
139 }-
140 if (opt == 1
opt == 1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
141 debug2("fd %d is TCP_NODELAY", fd);-
142 return;
never executed: return;
0
143 }-
144 opt = 1;-
145 debug2("fd %d setting TCP_NODELAY", fd);-
146 if (setsockopt(fd,
setsockopt(fd,...eof opt) == -1Description
TRUEnever evaluated
FALSEnever evaluated
0
147 IPPROTO_TCP
setsockopt(fd,...eof opt) == -1Description
TRUEnever evaluated
FALSEnever evaluated
0
148 ,
setsockopt(fd,...eof opt) == -1Description
TRUEnever evaluated
FALSEnever evaluated
0
149 1
setsockopt(fd,...eof opt) == -1Description
TRUEnever evaluated
FALSEnever evaluated
0
150 , &opt, sizeof opt) == -1
setsockopt(fd,...eof opt) == -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
151 error("setsockopt TCP_NODELAY: %.100s", strerror(
never executed: error("setsockopt TCP_NODELAY: %.100s", strerror( (*__errno_location ()) ));
0
152 (*__errno_location ())
never executed: error("setsockopt TCP_NODELAY: %.100s", strerror( (*__errno_location ()) ));
0
153 ));
never executed: error("setsockopt TCP_NODELAY: %.100s", strerror( (*__errno_location ()) ));
0
154}
never executed: end of block
0
155-
156-
157int-
158set_reuseaddr(int fd)-
159{-
160 int on = 1;-
161-
162 if (setsockopt(fd,
setsockopt(fd,...eof(on)) == -1Description
TRUEnever evaluated
FALSEnever evaluated
0
163 1
setsockopt(fd,...eof(on)) == -1Description
TRUEnever evaluated
FALSEnever evaluated
0
164 ,
setsockopt(fd,...eof(on)) == -1Description
TRUEnever evaluated
FALSEnever evaluated
0
165 2
setsockopt(fd,...eof(on)) == -1Description
TRUEnever evaluated
FALSEnever evaluated
0
166 , &on, sizeof(on)) == -1
setsockopt(fd,...eof(on)) == -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
167 error("setsockopt SO_REUSEADDR fd %d: %s", fd, strerror(-
168 (*__errno_location ())-
169 ));-
170 return
never executed: return -1;
-1;
never executed: return -1;
0
171 }-
172 return
never executed: return 0;
0;
never executed: return 0;
0
173}-
174-
175-
176char *-
177get_rdomain(int fd)-
178{-
179 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
180 ((void *)0)
never executed: return ((void *)0) ;
0
181 ;
never executed: return ((void *)0) ;
0
182-
183}-
184-
185int-
186set_rdomain(int fd, const char *name)-
187{-
188 error("Setting routing domain is not supported on this platform");-
189 return
never executed: return -1;
-1;
never executed: return -1;
0
190-
191}-
192-
193-
194-
195-
196-
197-
198static char *-
199strdelim_internal(char **s, int split_equals)-
200{-
201 char *old;-
202 int wspace = 0;-
203-
204 if (*
*s == ((void *)0)Description
TRUEevaluated 33 times by 1 test
Evaluated by:
  • sshd
FALSEevaluated 52 times by 1 test
Evaluated by:
  • sshd
s ==
*s == ((void *)0)Description
TRUEevaluated 33 times by 1 test
Evaluated by:
  • sshd
FALSEevaluated 52 times by 1 test
Evaluated by:
  • sshd
33-52
205 ((void *)0)
*s == ((void *)0)Description
TRUEevaluated 33 times by 1 test
Evaluated by:
  • sshd
FALSEevaluated 52 times by 1 test
Evaluated by:
  • sshd
33-52
206 )-
207 return
executed 33 times by 1 test: return ((void *)0) ;
Executed by:
  • sshd
executed 33 times by 1 test: return ((void *)0) ;
Executed by:
  • sshd
33
208 ((void *)0)
executed 33 times by 1 test: return ((void *)0) ;
Executed by:
  • sshd
33
209 ;
executed 33 times by 1 test: return ((void *)0) ;
Executed by:
  • sshd
33
210-
211 old = *s;-
212-
213 *s = -
214 __builtin_strpbrk (-
215 *s-
216 , -
217 split_equals ? " \t\r\n" "\"" "=" : " \t\r\n" "\""-
218 )-
219 -
220 ;-
221 if (*
*s == ((void *)0)Description
TRUEevaluated 25 times by 1 test
Evaluated by:
  • sshd
FALSEevaluated 27 times by 1 test
Evaluated by:
  • sshd
s ==
*s == ((void *)0)Description
TRUEevaluated 25 times by 1 test
Evaluated by:
  • sshd
FALSEevaluated 27 times by 1 test
Evaluated by:
  • sshd
25-27
222 ((void *)0)
*s == ((void *)0)Description
TRUEevaluated 25 times by 1 test
Evaluated by:
  • sshd
FALSEevaluated 27 times by 1 test
Evaluated by:
  • sshd
25-27
223 )-
224 return
executed 25 times by 1 test: return (old);
Executed by:
  • sshd
(old);
executed 25 times by 1 test: return (old);
Executed by:
  • sshd
25
225-
226 if (*
*s[0] == '\"'Description
TRUEnever evaluated
FALSEevaluated 27 times by 1 test
Evaluated by:
  • sshd
s[0] == '\"'
*s[0] == '\"'Description
TRUEnever evaluated
FALSEevaluated 27 times by 1 test
Evaluated by:
  • sshd
) {
0-27
227 memmove(*s, *s + 1, strlen(*s));-
228-
229 if ((*
(*s = __builti...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
s =
(*s = __builti...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
230 __builtin_strpbrk (
(*s = __builti...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
231 *s
(*s = __builti...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
232 ,
(*s = __builti...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
233 "\""
(*s = __builti...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
234 )
(*s = __builti...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
235 ) ==
(*s = __builti...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
236 ((void *)0)
(*s = __builti...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
237 ) {-
238 return
never executed: return ( ((void *)0) );
(
never executed: return ( ((void *)0) );
0
239 ((void *)0)
never executed: return ( ((void *)0) );
0
240 );
never executed: return ( ((void *)0) );
0
241 } else {-
242 *s[0] = '\0';-
243 *s += -
244 __builtin_strspn (-
245 *s + 1-
246 , -
247 " \t\r\n"-
248 ) -
249 + 1;-
250 return
never executed: return (old);
(old);
never executed: return (old);
0
251 }-
252 }-
253-
254-
255 if (split_equals
split_equalsDescription
TRUEevaluated 27 times by 1 test
Evaluated by:
  • sshd
FALSEnever evaluated
&& *
*s[0] == '='Description
TRUEnever evaluated
FALSEevaluated 27 times by 1 test
Evaluated by:
  • sshd
s[0] == '='
*s[0] == '='Description
TRUEnever evaluated
FALSEevaluated 27 times by 1 test
Evaluated by:
  • sshd
)
0-27
256 wspace = 1;
never executed: wspace = 1;
0
257 *s[0] = '\0';-
258-
259-
260 *s += -
261 __builtin_strspn (-
262 *s + 1-
263 , -
264 " \t\r\n"-
265 ) -
266 + 1;-
267 if (split_equals
split_equalsDescription
TRUEevaluated 27 times by 1 test
Evaluated by:
  • sshd
FALSEnever evaluated
&& *
*s[0] == '='Description
TRUEnever evaluated
FALSEevaluated 27 times by 1 test
Evaluated by:
  • sshd
s[0] == '='
*s[0] == '='Description
TRUEnever evaluated
FALSEevaluated 27 times by 1 test
Evaluated by:
  • sshd
&& !wspace
!wspaceDescription
TRUEnever evaluated
FALSEnever evaluated
)
0-27
268 *
never executed: *s += __builtin_strspn ( *s + 1 , " \t\r\n" ) + 1;
s +=
never executed: *s += __builtin_strspn ( *s + 1 , " \t\r\n" ) + 1;
0
269 __builtin_strspn (
never executed: *s += __builtin_strspn ( *s + 1 , " \t\r\n" ) + 1;
0
270 *s + 1
never executed: *s += __builtin_strspn ( *s + 1 , " \t\r\n" ) + 1;
0
271 ,
never executed: *s += __builtin_strspn ( *s + 1 , " \t\r\n" ) + 1;
0
272 " \t\r\n"
never executed: *s += __builtin_strspn ( *s + 1 , " \t\r\n" ) + 1;
0
273 )
never executed: *s += __builtin_strspn ( *s + 1 , " \t\r\n" ) + 1;
0
274 + 1;
never executed: *s += __builtin_strspn ( *s + 1 , " \t\r\n" ) + 1;
0
275-
276 return
executed 27 times by 1 test: return (old);
Executed by:
  • sshd
(old);
executed 27 times by 1 test: return (old);
Executed by:
  • sshd
27
277}-
278-
279-
280-
281-
282-
283char *-
284strdelim(char **s)-
285{-
286 return
executed 85 times by 1 test: return strdelim_internal(s, 1);
Executed by:
  • sshd
strdelim_internal(s, 1);
executed 85 times by 1 test: return strdelim_internal(s, 1);
Executed by:
  • sshd
85
287}-
288-
289-
290-
291-
292char *-
293strdelimw(char **s)-
294{-
295 return
never executed: return strdelim_internal(s, 0);
strdelim_internal(s, 0);
never executed: return strdelim_internal(s, 0);
0
296}-
297-
298struct passwd *-
299pwcopy(struct passwd *pw)-
300{-
301 struct passwd *copy = xcalloc(1, sizeof(*copy));-
302-
303 copy->pw_name = xstrdup(pw->pw_name);-
304 copy->pw_passwd = xstrdup(pw->pw_passwd);-
305-
306 copy->pw_gecos = xstrdup(pw->pw_gecos);-
307-
308 copy->pw_uid = pw->pw_uid;-
309 copy->pw_gid = pw->pw_gid;-
310 copy->pw_dir = xstrdup(pw->pw_dir);-
311 copy->pw_shell = xstrdup(pw->pw_shell);-
312 return
executed 2 times by 1 test: return copy;
Executed by:
  • sshd
copy;
executed 2 times by 1 test: return copy;
Executed by:
  • sshd
2
313}-
314-
315-
316-
317-
318-
319-
320int-
321a2port(const char *s)-
322{-
323 long long port;-
324 const char *errstr;-
325-
326 port = strtonum(s, 0, 65535, &errstr);-
327 if (errstr !=
errstr != ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 2 times by 1 test
Evaluated by:
  • sshd
0-2
328 ((void *)0)
errstr != ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 2 times by 1 test
Evaluated by:
  • sshd
0-2
329 )-
330 return
never executed: return -1;
-1;
never executed: return -1;
0
331 return
executed 2 times by 1 test: return (int)port;
Executed by:
  • sshd
(int)port;
executed 2 times by 1 test: return (int)port;
Executed by:
  • sshd
2
332}-
333-
334int-
335a2tun(const char *s, int *remote)-
336{-
337 const char *errstr = -
338 ((void *)0)-
339 ;-
340 char *sp, *ep;-
341 int tun;-
342-
343 if (remote !=
remote != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
344 ((void *)0)
remote != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
345 ) {-
346 *remote = 0x7fffffff;-
347 sp = xstrdup(s);-
348 if ((
(ep = (__exten...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
ep =
(ep = (__exten...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
349 (__extension__ (__builtin_constant_p (
__builtin_constant_p ( ':' )Description
TRUEnever evaluated
FALSEnever evaluated
(ep = (__exten...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
350 ':'
__builtin_constant_p ( ':' )Description
TRUEnever evaluated
FALSEnever evaluated
(ep = (__exten...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
351 )
__builtin_constant_p ( ':' )Description
TRUEnever evaluated
FALSEnever evaluated
&& !__builtin_constant_p (
!__builtin_constant_p ( sp )Description
TRUEnever evaluated
FALSEnever evaluated
(ep = (__exten...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
352 sp
!__builtin_constant_p ( sp )Description
TRUEnever evaluated
FALSEnever evaluated
(ep = (__exten...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
353 )
!__builtin_constant_p ( sp )Description
TRUEnever evaluated
FALSEnever evaluated
&& (
( ':' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
(ep = (__exten...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
354 ':'
( ':' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
(ep = (__exten...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
355 ) == '\0'
( ':' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
? (char *) __rawmemchr (
(ep = (__exten...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
356 sp
(ep = (__exten...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
357 ,
(ep = (__exten...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
358 ':'
(ep = (__exten...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
359 ) : __builtin_strchr (
(ep = (__exten...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
360 sp
(ep = (__exten...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
361 ,
(ep = (__exten...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
362 ':'
(ep = (__exten...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
363 )))
(ep = (__exten...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
364 ) ==
(ep = (__exten...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
365 ((void *)0)
(ep = (__exten...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
366 ) {-
367 free(sp);-
368 return
never executed: return (a2tun(s, ((void *)0) ));
(a2tun(s,
never executed: return (a2tun(s, ((void *)0) ));
0
369 ((void *)0)
never executed: return (a2tun(s, ((void *)0) ));
0
370 ));
never executed: return (a2tun(s, ((void *)0) ));
0
371 }-
372 ep[0] = '\0'; ep++;-
373 *remote = a2tun(ep, -
374 ((void *)0)-
375 );-
376 tun = a2tun(sp, -
377 ((void *)0)-
378 );-
379 free(sp);-
380 return
never executed: return (*remote == (0x7fffffff - 1) ? *remote : tun);
(*
*remote == (0x7fffffff - 1)Description
TRUEnever evaluated
FALSEnever evaluated
remote == (0x7fffffff - 1)
*remote == (0x7fffffff - 1)Description
TRUEnever evaluated
FALSEnever evaluated
? *remote : tun);
never executed: return (*remote == (0x7fffffff - 1) ? *remote : tun);
0
381 }-
382-
383 if (strcasecmp(s, "any") == 0
strcasecmp(s, "any") == 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
384 return
never executed: return (0x7fffffff);
(0x7fffffff);
never executed: return (0x7fffffff);
0
385-
386 tun = strtonum(s, 0, (0x7fffffff - 2), &errstr);-
387 if (errstr !=
errstr != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
388 ((void *)0)
errstr != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
389 )-
390 return
never executed: return ((0x7fffffff - 1));
((0x7fffffff - 1));
never executed: return ((0x7fffffff - 1));
0
391-
392 return
never executed: return (tun);
(tun);
never executed: return (tun);
0
393}-
394long-
395convtime(const char *s)-
396{-
397 long total, secs, multiplier = 1;-
398 const char *p;-
399 char *endp;-
400-
401 -
402(*__errno_location ()) -
403 = 0;-
404 total = 0;-
405 p = s;-
406-
407 if (p ==
p == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 12 times by 1 test
Evaluated by:
  • test_conversion
0-12
408 ((void *)0)
p == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 12 times by 1 test
Evaluated by:
  • test_conversion
0-12
409 || *
*p == '\0'Description
TRUEnever evaluated
FALSEevaluated 12 times by 1 test
Evaluated by:
  • test_conversion
p == '\0'
*p == '\0'Description
TRUEnever evaluated
FALSEevaluated 12 times by 1 test
Evaluated by:
  • test_conversion
)
0-12
410 return
never executed: return -1;
-1;
never executed: return -1;
0
411-
412 while (*
*pDescription
TRUEevaluated 13 times by 1 test
Evaluated by:
  • test_conversion
FALSEevaluated 7 times by 1 test
Evaluated by:
  • test_conversion
p
*pDescription
TRUEevaluated 13 times by 1 test
Evaluated by:
  • test_conversion
FALSEevaluated 7 times by 1 test
Evaluated by:
  • test_conversion
) {
7-13
413 secs = strtol(p, &endp, 10);-
414 if (p == endp
p == endpDescription
TRUEnever evaluated
FALSEevaluated 13 times by 1 test
Evaluated by:
  • test_conversion
||
0-13
415 (-
416 (*
(*__errno_location ()) == 34Description
TRUEevaluated 2 times by 1 test
Evaluated by:
  • test_conversion
FALSEevaluated 11 times by 1 test
Evaluated by:
  • test_conversion
__errno_location ())
(*__errno_location ()) == 34Description
TRUEevaluated 2 times by 1 test
Evaluated by:
  • test_conversion
FALSEevaluated 11 times by 1 test
Evaluated by:
  • test_conversion
2-11
417 ==
(*__errno_location ()) == 34Description
TRUEevaluated 2 times by 1 test
Evaluated by:
  • test_conversion
FALSEevaluated 11 times by 1 test
Evaluated by:
  • test_conversion
2-11
418 34
(*__errno_location ()) == 34Description
TRUEevaluated 2 times by 1 test
Evaluated by:
  • test_conversion
FALSEevaluated 11 times by 1 test
Evaluated by:
  • test_conversion
2-11
419 && (secs ==
secs == (-0x7f...fffffffL - 1L)Description
TRUEnever evaluated
FALSEevaluated 2 times by 1 test
Evaluated by:
  • test_conversion
0-2
420 (-0x7fffffffffffffffL - 1L)
secs == (-0x7f...fffffffL - 1L)Description
TRUEnever evaluated
FALSEevaluated 2 times by 1 test
Evaluated by:
  • test_conversion
0-2
421 || secs == 0x7fffffffffffffffL
secs == 0x7fffffffffffffffLDescription
TRUEevaluated 2 times by 1 test
Evaluated by:
  • test_conversion
FALSEnever evaluated
)) ||
0-2
422 secs < 0
secs < 0Description
TRUEevaluated 2 times by 1 test
Evaluated by:
  • test_conversion
FALSEevaluated 9 times by 1 test
Evaluated by:
  • test_conversion
)
2-9
423 return
executed 4 times by 1 test: return -1;
Executed by:
  • test_conversion
-1;
executed 4 times by 1 test: return -1;
Executed by:
  • test_conversion
4
424-
425 switch (*endp++) {-
426 case
executed 2 times by 1 test: case '\0':
Executed by:
  • test_conversion
'\0':
executed 2 times by 1 test: case '\0':
Executed by:
  • test_conversion
2
427 endp--;-
428 break;
executed 2 times by 1 test: break;
Executed by:
  • test_conversion
2
429 case
never executed: case 's':
's':
never executed: case 's':
0
430 case
executed 1 time by 1 test: case 'S':
Executed by:
  • test_conversion
'S':
executed 1 time by 1 test: case 'S':
Executed by:
  • test_conversion
1
431 break;
executed 1 time by 1 test: break;
Executed by:
  • test_conversion
1
432 case
executed 2 times by 1 test: case 'm':
Executed by:
  • test_conversion
'm':
executed 2 times by 1 test: case 'm':
Executed by:
  • test_conversion
2
433 case
executed 1 time by 1 test: case 'M':
Executed by:
  • test_conversion
'M':
executed 1 time by 1 test: case 'M':
Executed by:
  • test_conversion
1
434 multiplier = (1 * 60);-
435 break;
executed 3 times by 1 test: break;
Executed by:
  • test_conversion
3
436 case
executed 1 time by 1 test: case 'h':
Executed by:
  • test_conversion
'h':
executed 1 time by 1 test: case 'h':
Executed by:
  • test_conversion
1
437 case
never executed: case 'H':
'H':
never executed: case 'H':
0
438 multiplier = ((1 * 60) * 60);-
439 break;
executed 1 time by 1 test: break;
Executed by:
  • test_conversion
1
440 case
executed 1 time by 1 test: case 'd':
Executed by:
  • test_conversion
'd':
executed 1 time by 1 test: case 'd':
Executed by:
  • test_conversion
1
441 case
never executed: case 'D':
'D':
never executed: case 'D':
0
442 multiplier = (((1 * 60) * 60) * 24);-
443 break;
executed 1 time by 1 test: break;
Executed by:
  • test_conversion
1
444 case
executed 1 time by 1 test: case 'w':
Executed by:
  • test_conversion
'w':
executed 1 time by 1 test: case 'w':
Executed by:
  • test_conversion
1
445 case
never executed: case 'W':
'W':
never executed: case 'W':
0
446 multiplier = ((((1 * 60) * 60) * 24) * 7);-
447 break;
executed 1 time by 1 test: break;
Executed by:
  • test_conversion
1
448 default
never executed: default:
:
never executed: default:
0
449 return
never executed: return -1;
-1;
never executed: return -1;
0
450 }-
451 if (secs >= 0x7fffffffffffffffL / multiplier
secs >= 0x7fff...L / multiplierDescription
TRUEevaluated 1 time by 1 test
Evaluated by:
  • test_conversion
FALSEevaluated 8 times by 1 test
Evaluated by:
  • test_conversion
)
1-8
452 return
executed 1 time by 1 test: return -1;
Executed by:
  • test_conversion
-1;
executed 1 time by 1 test: return -1;
Executed by:
  • test_conversion
1
453 secs *= multiplier;-
454 if (total >= 0x7fffffffffffffffL - secs
total >= 0x7ff...ffffffL - secsDescription
TRUEnever evaluated
FALSEevaluated 8 times by 1 test
Evaluated by:
  • test_conversion
)
0-8
455 return
never executed: return -1;
-1;
never executed: return -1;
0
456 total += secs;-
457 if (total < 0
total < 0Description
TRUEnever evaluated
FALSEevaluated 8 times by 1 test
Evaluated by:
  • test_conversion
)
0-8
458 return
never executed: return -1;
-1;
never executed: return -1;
0
459 p = endp;-
460 }
executed 8 times by 1 test: end of block
Executed by:
  • test_conversion
8
461-
462 return
executed 7 times by 1 test: return total;
Executed by:
  • test_conversion
total;
executed 7 times by 1 test: return total;
Executed by:
  • test_conversion
7
463}-
464-
465-
466-
467-
468-
469char *-
470put_host_port(const char *host, u_short port)-
471{-
472 char *hoststr;-
473-
474 if (port == 0
port == 0Description
TRUEnever evaluated
FALSEnever evaluated
|| port == 22
port == 22Description
TRUEnever evaluated
FALSEnever evaluated
)
0
475 return
never executed: return(xstrdup(host));
(xstrdup(host));
never executed: return(xstrdup(host));
0
476 if (asprintf(&hoststr, "[%s]:%d", host, (int)port) < 0
asprintf(&host...(int)port) < 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
477 fatal("put_host_port: asprintf: %s", strerror(
never executed: fatal("put_host_port: asprintf: %s", strerror( (*__errno_location ()) ));
0
478 (*__errno_location ())
never executed: fatal("put_host_port: asprintf: %s", strerror( (*__errno_location ()) ));
0
479 ));
never executed: fatal("put_host_port: asprintf: %s", strerror( (*__errno_location ()) ));
0
480 debug3("put_host_port: %s", hoststr);-
481 return
never executed: return hoststr;
hoststr;
never executed: return hoststr;
0
482}-
483static char *-
484hpdelim2(char **cp, char *delim)-
485{-
486 char *s, *old;-
487-
488 if (cp ==
cp == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 2 times by 1 test
Evaluated by:
  • sshd
0-2
489 ((void *)0)
cp == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 2 times by 1 test
Evaluated by:
  • sshd
0-2
490 || *
*cp == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 2 times by 1 test
Evaluated by:
  • sshd
cp ==
*cp == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 2 times by 1 test
Evaluated by:
  • sshd
0-2
491 ((void *)0)
*cp == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 2 times by 1 test
Evaluated by:
  • sshd
0-2
492 )-
493 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
494 ((void *)0)
never executed: return ((void *)0) ;
0
495 ;
never executed: return ((void *)0) ;
0
496-
497 old = s = *cp;-
498 if (*
*s == '['Description
TRUEnever evaluated
FALSEevaluated 2 times by 1 test
Evaluated by:
  • sshd
s == '['
*s == '['Description
TRUEnever evaluated
FALSEevaluated 2 times by 1 test
Evaluated by:
  • sshd
) {
0-2
499 if ((
(s = (__extens...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
s =
(s = (__extens...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
500 (__extension__ (__builtin_constant_p (
__builtin_constant_p ( ']' )Description
TRUEnever evaluated
FALSEnever evaluated
(s = (__extens...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
501 ']'
__builtin_constant_p ( ']' )Description
TRUEnever evaluated
FALSEnever evaluated
(s = (__extens...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
502 )
__builtin_constant_p ( ']' )Description
TRUEnever evaluated
FALSEnever evaluated
&& !__builtin_constant_p (
!__builtin_constant_p ( s )Description
TRUEnever evaluated
FALSEnever evaluated
(s = (__extens...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
503 s
!__builtin_constant_p ( s )Description
TRUEnever evaluated
FALSEnever evaluated
(s = (__extens...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
504 )
!__builtin_constant_p ( s )Description
TRUEnever evaluated
FALSEnever evaluated
&& (
( ']' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
(s = (__extens...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
505 ']'
( ']' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
(s = (__extens...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
506 ) == '\0'
( ']' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
? (char *) __rawmemchr (
(s = (__extens...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
507 s
(s = (__extens...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
508 ,
(s = (__extens...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
509 ']'
(s = (__extens...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
510 ) : __builtin_strchr (
(s = (__extens...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
511 s
(s = (__extens...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
512 ,
(s = (__extens...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
513 ']'
(s = (__extens...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
514 )))
(s = (__extens...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
515 ) ==
(s = (__extens...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
516 ((void *)0)
(s = (__extens...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
517 )-
518 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
519 ((void *)0)
never executed: return ((void *)0) ;
0
520 ;
never executed: return ((void *)0) ;
0
521 else-
522 s++;
never executed: s++;
0
523 } else if ((
(s = __builtin...== ((void *)0)Description
TRUEevaluated 2 times by 1 test
Evaluated by:
  • sshd
FALSEnever evaluated
s =
(s = __builtin...== ((void *)0)Description
TRUEevaluated 2 times by 1 test
Evaluated by:
  • sshd
FALSEnever evaluated
0-2
524 __builtin_strpbrk (
(s = __builtin...== ((void *)0)Description
TRUEevaluated 2 times by 1 test
Evaluated by:
  • sshd
FALSEnever evaluated
0-2
525 s
(s = __builtin...== ((void *)0)Description
TRUEevaluated 2 times by 1 test
Evaluated by:
  • sshd
FALSEnever evaluated
0-2
526 ,
(s = __builtin...== ((void *)0)Description
TRUEevaluated 2 times by 1 test
Evaluated by:
  • sshd
FALSEnever evaluated
0-2
527 ":/"
(s = __builtin...== ((void *)0)Description
TRUEevaluated 2 times by 1 test
Evaluated by:
  • sshd
FALSEnever evaluated
0-2
528 )
(s = __builtin...== ((void *)0)Description
TRUEevaluated 2 times by 1 test
Evaluated by:
  • sshd
FALSEnever evaluated
0-2
529 ) ==
(s = __builtin...== ((void *)0)Description
TRUEevaluated 2 times by 1 test
Evaluated by:
  • sshd
FALSEnever evaluated
0-2
530 ((void *)0)
(s = __builtin...== ((void *)0)Description
TRUEevaluated 2 times by 1 test
Evaluated by:
  • sshd
FALSEnever evaluated
0-2
531 )-
532 s = *cp + strlen(*cp);
executed 2 times by 1 test: s = *cp + strlen(*cp);
Executed by:
  • sshd
2
533-
534 switch (*s) {-
535 case
executed 2 times by 1 test: case '\0':
Executed by:
  • sshd
'\0':
executed 2 times by 1 test: case '\0':
Executed by:
  • sshd
2
536 *cp = -
537 ((void *)0)-
538 ;-
539 break;
executed 2 times by 1 test: break;
Executed by:
  • sshd
2
540-
541 case
never executed: case ':':
':':
never executed: case ':':
0
542 case
never executed: case '/':
'/':
never executed: case '/':
0
543 if (delim !=
delim != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
544 ((void *)0)
delim != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
545 )-
546 *
never executed: *delim = *s;
delim = *s;
never executed: *delim = *s;
0
547 *s = '\0';-
548 *cp = s + 1;-
549 break;
never executed: break;
0
550-
551 default
never executed: default:
:
never executed: default:
0
552 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
553 ((void *)0)
never executed: return ((void *)0) ;
0
554 ;
never executed: return ((void *)0) ;
0
555 }-
556-
557 return
executed 2 times by 1 test: return old;
Executed by:
  • sshd
old;
executed 2 times by 1 test: return old;
Executed by:
  • sshd
2
558}-
559-
560char *-
561hpdelim(char **cp)-
562{-
563 return
executed 2 times by 1 test: return hpdelim2(cp, ((void *)0) );
Executed by:
  • sshd
hpdelim2(cp,
executed 2 times by 1 test: return hpdelim2(cp, ((void *)0) );
Executed by:
  • sshd
2
564 ((void *)0)
executed 2 times by 1 test: return hpdelim2(cp, ((void *)0) );
Executed by:
  • sshd
2
565 );
executed 2 times by 1 test: return hpdelim2(cp, ((void *)0) );
Executed by:
  • sshd
2
566}-
567-
568char *-
569cleanhostname(char *host)-
570{-
571 if (*
*host == '['Description
TRUEnever evaluated
FALSEevaluated 2 times by 1 test
Evaluated by:
  • sshd
host == '['
*host == '['Description
TRUEnever evaluated
FALSEevaluated 2 times by 1 test
Evaluated by:
  • sshd
&& host[strlen(host) - 1] == ']'
host[strlen(host) - 1] == ']'Description
TRUEnever evaluated
FALSEnever evaluated
) {
0-2
572 host[strlen(host) - 1] = '\0';-
573 return
never executed: return (host + 1);
(host + 1);
never executed: return (host + 1);
0
574 } else-
575 return
executed 2 times by 1 test: return host;
Executed by:
  • sshd
host;
executed 2 times by 1 test: return host;
Executed by:
  • sshd
2
576}-
577-
578char *-
579colon(char *cp)-
580{-
581 int flag = 0;-
582-
583 if (*
*cp == ':'Description
TRUEnever evaluated
FALSEnever evaluated
cp == ':'
*cp == ':'Description
TRUEnever evaluated
FALSEnever evaluated
)
0
584 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
585 ((void *)0)
never executed: return ((void *)0) ;
0
586 ;
never executed: return ((void *)0) ;
0
587 if (*
*cp == '['Description
TRUEnever evaluated
FALSEnever evaluated
cp == '['
*cp == '['Description
TRUEnever evaluated
FALSEnever evaluated
)
0
588 flag = 1;
never executed: flag = 1;
0
589-
590 for (; *
*cpDescription
TRUEnever evaluated
FALSEnever evaluated
cp
*cpDescription
TRUEnever evaluated
FALSEnever evaluated
; ++cp) {
0
591 if (*
*cp == '@'Description
TRUEnever evaluated
FALSEnever evaluated
cp == '@'
*cp == '@'Description
TRUEnever evaluated
FALSEnever evaluated
&& *(
*(cp+1) == '['Description
TRUEnever evaluated
FALSEnever evaluated
cp+1) == '['
*(cp+1) == '['Description
TRUEnever evaluated
FALSEnever evaluated
)
0
592 flag = 1;
never executed: flag = 1;
0
593 if (*
*cp == ']'Description
TRUEnever evaluated
FALSEnever evaluated
cp == ']'
*cp == ']'Description
TRUEnever evaluated
FALSEnever evaluated
&& *(
*(cp+1) == ':'Description
TRUEnever evaluated
FALSEnever evaluated
cp+1) == ':'
*(cp+1) == ':'Description
TRUEnever evaluated
FALSEnever evaluated
&& flag
flagDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
594 return
never executed: return (cp+1);
(cp+1);
never executed: return (cp+1);
0
595 if (*
*cp == ':'Description
TRUEnever evaluated
FALSEnever evaluated
cp == ':'
*cp == ':'Description
TRUEnever evaluated
FALSEnever evaluated
&& !flag
!flagDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
596 return
never executed: return (cp);
(cp);
never executed: return (cp);
0
597 if (*
*cp == '/'Description
TRUEnever evaluated
FALSEnever evaluated
cp == '/'
*cp == '/'Description
TRUEnever evaluated
FALSEnever evaluated
)
0
598 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
599 ((void *)0)
never executed: return ((void *)0) ;
0
600 ;
never executed: return ((void *)0) ;
0
601 }
never executed: end of block
0
602 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
603 ((void *)0)
never executed: return ((void *)0) ;
0
604 ;
never executed: return ((void *)0) ;
0
605}-
606int-
607parse_user_host_path(const char *s, char **userp, char **hostp, char **pathp)-
608{-
609 char *user = -
610 ((void *)0)-
611 , *host = -
612 ((void *)0)-
613 , *path = -
614 ((void *)0)-
615 ;-
616 char *sdup, *tmp;-
617 int ret = -1;-
618-
619 if (userp !=
userp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
620 ((void *)0)
userp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
621 )-
622 *
never executed: *userp = ((void *)0) ;
userp =
never executed: *userp = ((void *)0) ;
0
623 ((void *)0)
never executed: *userp = ((void *)0) ;
0
624 ;
never executed: *userp = ((void *)0) ;
0
625 if (hostp !=
hostp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
626 ((void *)0)
hostp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
627 )-
628 *
never executed: *hostp = ((void *)0) ;
hostp =
never executed: *hostp = ((void *)0) ;
0
629 ((void *)0)
never executed: *hostp = ((void *)0) ;
0
630 ;
never executed: *hostp = ((void *)0) ;
0
631 if (pathp !=
pathp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
632 ((void *)0)
pathp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
633 )-
634 *
never executed: *pathp = ((void *)0) ;
pathp =
never executed: *pathp = ((void *)0) ;
0
635 ((void *)0)
never executed: *pathp = ((void *)0) ;
0
636 ;
never executed: *pathp = ((void *)0) ;
0
637-
638 sdup = xstrdup(s);-
639-
640-
641 if ((
(tmp = colon(s...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
tmp = colon(sdup)) ==
(tmp = colon(s...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
642 ((void *)0)
(tmp = colon(s...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
643 )-
644 goto
never executed: goto out;
out;
never executed: goto out;
0
645-
646-
647 *tmp++ = '\0';-
648 if (*
*tmp == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
tmp == '\0'
*tmp == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
)
0
649 tmp = ".";
never executed: tmp = ".";
0
650 path = xstrdup(tmp);-
651-
652-
653 tmp = strrchr(sdup, '@');-
654 if (tmp !=
tmp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
655 ((void *)0)
tmp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
656 ) {-
657 *tmp++ = '\0';-
658 host = xstrdup(cleanhostname(tmp));-
659 if (*
*sdup != '\0'Description
TRUEnever evaluated
FALSEnever evaluated
sdup != '\0'
*sdup != '\0'Description
TRUEnever evaluated
FALSEnever evaluated
)
0
660 user = xstrdup(sdup);
never executed: user = xstrdup(sdup);
0
661 }
never executed: end of block
else {
0
662 host = xstrdup(cleanhostname(sdup));-
663 user = -
664 ((void *)0)-
665 ;-
666 }
never executed: end of block
0
667-
668-
669 if (userp !=
userp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
670 ((void *)0)
userp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
671 ) {-
672 *userp = user;-
673 user = -
674 ((void *)0)-
675 ;-
676 }
never executed: end of block
0
677 if (hostp !=
hostp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
678 ((void *)0)
hostp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
679 ) {-
680 *hostp = host;-
681 host = -
682 ((void *)0)-
683 ;-
684 }
never executed: end of block
0
685 if (pathp !=
pathp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
686 ((void *)0)
pathp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
687 ) {-
688 *pathp = path;-
689 path = -
690 ((void *)0)-
691 ;-
692 }
never executed: end of block
0
693 ret = 0;-
694out:
code before this statement never executed: out:
0
695 free(sdup);-
696 free(user);-
697 free(host);-
698 free(path);-
699 return
never executed: return ret;
ret;
never executed: return ret;
0
700}-
701int-
702parse_user_host_port(const char *s, char **userp, char **hostp, int *portp)-
703{-
704 char *sdup, *cp, *tmp;-
705 char *user = -
706 ((void *)0)-
707 , *host = -
708 ((void *)0)-
709 ;-
710 int port = -1, ret = -1;-
711-
712 if (userp !=
userp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
713 ((void *)0)
userp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
714 )-
715 *
never executed: *userp = ((void *)0) ;
userp =
never executed: *userp = ((void *)0) ;
0
716 ((void *)0)
never executed: *userp = ((void *)0) ;
0
717 ;
never executed: *userp = ((void *)0) ;
0
718 if (hostp !=
hostp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
719 ((void *)0)
hostp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
720 )-
721 *
never executed: *hostp = ((void *)0) ;
hostp =
never executed: *hostp = ((void *)0) ;
0
722 ((void *)0)
never executed: *hostp = ((void *)0) ;
0
723 ;
never executed: *hostp = ((void *)0) ;
0
724 if (portp !=
portp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
725 ((void *)0)
portp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
726 )-
727 *
never executed: *portp = -1;
portp = -1;
never executed: *portp = -1;
0
728-
729 if ((
(sdup = tmp = ...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
sdup = tmp =
(sdup = tmp = ...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
730 (__extension__ (__builtin_constant_p (
__builtin_constant_p ( s )Description
TRUEnever evaluated
FALSEnever evaluated
(sdup = tmp = ...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
731 s
__builtin_constant_p ( s )Description
TRUEnever evaluated
FALSEnever evaluated
(sdup = tmp = ...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
732 )
__builtin_constant_p ( s )Description
TRUEnever evaluated
FALSEnever evaluated
&& ((
((size_t)(cons... *)( s ) == 1)Description
TRUEnever evaluated
FALSEnever evaluated
size_t)(const void *)((
((size_t)(cons... *)( s ) == 1)Description
TRUEnever evaluated
FALSEnever evaluated
(sdup = tmp = ...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
733 s
((size_t)(cons... *)( s ) == 1)Description
TRUEnever evaluated
FALSEnever evaluated
(sdup = tmp = ...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
734 ) + 1) - (size_t)(const void *)(
((size_t)(cons... *)( s ) == 1)Description
TRUEnever evaluated
FALSEnever evaluated
(sdup = tmp = ...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
735 s
((size_t)(cons... *)( s ) == 1)Description
TRUEnever evaluated
FALSEnever evaluated
(sdup = tmp = ...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
736 ) == 1)
((size_t)(cons... *)( s ) == 1)Description
TRUEnever evaluated
FALSEnever evaluated
? (((const
((const char *... ))[0] == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
char *) (
((const char *... ))[0] == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
(sdup = tmp = ...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
737 s
((const char *... ))[0] == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
(sdup = tmp = ...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
738 ))[0] == '\0'
((const char *... ))[0] == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
? (char *) calloc ((size_t) 1, (size_t) 1) : ({ size_t __len = strlen (
(sdup = tmp = ...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
739 s
(sdup = tmp = ...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
740 ) + 1; char *__retval = (char *) malloc (__len); if (__retval != ((void *)0)
__retval != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
) __retval = (char *) memcpy (__retval,
never executed: __retval = (char *) memcpy (__retval, s , __len);
0
741 s
(sdup = tmp = ...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __retval = (char *) memcpy (__retval, s , __len);
0
742 , __len); __retval; })) : __strdup (
(sdup = tmp = ...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
743 s
(sdup = tmp = ...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
744 )))
(sdup = tmp = ...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
745 ) ==
(sdup = tmp = ...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
746 ((void *)0)
(sdup = tmp = ...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
747 )-
748 return
never executed: return -1;
-1;
never executed: return -1;
0
749-
750 if ((
(cp = strrchr(...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
cp = strrchr(tmp, '@')) !=
(cp = strrchr(...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
751 ((void *)0)
(cp = strrchr(...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
752 ) {-
753 *cp = '\0';-
754 if (*
*tmp == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
tmp == '\0'
*tmp == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
)
0
755 goto
never executed: goto out;
out;
never executed: goto out;
0
756 if ((
(user = (__ext...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
user =
(user = (__ext...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
757 (__extension__ (__builtin_constant_p (
__builtin_constant_p ( tmp )Description
TRUEnever evaluated
FALSEnever evaluated
(user = (__ext...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
758 tmp
__builtin_constant_p ( tmp )Description
TRUEnever evaluated
FALSEnever evaluated
(user = (__ext...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
759 )
__builtin_constant_p ( tmp )Description
TRUEnever evaluated
FALSEnever evaluated
&& ((
((size_t)(cons...)( tmp ) == 1)Description
TRUEnever evaluated
FALSEnever evaluated
size_t)(const void *)((
((size_t)(cons...)( tmp ) == 1)Description
TRUEnever evaluated
FALSEnever evaluated
(user = (__ext...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
760 tmp
((size_t)(cons...)( tmp ) == 1)Description
TRUEnever evaluated
FALSEnever evaluated
(user = (__ext...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
761 ) + 1) - (size_t)(const void *)(
((size_t)(cons...)( tmp ) == 1)Description
TRUEnever evaluated
FALSEnever evaluated
(user = (__ext...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
762 tmp
((size_t)(cons...)( tmp ) == 1)Description
TRUEnever evaluated
FALSEnever evaluated
(user = (__ext...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
763 ) == 1)
((size_t)(cons...)( tmp ) == 1)Description
TRUEnever evaluated
FALSEnever evaluated
? (((const
((const char *... ))[0] == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
char *) (
((const char *... ))[0] == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
(user = (__ext...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
764 tmp
((const char *... ))[0] == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
(user = (__ext...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
765 ))[0] == '\0'
((const char *... ))[0] == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
? (char *) calloc ((size_t) 1, (size_t) 1) : ({ size_t __len = strlen (
(user = (__ext...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
766 tmp
(user = (__ext...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
767 ) + 1; char *__retval = (char *) malloc (__len); if (__retval != ((void *)0)
__retval != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
) __retval = (char *) memcpy (__retval,
never executed: __retval = (char *) memcpy (__retval, tmp , __len);
0
768 tmp
(user = (__ext...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __retval = (char *) memcpy (__retval, tmp , __len);
0
769 , __len); __retval; })) : __strdup (
(user = (__ext...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
770 tmp
(user = (__ext...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
771 )))
(user = (__ext...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
772 ) ==
(user = (__ext...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
773 ((void *)0)
(user = (__ext...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
774 )-
775 goto
never executed: goto out;
out;
never executed: goto out;
0
776 tmp = cp + 1;-
777 }
never executed: end of block
0
778-
779 if ((
(cp = hpdelim(...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
cp = hpdelim(&tmp)) ==
(cp = hpdelim(...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
780 ((void *)0)
(cp = hpdelim(...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
781 || *
*cp == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
cp == '\0'
*cp == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
)
0
782 goto
never executed: goto out;
out;
never executed: goto out;
0
783 host = xstrdup(cleanhostname(cp));-
784-
785 if (tmp !=
tmp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
786 ((void *)0)
tmp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
787 && *
*tmp != '\0'Description
TRUEnever evaluated
FALSEnever evaluated
tmp != '\0'
*tmp != '\0'Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
788 if ((
(port = a2port(tmp)) <= 0Description
TRUEnever evaluated
FALSEnever evaluated
port = a2port(tmp)) <= 0
(port = a2port(tmp)) <= 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
789 goto
never executed: goto out;
out;
never executed: goto out;
0
790 }
never executed: end of block
0
791-
792 if (userp !=
userp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
793 ((void *)0)
userp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
794 ) {-
795 *userp = user;-
796 user = -
797 ((void *)0)-
798 ;-
799 }
never executed: end of block
0
800 if (hostp !=
hostp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
801 ((void *)0)
hostp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
802 ) {-
803 *hostp = host;-
804 host = -
805 ((void *)0)-
806 ;-
807 }
never executed: end of block
0
808 if (portp !=
portp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
809 ((void *)0)
portp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
810 )-
811 *
never executed: *portp = port;
portp = port;
never executed: *portp = port;
0
812 ret = 0;-
813 out:
code before this statement never executed: out:
0
814 free(sdup);-
815 free(user);-
816 free(host);-
817 return
never executed: return ret;
ret;
never executed: return ret;
0
818}-
819-
820-
821-
822-
823-
824static int-
825hexchar(const char *s)-
826{-
827 unsigned char result[2];-
828 int i;-
829-
830 for (i = 0; i < 2
i < 2Description
TRUEnever evaluated
FALSEnever evaluated
; i++) {
0
831 if (s[i] >= '0'
s[i] >= '0'Description
TRUEnever evaluated
FALSEnever evaluated
&& s[i] <= '9'
s[i] <= '9'Description
TRUEnever evaluated
FALSEnever evaluated
)
0
832 result[i] = (unsigned char)(s[i] - '0');
never executed: result[i] = (unsigned char)(s[i] - '0');
0
833 else if (s[i] >= 'a'
s[i] >= 'a'Description
TRUEnever evaluated
FALSEnever evaluated
&& s[i] <= 'f'
s[i] <= 'f'Description
TRUEnever evaluated
FALSEnever evaluated
)
0
834 result[i] = (unsigned char)(s[i] - 'a') + 10;
never executed: result[i] = (unsigned char)(s[i] - 'a') + 10;
0
835 else if (s[i] >= 'A'
s[i] >= 'A'Description
TRUEnever evaluated
FALSEnever evaluated
&& s[i] <= 'F'
s[i] <= 'F'Description
TRUEnever evaluated
FALSEnever evaluated
)
0
836 result[i] = (unsigned char)(s[i] - 'A') + 10;
never executed: result[i] = (unsigned char)(s[i] - 'A') + 10;
0
837 else-
838 return
never executed: return -1;
-1;
never executed: return -1;
0
839 }-
840 return
never executed: return (result[0] << 4) | result[1];
(result[0] << 4) | result[1];
never executed: return (result[0] << 4) | result[1];
0
841}-
842-
843-
844-
845-
846-
847static char *-
848urldecode(const char *src)-
849{-
850 char *ret, *dst;-
851 int ch;-
852-
853 ret = xmalloc(strlen(src) + 1);-
854 for (dst = ret; *
*src != '\0'Description
TRUEnever evaluated
FALSEnever evaluated
src != '\0'
*src != '\0'Description
TRUEnever evaluated
FALSEnever evaluated
; src++) {
0
855 switch (*src) {-
856 case
never executed: case '+':
'+':
never executed: case '+':
0
857 *dst++ = ' ';-
858 break;
never executed: break;
0
859 case
never executed: case '%':
'%':
never executed: case '%':
0
860 if (!
! ((*__ctype_b...nt) _ISxdigit)Description
TRUEnever evaluated
FALSEnever evaluated
0
861 ((*__ctype_b_loc ())[(int) ((
! ((*__ctype_b...nt) _ISxdigit)Description
TRUEnever evaluated
FALSEnever evaluated
0
862 (unsigned char)src[1]
! ((*__ctype_b...nt) _ISxdigit)Description
TRUEnever evaluated
FALSEnever evaluated
0
863 ))] & (unsigned short int) _ISxdigit)
! ((*__ctype_b...nt) _ISxdigit)Description
TRUEnever evaluated
FALSEnever evaluated
0
864 ||-
865 !
! ((*__ctype_b...nt) _ISxdigit)Description
TRUEnever evaluated
FALSEnever evaluated
0
866 ((*__ctype_b_loc ())[(int) ((
! ((*__ctype_b...nt) _ISxdigit)Description
TRUEnever evaluated
FALSEnever evaluated
0
867 (unsigned char)src[2]
! ((*__ctype_b...nt) _ISxdigit)Description
TRUEnever evaluated
FALSEnever evaluated
0
868 ))] & (unsigned short int) _ISxdigit)
! ((*__ctype_b...nt) _ISxdigit)Description
TRUEnever evaluated
FALSEnever evaluated
0
869 ||-
870 (
(ch = hexchar(src + 1)) == -1Description
TRUEnever evaluated
FALSEnever evaluated
ch = hexchar(src + 1)) == -1
(ch = hexchar(src + 1)) == -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
871 free(ret);-
872 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
873 ((void *)0)
never executed: return ((void *)0) ;
0
874 ;
never executed: return ((void *)0) ;
0
875 }-
876 *dst++ = ch;-
877 src += 2;-
878 break;
never executed: break;
0
879 default
never executed: default:
:
never executed: default:
0
880 *dst++ = *src;-
881 break;
never executed: break;
0
882 }-
883 }-
884 *dst = '\0';-
885-
886 return
never executed: return ret;
ret;
never executed: return ret;
0
887}-
888int-
889parse_uri(const char *scheme, const char *uri, char **userp, char **hostp,-
890 int *portp, char **pathp)-
891{-
892 char *uridup, *cp, *tmp, ch;-
893 char *user = -
894 ((void *)0)-
895 , *host = -
896 ((void *)0)-
897 , *path = -
898 ((void *)0)-
899 ;-
900 int port = -1, ret = -1;-
901 size_t len;-
902-
903 len = strlen(scheme);-
904 if (-
905 (
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
__extension__ (__builtin_constant_p (
__builtin_constant_p ( len )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
906 len
__builtin_constant_p ( len )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
907 )
__builtin_constant_p ( len )Description
TRUEnever evaluated
FALSEnever evaluated
&& ((__builtin_constant_p (
__builtin_constant_p ( uri )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
908 uri
__builtin_constant_p ( uri )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
909 )
__builtin_constant_p ( uri )Description
TRUEnever evaluated
FALSEnever evaluated
&& strlen (
strlen ( uri )...ze_t) ( len ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
910 uri
strlen ( uri )...ze_t) ( len ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
911 ) < ((size_t) (
strlen ( uri )...ze_t) ( len ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
912 len
strlen ( uri )...ze_t) ( len ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
913 ))
strlen ( uri )...ze_t) ( len ))Description
TRUEnever evaluated
FALSEnever evaluated
) || (__builtin_constant_p (
__builtin_cons...t_p ( scheme )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
914 scheme
__builtin_cons...t_p ( scheme )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
915 )
__builtin_cons...t_p ( scheme )Description
TRUEnever evaluated
FALSEnever evaluated
&& strlen (
strlen ( schem...ze_t) ( len ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
916 scheme
strlen ( schem...ze_t) ( len ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
917 ) < ((size_t) (
strlen ( schem...ze_t) ( len ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
918 len
strlen ( schem...ze_t) ( len ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
919 ))
strlen ( schem...ze_t) ( len ))Description
TRUEnever evaluated
FALSEnever evaluated
)) ? __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
920 uri
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
921 ) && __builtin_constant_p (
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
922 scheme
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
923 ) && (__s1_len = __builtin_strlen (
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
924 uri
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
925 ), __s2_len = __builtin_strlen (
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
926 scheme
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
927 ), (!((size_t)(const void *)((
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
928 uri
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
929 ) + 1) - (size_t)(const void *)(
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
930 uri
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
931 ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
932 scheme
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
933 ) + 1) - (size_t)(const void *)(
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
934 scheme
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
935 ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
936 uri
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
937 ,
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
938 scheme
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
939 ) : (__builtin_constant_p (
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
940 uri
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
941 ) && ((size_t)(const void *)((
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
942 uri
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
943 ) + 1) - (size_t)(const void *)(
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
944 uri
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
945 ) == 1) && (__s1_len = __builtin_strlen (
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
946 uri
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
947 ), __s1_len < 4) ? (__builtin_constant_p (
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
948 scheme
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
949 ) && ((size_t)(const void *)((
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
950 scheme
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
951 ) + 1) - (size_t)(const void *)(
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
952 scheme
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
953 ) == 1) ? __builtin_strcmp (
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
954 uri
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
955 ,
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
956 scheme
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
957 ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
958 scheme
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
959 ); int __result = (((const unsigned char *) (const char *) (
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
960 uri
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
961 ))[0] - __s2[0]); if (__s1_len > 0
__s1_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
962 uri
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
963 ))[1] - __s2[1]); if (__s1_len > 1
__s1_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
964 uri
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
965 ))[2] - __s2[2]); if (__s1_len > 2
__s1_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( uri ))[3] - __s2[3]);
0
966 uri
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( uri ))[3] - __s2[3]);
0
967 ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
968 scheme
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
969 ) && ((size_t)(const void *)((
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
970 scheme
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
971 ) + 1) - (size_t)(const void *)(
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
972 scheme
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
973 ) == 1) && (__s2_len = __builtin_strlen (
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
974 scheme
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
975 ), __s2_len < 4) ? (__builtin_constant_p (
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
976 uri
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
977 ) && ((size_t)(const void *)((
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
978 uri
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
979 ) + 1) - (size_t)(const void *)(
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
980 uri
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
981 ) == 1) ? __builtin_strcmp (
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
982 uri
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
983 ,
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
984 scheme
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
985 ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
986 uri
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
987 ); int __result = (((const unsigned char *) (const char *) (
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
988 scheme
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
989 ))[0] - __s2[0]); if (__s2_len > 0
__s2_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
990 scheme
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
991 ))[1] - __s2[1]); if (__s2_len > 1
__s2_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
992 scheme
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
993 ))[2] - __s2[2]); if (__s2_len > 2
__s2_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( scheme ))[3] - __s2[3]);
0
994 scheme
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( scheme ))[3] - __s2[3]);
0
995 ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
996 uri
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
997 ,
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
998 scheme
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
999 )))); }) : strncmp (
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1000 uri
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1001 ,
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1002 scheme
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1003 ,
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1004 len
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1005 )))
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1006 != 0
(__extension__..., len ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
||
0
1007 (
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
__extension__ (__builtin_constant_p (
__builtin_constant_p ( 3 )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1008 3
__builtin_constant_p ( 3 )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1009 )
__builtin_constant_p ( 3 )Description
TRUEnever evaluated
FALSEnever evaluated
&& ((__builtin_constant_p (
__builtin_cons... ( uri + len )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1010 uri + len
__builtin_cons... ( uri + len )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1011 )
__builtin_cons... ( uri + len )Description
TRUEnever evaluated
FALSEnever evaluated
&& strlen (
strlen ( uri +...size_t) ( 3 ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1012 uri + len
strlen ( uri +...size_t) ( 3 ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1013 ) < ((size_t) (
strlen ( uri +...size_t) ( 3 ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1014 3
strlen ( uri +...size_t) ( 3 ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1015 ))
strlen ( uri +...size_t) ( 3 ))Description
TRUEnever evaluated
FALSEnever evaluated
) || (__builtin_constant_p (
__builtin_constant_p ( "://" )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1016 "://"
__builtin_constant_p ( "://" )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1017 )
__builtin_constant_p ( "://" )Description
TRUEnever evaluated
FALSEnever evaluated
&& strlen (
strlen ( "://"...size_t) ( 3 ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1018 "://"
strlen ( "://"...size_t) ( 3 ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1019 ) < ((size_t) (
strlen ( "://"...size_t) ( 3 ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1020 3
strlen ( "://"...size_t) ( 3 ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1021 ))
strlen ( "://"...size_t) ( 3 ))Description
TRUEnever evaluated
FALSEnever evaluated
)) ? __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1022 uri + len
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1023 ) && __builtin_constant_p (
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1024 "://"
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1025 ) && (__s1_len = __builtin_strlen (
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1026 uri + len
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1027 ), __s2_len = __builtin_strlen (
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1028 "://"
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1029 ), (!((size_t)(const void *)((
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1030 uri + len
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1031 ) + 1) - (size_t)(const void *)(
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1032 uri + len
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1033 ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1034 "://"
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1035 ) + 1) - (size_t)(const void *)(
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1036 "://"
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1037 ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1038 uri + len
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1039 ,
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1040 "://"
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1041 ) : (__builtin_constant_p (
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1042 uri + len
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1043 ) && ((size_t)(const void *)((
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1044 uri + len
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1045 ) + 1) - (size_t)(const void *)(
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1046 uri + len
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1047 ) == 1) && (__s1_len = __builtin_strlen (
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1048 uri + len
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1049 ), __s1_len < 4) ? (__builtin_constant_p (
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1050 "://"
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1051 ) && ((size_t)(const void *)((
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1052 "://"
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1053 ) + 1) - (size_t)(const void *)(
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1054 "://"
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1055 ) == 1) ? __builtin_strcmp (
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1056 uri + len
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1057 ,
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1058 "://"
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1059 ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1060 "://"
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1061 ); int __result = (((const unsigned char *) (const char *) (
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1062 uri + len
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1063 ))[0] - __s2[0]); if (__s1_len > 0
__s1_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1064 uri + len
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1065 ))[1] - __s2[1]); if (__s1_len > 1
__s1_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1066 uri + len
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1067 ))[2] - __s2[2]); if (__s1_len > 2
__s1_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( uri + len ))[3] - __s2[3]);
0
1068 uri + len
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( uri + len ))[3] - __s2[3]);
0
1069 ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1070 "://"
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1071 ) && ((size_t)(const void *)((
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1072 "://"
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1073 ) + 1) - (size_t)(const void *)(
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1074 "://"
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1075 ) == 1) && (__s2_len = __builtin_strlen (
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1076 "://"
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1077 ), __s2_len < 4) ? (__builtin_constant_p (
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1078 uri + len
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1079 ) && ((size_t)(const void *)((
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1080 uri + len
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1081 ) + 1) - (size_t)(const void *)(
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1082 uri + len
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1083 ) == 1) ? __builtin_strcmp (
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1084 uri + len
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1085 ,
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1086 "://"
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1087 ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1088 uri + len
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1089 ); int __result = (((const unsigned char *) (const char *) (
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1090 "://"
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1091 ))[0] - __s2[0]); if (__s2_len > 0
__s2_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1092 "://"
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1093 ))[1] - __s2[1]); if (__s2_len > 1
__s2_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1094 "://"
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1095 ))[2] - __s2[2]); if (__s2_len > 2
__s2_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( "://" ))[3] - __s2[3]);
0
1096 "://"
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( "://" ))[3] - __s2[3]);
0
1097 ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1098 uri + len
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1099 ,
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1100 "://"
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1101 )))); }) : strncmp (
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1102 uri + len
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1103 ,
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1104 "://"
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1105 ,
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1106 3
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1107 )))
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1108 != 0
(__extension__..." , 3 ))) != 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1109 return
never executed: return 1;
1;
never executed: return 1;
0
1110 uri += len + 3;-
1111-
1112 if (userp !=
userp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1113 ((void *)0)
userp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1114 )-
1115 *
never executed: *userp = ((void *)0) ;
userp =
never executed: *userp = ((void *)0) ;
0
1116 ((void *)0)
never executed: *userp = ((void *)0) ;
0
1117 ;
never executed: *userp = ((void *)0) ;
0
1118 if (hostp !=
hostp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1119 ((void *)0)
hostp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1120 )-
1121 *
never executed: *hostp = ((void *)0) ;
hostp =
never executed: *hostp = ((void *)0) ;
0
1122 ((void *)0)
never executed: *hostp = ((void *)0) ;
0
1123 ;
never executed: *hostp = ((void *)0) ;
0
1124 if (portp !=
portp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1125 ((void *)0)
portp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1126 )-
1127 *
never executed: *portp = -1;
portp = -1;
never executed: *portp = -1;
0
1128 if (pathp !=
pathp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1129 ((void *)0)
pathp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1130 )-
1131 *
never executed: *pathp = ((void *)0) ;
pathp =
never executed: *pathp = ((void *)0) ;
0
1132 ((void *)0)
never executed: *pathp = ((void *)0) ;
0
1133 ;
never executed: *pathp = ((void *)0) ;
0
1134-
1135 uridup = tmp = xstrdup(uri);-
1136-
1137-
1138 if ((
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
cp =
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1139 (__extension__ (__builtin_constant_p (
__builtin_constant_p ( '@' )Description
TRUEnever evaluated
FALSEnever evaluated
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1140 '@'
__builtin_constant_p ( '@' )Description
TRUEnever evaluated
FALSEnever evaluated
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1141 )
__builtin_constant_p ( '@' )Description
TRUEnever evaluated
FALSEnever evaluated
&& !__builtin_constant_p (
!__builtin_constant_p ( tmp )Description
TRUEnever evaluated
FALSEnever evaluated
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1142 tmp
!__builtin_constant_p ( tmp )Description
TRUEnever evaluated
FALSEnever evaluated
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1143 )
!__builtin_constant_p ( tmp )Description
TRUEnever evaluated
FALSEnever evaluated
&& (
( '@' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1144 '@'
( '@' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1145 ) == '\0'
( '@' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
? (char *) __rawmemchr (
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1146 tmp
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1147 ,
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1148 '@'
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1149 ) : __builtin_strchr (
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1150 tmp
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1151 ,
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1152 '@'
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1153 )))
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1154 ) !=
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1155 ((void *)0)
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1156 ) {-
1157 char *delim;-
1158-
1159 *cp = '\0';-
1160-
1161 if ((
(delim = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
delim =
(delim = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1162 (__extension__ (__builtin_constant_p (
__builtin_constant_p ( ';' )Description
TRUEnever evaluated
FALSEnever evaluated
(delim = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1163 ';'
__builtin_constant_p ( ';' )Description
TRUEnever evaluated
FALSEnever evaluated
(delim = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1164 )
__builtin_constant_p ( ';' )Description
TRUEnever evaluated
FALSEnever evaluated
&& !__builtin_constant_p (
!__builtin_constant_p ( tmp )Description
TRUEnever evaluated
FALSEnever evaluated
(delim = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1165 tmp
!__builtin_constant_p ( tmp )Description
TRUEnever evaluated
FALSEnever evaluated
(delim = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1166 )
!__builtin_constant_p ( tmp )Description
TRUEnever evaluated
FALSEnever evaluated
&& (
( ';' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
(delim = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1167 ';'
( ';' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
(delim = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1168 ) == '\0'
( ';' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
? (char *) __rawmemchr (
(delim = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1169 tmp
(delim = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1170 ,
(delim = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1171 ';'
(delim = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1172 ) : __builtin_strchr (
(delim = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1173 tmp
(delim = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1174 ,
(delim = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1175 ';'
(delim = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1176 )))
(delim = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1177 ) !=
(delim = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1178 ((void *)0)
(delim = (__ex...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1179 ) {-
1180-
1181 *delim = '\0';-
1182 }
never executed: end of block
0
1183 if (*
*tmp == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
tmp == '\0'
*tmp == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1184-
1185 goto
never executed: goto out;
out;
never executed: goto out;
0
1186 }-
1187 if ((
(user = urldec...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
user = urldecode(tmp)) ==
(user = urldec...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1188 ((void *)0)
(user = urldec...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1189 )-
1190 goto
never executed: goto out;
out;
never executed: goto out;
0
1191 tmp = cp + 1;-
1192 }
never executed: end of block
0
1193-
1194-
1195 if ((
(cp = hpdelim2...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
cp = hpdelim2(&tmp, &ch)) ==
(cp = hpdelim2...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1196 ((void *)0)
(cp = hpdelim2...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1197 || *
*cp == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
cp == '\0'
*cp == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1198 goto
never executed: goto out;
out;
never executed: goto out;
0
1199 host = xstrdup(cleanhostname(cp));-
1200 if (!valid_domain(host, 0,
!valid_domain(... ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
0
1201 ((void *)0)
!valid_domain(... ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
0
1202 )
!valid_domain(... ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1203 goto
never executed: goto out;
out;
never executed: goto out;
0
1204-
1205 if (tmp !=
tmp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1206 ((void *)0)
tmp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1207 && *
*tmp != '\0'Description
TRUEnever evaluated
FALSEnever evaluated
tmp != '\0'
*tmp != '\0'Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1208 if (ch == ':'
ch == ':'Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1209-
1210 if ((
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
cp =
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1211 (__extension__ (__builtin_constant_p (
__builtin_constant_p ( '/' )Description
TRUEnever evaluated
FALSEnever evaluated
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1212 '/'
__builtin_constant_p ( '/' )Description
TRUEnever evaluated
FALSEnever evaluated
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1213 )
__builtin_constant_p ( '/' )Description
TRUEnever evaluated
FALSEnever evaluated
&& !__builtin_constant_p (
!__builtin_constant_p ( tmp )Description
TRUEnever evaluated
FALSEnever evaluated
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1214 tmp
!__builtin_constant_p ( tmp )Description
TRUEnever evaluated
FALSEnever evaluated
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1215 )
!__builtin_constant_p ( tmp )Description
TRUEnever evaluated
FALSEnever evaluated
&& (
( '/' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1216 '/'
( '/' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1217 ) == '\0'
( '/' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
? (char *) __rawmemchr (
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1218 tmp
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1219 ,
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1220 '/'
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1221 ) : __builtin_strchr (
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1222 tmp
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1223 ,
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1224 '/'
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1225 )))
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1226 ) !=
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1227 ((void *)0)
(cp = (__exten...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1228 )-
1229 *
never executed: *cp = '\0';
cp = '\0';
never executed: *cp = '\0';
0
1230 if ((
(port = a2port(tmp)) <= 0Description
TRUEnever evaluated
FALSEnever evaluated
port = a2port(tmp)) <= 0
(port = a2port(tmp)) <= 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1231 goto
never executed: goto out;
out;
never executed: goto out;
0
1232 tmp = cp
cpDescription
TRUEnever evaluated
FALSEnever evaluated
? cp + 1 :
0
1233 ((void *)0)-
1234 ;-
1235 }
never executed: end of block
0
1236 if (tmp !=
tmp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1237 ((void *)0)
tmp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1238 && *
*tmp != '\0'Description
TRUEnever evaluated
FALSEnever evaluated
tmp != '\0'
*tmp != '\0'Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1239-
1240 if ((
(path = urldec...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
path = urldecode(tmp)) ==
(path = urldec...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1241 ((void *)0)
(path = urldec...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1242 )-
1243 goto
never executed: goto out;
out;
never executed: goto out;
0
1244 }
never executed: end of block
0
1245 }
never executed: end of block
0
1246-
1247-
1248 if (userp !=
userp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1249 ((void *)0)
userp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1250 ) {-
1251 *userp = user;-
1252 user = -
1253 ((void *)0)-
1254 ;-
1255 }
never executed: end of block
0
1256 if (hostp !=
hostp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1257 ((void *)0)
hostp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1258 ) {-
1259 *hostp = host;-
1260 host = -
1261 ((void *)0)-
1262 ;-
1263 }
never executed: end of block
0
1264 if (portp !=
portp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1265 ((void *)0)
portp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1266 )-
1267 *
never executed: *portp = port;
portp = port;
never executed: *portp = port;
0
1268 if (pathp !=
pathp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1269 ((void *)0)
pathp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1270 ) {-
1271 *pathp = path;-
1272 path = -
1273 ((void *)0)-
1274 ;-
1275 }
never executed: end of block
0
1276 ret = 0;-
1277 out:
code before this statement never executed: out:
0
1278 free(uridup);-
1279 free(user);-
1280 free(host);-
1281 free(path);-
1282 return
never executed: return ret;
ret;
never executed: return ret;
0
1283}-
1284-
1285-
1286void-
1287addargs(arglist *args, char *fmt, ...)-
1288{-
1289 va_list ap;-
1290 char *cp;-
1291 u_int nalloc;-
1292 int r;-
1293-
1294 -
1295__builtin_va_start(-
1296ap-
1297,-
1298fmt-
1299)-
1300 ;-
1301 r = vasprintf(&cp, fmt, ap);-
1302 -
1303__builtin_va_end(-
1304ap-
1305)-
1306 ;-
1307 if (r == -1
r == -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1308 fatal("addargs: argument too long");
never executed: fatal("addargs: argument too long");
0
1309-
1310 nalloc = args->nalloc;-
1311 if (args->list ==
args->list == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1312 ((void *)0)
args->list == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1313 ) {-
1314 nalloc = 32;-
1315 args->num = 0;-
1316 }
never executed: end of block
else if (args->num+2 >= nalloc
args->num+2 >= nallocDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1317 nalloc *= 2;
never executed: nalloc *= 2;
0
1318-
1319 args->list = xrecallocarray(args->list, args->nalloc, nalloc, sizeof(char *));-
1320 args->nalloc = nalloc;-
1321 args->list[args->num++] = cp;-
1322 args->list[args->num] = -
1323 ((void *)0)-
1324 ;-
1325}
never executed: end of block
0
1326-
1327void-
1328replacearg(arglist *args, u_int which, char *fmt, ...)-
1329{-
1330 va_list ap;-
1331 char *cp;-
1332 int r;-
1333-
1334 -
1335__builtin_va_start(-
1336ap-
1337,-
1338fmt-
1339)-
1340 ;-
1341 r = vasprintf(&cp, fmt, ap);-
1342 -
1343__builtin_va_end(-
1344ap-
1345)-
1346 ;-
1347 if (r == -1
r == -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1348 fatal("replacearg: argument too long");
never executed: fatal("replacearg: argument too long");
0
1349-
1350 if (which >= args->num
which >= args->numDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1351 fatal("replacearg: tried to replace invalid arg %d >= %d",
never executed: fatal("replacearg: tried to replace invalid arg %d >= %d", which, args->num);
0
1352 which, args->num);
never executed: fatal("replacearg: tried to replace invalid arg %d >= %d", which, args->num);
0
1353 free(args->list[which]);-
1354 args->list[which] = cp;-
1355}
never executed: end of block
0
1356-
1357void-
1358freeargs(arglist *args)-
1359{-
1360 u_int i;-
1361-
1362 if (args->list !=
args->list != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1363 ((void *)0)
args->list != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1364 ) {-
1365 for (i = 0; i < args->num
i < args->numDescription
TRUEnever evaluated
FALSEnever evaluated
; i++)
0
1366 free(args->list[i]);
never executed: free(args->list[i]);
0
1367 free(args->list);-
1368 args->nalloc = args->num = 0;-
1369 args->list = -
1370 ((void *)0)-
1371 ;-
1372 }
never executed: end of block
0
1373}
never executed: end of block
0
1374-
1375-
1376-
1377-
1378-
1379char *-
1380tilde_expand_filename(const char *filename, uid_t uid)-
1381{-
1382 const char *path, *sep;-
1383 char user[128], *ret;-
1384 struct passwd *pw;-
1385 u_int len, slash;-
1386-
1387 if (*
*filename != '~'Description
TRUEevaluated 8 times by 1 test
Evaluated by:
  • sshd
FALSEnever evaluated
filename != '~'
*filename != '~'Description
TRUEevaluated 8 times by 1 test
Evaluated by:
  • sshd
FALSEnever evaluated
)
0-8
1388 return
executed 8 times by 1 test: return (xstrdup(filename));
Executed by:
  • sshd
(xstrdup(filename));
executed 8 times by 1 test: return (xstrdup(filename));
Executed by:
  • sshd
8
1389 filename++;-
1390-
1391 path = -
1392 (__extension__ (__builtin_constant_p (
__builtin_constant_p ( '/' )Description
TRUEnever evaluated
FALSEnever evaluated
0
1393 '/'
__builtin_constant_p ( '/' )Description
TRUEnever evaluated
FALSEnever evaluated
0
1394 )
__builtin_constant_p ( '/' )Description
TRUEnever evaluated
FALSEnever evaluated
&& !__builtin_constant_p (
!__builtin_con...p ( filename )Description
TRUEnever evaluated
FALSEnever evaluated
0
1395 filename
!__builtin_con...p ( filename )Description
TRUEnever evaluated
FALSEnever evaluated
0
1396 )
!__builtin_con...p ( filename )Description
TRUEnever evaluated
FALSEnever evaluated
&& (
( '/' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
0
1397 '/'
( '/' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
0
1398 ) == '\0'
( '/' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
? (char *) __rawmemchr (
0
1399 filename-
1400 , -
1401 '/'-
1402 ) : __builtin_strchr (-
1403 filename-
1404 , -
1405 '/'-
1406 )))-
1407 ;-
1408 if (path !=
path != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1409 ((void *)0)
path != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1410 && path > filename
path > filenameDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1411 slash = path - filename;-
1412 if (slash > sizeof(user) - 1
slash > sizeof(user) - 1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1413 fatal("tilde_expand_filename: ~username too long");
never executed: fatal("tilde_expand_filename: ~username too long");
0
1414 memcpy(user, filename, slash);-
1415 user[slash] = '\0';-
1416 if ((
(pw = getpwnam...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
pw = getpwnam(user)) ==
(pw = getpwnam...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1417 ((void *)0)
(pw = getpwnam...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1418 )-
1419 fatal("tilde_expand_filename: No such user %s", user);
never executed: fatal("tilde_expand_filename: No such user %s", user);
0
1420 }
never executed: end of block
else if ((
(pw = getpwuid...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
pw = getpwuid(uid)) ==
(pw = getpwuid...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1421 ((void *)0)
(pw = getpwuid...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1422 )-
1423 fatal("tilde_expand_filename: No such uid %ld", (long)uid);
never executed: fatal("tilde_expand_filename: No such uid %ld", (long)uid);
0
1424-
1425-
1426 len = strlen(pw->pw_dir);-
1427 if (len == 0
len == 0Description
TRUEnever evaluated
FALSEnever evaluated
|| pw->pw_dir[len - 1] != '/'
pw->pw_dir[len - 1] != '/'Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1428 sep = "/";
never executed: sep = "/";
0
1429 else-
1430 sep = "";
never executed: sep = "";
0
1431-
1432-
1433 if (path !=
path != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1434 ((void *)0)
path != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1435 )-
1436 filename = path + 1;
never executed: filename = path + 1;
0
1437-
1438 if (xasprintf(&ret, "%s%s%s", pw->pw_dir, sep, filename) >=
xasprintf(&ret...ename) >= 4096Description
TRUEnever evaluated
FALSEnever evaluated
0
1439 4096
xasprintf(&ret...ename) >= 4096Description
TRUEnever evaluated
FALSEnever evaluated
0
1440 )-
1441 fatal("tilde_expand_filename: Path too long");
never executed: fatal("tilde_expand_filename: Path too long");
0
1442-
1443 return
never executed: return (ret);
(ret);
never executed: return (ret);
0
1444}-
1445-
1446-
1447-
1448-
1449-
1450-
1451-
1452char *-
1453percent_expand(const char *string, ...)-
1454{-
1455-
1456 u_int num_keys, i, j;-
1457 struct {-
1458 const char *key;-
1459 const char *repl;-
1460 } keys[16];-
1461 char buf[4096];-
1462 va_list ap;-
1463-
1464-
1465 -
1466__builtin_va_start(-
1467ap-
1468,-
1469string-
1470)-
1471 ;-
1472 for (num_keys = 0; num_keys < 16
num_keys < 16Description
TRUEnever evaluated
FALSEnever evaluated
; num_keys++) {
0
1473 keys[num_keys].key = -
1474 __builtin_va_arg(-
1475 ap-
1476 ,-
1477 char *-
1478 )-
1479 ;-
1480 if (keys[num_keys].key ==
keys[num_keys]...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1481 ((void *)0)
keys[num_keys]...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1482 )-
1483 break;
never executed: break;
0
1484 keys[num_keys].repl = -
1485 __builtin_va_arg(-
1486 ap-
1487 ,-
1488 char *-
1489 )-
1490 ;-
1491 if (keys[num_keys].repl ==
keys[num_keys]...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1492 ((void *)0)
keys[num_keys]...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1493 )-
1494 fatal("%s: NULL replacement", __func__);
never executed: fatal("%s: NULL replacement", __func__);
0
1495 }
never executed: end of block
0
1496 if (num_keys == 16
num_keys == 16Description
TRUEnever evaluated
FALSEnever evaluated
&&
0
1497 __builtin_va_arg(
__builtin_va_a...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1498 ap
__builtin_va_a...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1499 ,
__builtin_va_a...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1500 char *
__builtin_va_a...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1501 )
__builtin_va_a...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1502 !=
__builtin_va_a...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1503 ((void *)0)
__builtin_va_a...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1504 )-
1505 fatal("%s: too many keys", __func__);
never executed: fatal("%s: too many keys", __func__);
0
1506 -
1507__builtin_va_end(-
1508ap-
1509)-
1510 ;-
1511-
1512-
1513 *buf = '\0';-
1514 for (i = 0; *
*string != '\0'Description
TRUEnever evaluated
FALSEnever evaluated
string != '\0'
*string != '\0'Description
TRUEnever evaluated
FALSEnever evaluated
; string++) {
0
1515 if (*
*string != '%'Description
TRUEnever evaluated
FALSEnever evaluated
string != '%'
*string != '%'Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1516 append:-
1517 buf[i++] = *string;-
1518 if (i >= sizeof(buf)
i >= sizeof(buf)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1519 fatal("%s: string too long", __func__);
never executed: fatal("%s: string too long", __func__);
0
1520 buf[i] = '\0';-
1521 continue;
never executed: continue;
0
1522 }-
1523 string++;-
1524-
1525 if (*
*string == '%'Description
TRUEnever evaluated
FALSEnever evaluated
string == '%'
*string == '%'Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1526 goto
never executed: goto append;
append;
never executed: goto append;
0
1527 if (*
*string == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
string == '\0'
*string == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1528 fatal("%s: invalid format", __func__);
never executed: fatal("%s: invalid format", __func__);
0
1529 for (j = 0; j < num_keys
j < num_keysDescription
TRUEnever evaluated
FALSEnever evaluated
; j++) {
0
1530 if (-
1531 (
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
__extension__ (__builtin_constant_p (
__builtin_cons..._p ( *string )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1532 *string
__builtin_cons..._p ( *string )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1533 )
__builtin_cons..._p ( *string )Description
TRUEnever evaluated
FALSEnever evaluated
&& !__builtin_constant_p (
!__builtin_con... keys[j].key )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1534 keys[j].key
!__builtin_con... keys[j].key )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1535 )
!__builtin_con... keys[j].key )Description
TRUEnever evaluated
FALSEnever evaluated
&& (
( *string ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1536 *string
( *string ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1537 ) == '\0'
( *string ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
? (char *) __rawmemchr (
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1538 keys[j].key
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1539 ,
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1540 *string
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1541 ) : __builtin_strchr (
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1542 keys[j].key
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1543 ,
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1544 *string
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1545 )))
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1546 !=
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1547 ((void *)0)
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1548 ) {-
1549 i = strlcat(buf, keys[j].repl, sizeof(buf));-
1550 if (i >= sizeof(buf)
i >= sizeof(buf)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1551 fatal("%s: string too long", __func__);
never executed: fatal("%s: string too long", __func__);
0
1552 break;
never executed: break;
0
1553 }-
1554 }
never executed: end of block
0
1555 if (j >= num_keys
j >= num_keysDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1556 fatal("%s: unknown key %%%c", __func__, *string);
never executed: fatal("%s: unknown key %%%c", __func__, *string);
0
1557 }
never executed: end of block
0
1558 return
never executed: return (xstrdup(buf));
(xstrdup(buf));
never executed: return (xstrdup(buf));
0
1559-
1560}-
1561-
1562int-
1563tun_open(int tun, int mode, char **ifname)-
1564{-
1565-
1566 return
never executed: return (sys_tun_open(tun, mode, ifname));
(sys_tun_open(tun, mode, ifname));
never executed: return (sys_tun_open(tun, mode, ifname));
0
1567}-
1568-
1569void-
1570sanitise_stdfd(void)-
1571{-
1572 int nullfd, dupfd;-
1573-
1574 if ((
(nullfd = dupf... , 02 )) == -1Description
TRUEnever evaluated
FALSEevaluated 30 times by 2 tests
Evaluated by:
  • ssh-keygen
  • sshd
nullfd = dupfd = open(
(nullfd = dupf... , 02 )) == -1Description
TRUEnever evaluated
FALSEevaluated 30 times by 2 tests
Evaluated by:
  • ssh-keygen
  • sshd
0-30
1575 "/dev/null"
(nullfd = dupf... , 02 )) == -1Description
TRUEnever evaluated
FALSEevaluated 30 times by 2 tests
Evaluated by:
  • ssh-keygen
  • sshd
0-30
1576 ,
(nullfd = dupf... , 02 )) == -1Description
TRUEnever evaluated
FALSEevaluated 30 times by 2 tests
Evaluated by:
  • ssh-keygen
  • sshd
0-30
1577 02
(nullfd = dupf... , 02 )) == -1Description
TRUEnever evaluated
FALSEevaluated 30 times by 2 tests
Evaluated by:
  • ssh-keygen
  • sshd
0-30
1578 )) == -1
(nullfd = dupf... , 02 )) == -1Description
TRUEnever evaluated
FALSEevaluated 30 times by 2 tests
Evaluated by:
  • ssh-keygen
  • sshd
) {
0-30
1579 fprintf(-
1580 stderr-
1581 , "Couldn't open /dev/null: %s\n",-
1582 strerror(-
1583 (*__errno_location ())-
1584 ));-
1585 exit(1);
never executed: exit(1);
0
1586 }-
1587 while (++
++dupfd <= 2Description
TRUEnever evaluated
FALSEevaluated 30 times by 2 tests
Evaluated by:
  • ssh-keygen
  • sshd
dupfd <=
++dupfd <= 2Description
TRUEnever evaluated
FALSEevaluated 30 times by 2 tests
Evaluated by:
  • ssh-keygen
  • sshd
0-30
1588 2
++dupfd <= 2Description
TRUEnever evaluated
FALSEevaluated 30 times by 2 tests
Evaluated by:
  • ssh-keygen
  • sshd
0-30
1589 ) {-
1590-
1591 if (fcntl(dupfd,
fcntl(dupfd, 3 ) == -1Description
TRUEnever evaluated
FALSEnever evaluated
0
1592 3
fcntl(dupfd, 3 ) == -1Description
TRUEnever evaluated
FALSEnever evaluated
0
1593 ) == -1
fcntl(dupfd, 3 ) == -1Description
TRUEnever evaluated
FALSEnever evaluated
&&
0
1594 (*
(*__errno_location ()) == 9Description
TRUEnever evaluated
FALSEnever evaluated
__errno_location ())
(*__errno_location ()) == 9Description
TRUEnever evaluated
FALSEnever evaluated
0
1595 ==
(*__errno_location ()) == 9Description
TRUEnever evaluated
FALSEnever evaluated
0
1596 9
(*__errno_location ()) == 9Description
TRUEnever evaluated
FALSEnever evaluated
0
1597 ) {-
1598 if (dup2(nullfd, dupfd) == -1
dup2(nullfd, dupfd) == -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1599 fprintf(-
1600 stderr-
1601 , "dup2: %s\n", strerror(-
1602 (*__errno_location ())-
1603 ));-
1604 exit(1);
never executed: exit(1);
0
1605 }-
1606 }
never executed: end of block
0
1607 }
never executed: end of block
0
1608 if (nullfd >
nullfd > 2Description
TRUEevaluated 30 times by 2 tests
Evaluated by:
  • ssh-keygen
  • sshd
FALSEnever evaluated
0-30
1609 2
nullfd > 2Description
TRUEevaluated 30 times by 2 tests
Evaluated by:
  • ssh-keygen
  • sshd
FALSEnever evaluated
0-30
1610 )-
1611 close(nullfd);
executed 30 times by 2 tests: close(nullfd);
Executed by:
  • ssh-keygen
  • sshd
30
1612}
executed 30 times by 2 tests: end of block
Executed by:
  • ssh-keygen
  • sshd
30
1613-
1614char *-
1615tohex(const void *vp, size_t l)-
1616{-
1617 const u_char *p = (const u_char *)vp;-
1618 char b[3], *r;-
1619 size_t i, hl;-
1620-
1621 if (l > 65536
l > 65536Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1622 return
never executed: return xstrdup("tohex: length > 65536");
xstrdup("tohex: length > 65536");
never executed: return xstrdup("tohex: length > 65536");
0
1623-
1624 hl = l * 2 + 1;-
1625 r = xcalloc(1, hl);-
1626 for (i = 0; i < l
i < lDescription
TRUEnever evaluated
FALSEnever evaluated
; i++) {
0
1627 snprintf(b, sizeof(b), "%02x", p[i]);-
1628 strlcat(r, b, hl);-
1629 }
never executed: end of block
0
1630 return
never executed: return (r);
(r);
never executed: return (r);
0
1631}-
1632-
1633u_int64_t-
1634get_u64(const void *vp)-
1635{-
1636 const u_char *p = (const u_char *)vp;-
1637 u_int64_t v;-
1638-
1639 v = (u_int64_t)p[0] << 56;-
1640 v |= (u_int64_t)p[1] << 48;-
1641 v |= (u_int64_t)p[2] << 40;-
1642 v |= (u_int64_t)p[3] << 32;-
1643 v |= (u_int64_t)p[4] << 24;-
1644 v |= (u_int64_t)p[5] << 16;-
1645 v |= (u_int64_t)p[6] << 8;-
1646 v |= (u_int64_t)p[7];-
1647-
1648 return
never executed: return (v);
(v);
never executed: return (v);
0
1649}-
1650-
1651u_int32_t-
1652get_u32(const void *vp)-
1653{-
1654 const u_char *p = (const u_char *)vp;-
1655 u_int32_t v;-
1656-
1657 v = (u_int32_t)p[0] << 24;-
1658 v |= (u_int32_t)p[1] << 16;-
1659 v |= (u_int32_t)p[2] << 8;-
1660 v |= (u_int32_t)p[3];-
1661-
1662 return
never executed: return (v);
(v);
never executed: return (v);
0
1663}-
1664-
1665u_int32_t-
1666get_u32_le(const void *vp)-
1667{-
1668 const u_char *p = (const u_char *)vp;-
1669 u_int32_t v;-
1670-
1671 v = (u_int32_t)p[0];-
1672 v |= (u_int32_t)p[1] << 8;-
1673 v |= (u_int32_t)p[2] << 16;-
1674 v |= (u_int32_t)p[3] << 24;-
1675-
1676 return
never executed: return (v);
(v);
never executed: return (v);
0
1677}-
1678-
1679u_int16_t-
1680get_u16(const void *vp)-
1681{-
1682 const u_char *p = (const u_char *)vp;-
1683 u_int16_t v;-
1684-
1685 v = (u_int16_t)p[0] << 8;-
1686 v |= (u_int16_t)p[1];-
1687-
1688 return
never executed: return (v);
(v);
never executed: return (v);
0
1689}-
1690-
1691void-
1692put_u64(void *vp, u_int64_t v)-
1693{-
1694 u_char *p = (u_char *)vp;-
1695-
1696 p[0] = (u_char)(v >> 56) & 0xff;-
1697 p[1] = (u_char)(v >> 48) & 0xff;-
1698 p[2] = (u_char)(v >> 40) & 0xff;-
1699 p[3] = (u_char)(v >> 32) & 0xff;-
1700 p[4] = (u_char)(v >> 24) & 0xff;-
1701 p[5] = (u_char)(v >> 16) & 0xff;-
1702 p[6] = (u_char)(v >> 8) & 0xff;-
1703 p[7] = (u_char)v & 0xff;-
1704}
never executed: end of block
0
1705-
1706void-
1707put_u32(void *vp, u_int32_t v)-
1708{-
1709 u_char *p = (u_char *)vp;-
1710-
1711 p[0] = (u_char)(v >> 24) & 0xff;-
1712 p[1] = (u_char)(v >> 16) & 0xff;-
1713 p[2] = (u_char)(v >> 8) & 0xff;-
1714 p[3] = (u_char)v & 0xff;-
1715}
never executed: end of block
0
1716-
1717void-
1718put_u32_le(void *vp, u_int32_t v)-
1719{-
1720 u_char *p = (u_char *)vp;-
1721-
1722 p[0] = (u_char)v & 0xff;-
1723 p[1] = (u_char)(v >> 8) & 0xff;-
1724 p[2] = (u_char)(v >> 16) & 0xff;-
1725 p[3] = (u_char)(v >> 24) & 0xff;-
1726}
never executed: end of block
0
1727-
1728void-
1729put_u16(void *vp, u_int16_t v)-
1730{-
1731 u_char *p = (u_char *)vp;-
1732-
1733 p[0] = (u_char)(v >> 8) & 0xff;-
1734 p[1] = (u_char)v & 0xff;-
1735}
never executed: end of block
0
1736-
1737void-
1738ms_subtract_diff(struct timeval *start, int *ms)-
1739{-
1740 struct timeval diff, finish;-
1741-
1742 monotime_tv(&finish);-
1743 -
1744do { (-
1745&diff-
1746)->tv_sec = (-
1747&finish-
1748)->tv_sec - (-
1749start-
1750)->tv_sec; (-
1751&diff-
1752)->tv_usec = (-
1753&finish-
1754)->tv_usec - (-
1755start-
1756)->tv_usec; if ((
( &diff )->tv_usec < 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1757&diff
( &diff )->tv_usec < 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1758)->
( &diff )->tv_usec < 0Description
TRUEnever evaluated
FALSEnever evaluated
( &diff )->tv_usec < 0Description
TRUEnever evaluated
FALSEnever evaluated
tv_usec < 0
( &diff )->tv_usec < 0Description
TRUEnever evaluated
FALSEnever evaluated
) { --(
0
1759&diff-
1760)->tv_sec; (-
1761&diff-
1762)->tv_usec += 1000000; }
never executed: end of block
} while (0)
0
1763 ;-
1764 *ms -= (diff.tv_sec * 1000) + (diff.tv_usec / 1000);-
1765}
never executed: end of block
0
1766-
1767void-
1768ms_to_timeval(struct timeval *tv, int ms)-
1769{-
1770 if (ms < 0
ms < 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1771 ms = 0;
never executed: ms = 0;
0
1772 tv->tv_sec = ms / 1000;-
1773 tv->tv_usec = (ms % 1000) * 1000;-
1774}
never executed: end of block
0
1775-
1776void-
1777monotime_ts(struct timespec *ts)-
1778{-
1779 struct timeval tv;-
1780-
1781-
1782 static int gettime_failed = 0;-
1783-
1784 if (!gettime_failed
!gettime_failedDescription
TRUEevaluated 352 times by 1 test
Evaluated by:
  • test_kex
FALSEnever evaluated
) {
0-352
1785-
1786 if (clock_gettime(
clock_gettime( 7 , ts) == 0Description
TRUEevaluated 352 times by 1 test
Evaluated by:
  • test_kex
FALSEnever evaluated
0-352
1787 7
clock_gettime( 7 , ts) == 0Description
TRUEevaluated 352 times by 1 test
Evaluated by:
  • test_kex
FALSEnever evaluated
0-352
1788 , ts) == 0
clock_gettime( 7 , ts) == 0Description
TRUEevaluated 352 times by 1 test
Evaluated by:
  • test_kex
FALSEnever evaluated
)
0-352
1789 return;
executed 352 times by 1 test: return;
Executed by:
  • test_kex
352
1790-
1791-
1792 if (clock_gettime(
clock_gettime( 1 , ts) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1793 1
clock_gettime( 1 , ts) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1794 , ts) == 0
clock_gettime( 1 , ts) == 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1795 return;
never executed: return;
0
1796-
1797-
1798-
1799 if (clock_gettime(
clock_gettime( 0 , ts) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1800 0
clock_gettime( 0 , ts) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1801 , ts) == 0
clock_gettime( 0 , ts) == 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1802 return;
never executed: return;
0
1803-
1804 debug3("clock_gettime: %s", strerror(-
1805 (*__errno_location ())-
1806 ));-
1807 gettime_failed = 1;-
1808 }
never executed: end of block
0
1809-
1810 gettimeofday(&tv, -
1811 ((void *)0)-
1812 );-
1813 ts->tv_sec = tv.tv_sec;-
1814 ts->tv_nsec = (long)tv.tv_usec * 1000;-
1815}
never executed: end of block
0
1816-
1817void-
1818monotime_tv(struct timeval *tv)-
1819{-
1820 struct timespec ts;-
1821-
1822 monotime_ts(&ts);-
1823 tv->tv_sec = ts.tv_sec;-
1824 tv->tv_usec = ts.tv_nsec / 1000;-
1825}
never executed: end of block
0
1826-
1827time_t-
1828monotime(void)-
1829{-
1830 struct timespec ts;-
1831-
1832 monotime_ts(&ts);-
1833 return
executed 352 times by 1 test: return ts.tv_sec;
Executed by:
  • test_kex
ts.tv_sec;
executed 352 times by 1 test: return ts.tv_sec;
Executed by:
  • test_kex
352
1834}-
1835-
1836double-
1837monotime_double(void)-
1838{-
1839 struct timespec ts;-
1840-
1841 monotime_ts(&ts);-
1842 return
never executed: return ts.tv_sec + ((double)ts.tv_nsec / 1000000000);
ts.tv_sec + ((double)ts.tv_nsec / 1000000000);
never executed: return ts.tv_sec + ((double)ts.tv_nsec / 1000000000);
0
1843}-
1844-
1845void-
1846bandwidth_limit_init(struct bwlimit *bw, u_int64_t kbps, size_t buflen)-
1847{-
1848 bw->buflen = buflen;-
1849 bw->rate = kbps;-
1850 bw->thresh = bw->rate;-
1851 bw->lamt = 0;-
1852 -
1853((-
1854&bw->bwstart-
1855)->tv_sec = (-
1856&bw->bwstart-
1857)->tv_usec = 0)-
1858 ;-
1859 -
1860((-
1861&bw->bwend-
1862)->tv_sec = (-
1863&bw->bwend-
1864)->tv_usec = 0)-
1865 ;-
1866}
never executed: end of block
0
1867-
1868-
1869void-
1870bandwidth_limit(struct bwlimit *bw, size_t read_len)-
1871{-
1872 u_int64_t waitlen;-
1873 struct timespec ts, rm;-
1874-
1875 if (!-
1876 ((
( &bw->bwstart )->tv_secDescription
TRUEnever evaluated
FALSEnever evaluated
0
1877 &bw->bwstart
( &bw->bwstart )->tv_secDescription
TRUEnever evaluated
FALSEnever evaluated
0
1878 )->tv_sec
( &bw->bwstart )->tv_secDescription
TRUEnever evaluated
FALSEnever evaluated
|| (
( &bw->bwstart )->tv_usecDescription
TRUEnever evaluated
FALSEnever evaluated
0
1879 &bw->bwstart
( &bw->bwstart )->tv_usecDescription
TRUEnever evaluated
FALSEnever evaluated
0
1880 )->tv_usec
( &bw->bwstart )->tv_usecDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1881 ) {-
1882 monotime_tv(&bw->bwstart);-
1883 return;
never executed: return;
0
1884 }-
1885-
1886 bw->lamt += read_len;-
1887 if (bw->lamt < bw->thresh
bw->lamt < bw->threshDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1888 return;
never executed: return;
0
1889-
1890 monotime_tv(&bw->bwend);-
1891 -
1892do { (-
1893&bw->bwend-
1894)->tv_sec = (-
1895&bw->bwend-
1896)->tv_sec - (-
1897&bw->bwstart-
1898)->tv_sec; (-
1899&bw->bwend-
1900)->tv_usec = (-
1901&bw->bwend-
1902)->tv_usec - (-
1903&bw->bwstart-
1904)->tv_usec; if ((
( &bw->bwend )->tv_usec < 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1905&bw->bwend
( &bw->bwend )->tv_usec < 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1906)->
( &bw->bwend )->tv_usec < 0Description
TRUEnever evaluated
FALSEnever evaluated
( &bw->bwend )->tv_usec < 0Description
TRUEnever evaluated
FALSEnever evaluated
tv_usec < 0
( &bw->bwend )->tv_usec < 0Description
TRUEnever evaluated
FALSEnever evaluated
) { --(
0
1907&bw->bwend-
1908)->tv_sec; (-
1909&bw->bwend-
1910)->tv_usec += 1000000; }
never executed: end of block
} while (0)
0
1911 ;-
1912 if (!-
1913 ((
( &bw->bwend )->tv_secDescription
TRUEnever evaluated
FALSEnever evaluated
0
1914 &bw->bwend
( &bw->bwend )->tv_secDescription
TRUEnever evaluated
FALSEnever evaluated
0
1915 )->tv_sec
( &bw->bwend )->tv_secDescription
TRUEnever evaluated
FALSEnever evaluated
|| (
( &bw->bwend )->tv_usecDescription
TRUEnever evaluated
FALSEnever evaluated
0
1916 &bw->bwend
( &bw->bwend )->tv_usecDescription
TRUEnever evaluated
FALSEnever evaluated
0
1917 )->tv_usec
( &bw->bwend )->tv_usecDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1918 )-
1919 return;
never executed: return;
0
1920-
1921 bw->lamt *= 8;-
1922 waitlen = (double)1000000L * bw->lamt / bw->rate;-
1923-
1924 bw->bwstart.tv_sec = waitlen / 1000000L;-
1925 bw->bwstart.tv_usec = waitlen % 1000000L;-
1926-
1927 if (-
1928 (((
(( &bw->bwstar...end )->tv_sec)Description
TRUEnever evaluated
FALSEnever evaluated
((( &bw->bwsta...nd )->tv_sec))Description
TRUEnever evaluated
FALSEnever evaluated
0
1929 &bw->bwstart
(( &bw->bwstar...end )->tv_sec)Description
TRUEnever evaluated
FALSEnever evaluated
((( &bw->bwsta...nd )->tv_sec))Description
TRUEnever evaluated
FALSEnever evaluated
0
1930 )->tv_sec == (
(( &bw->bwstar...end )->tv_sec)Description
TRUEnever evaluated
FALSEnever evaluated
((( &bw->bwsta...nd )->tv_sec))Description
TRUEnever evaluated
FALSEnever evaluated
0
1931 &bw->bwend
(( &bw->bwstar...end )->tv_sec)Description
TRUEnever evaluated
FALSEnever evaluated
((( &bw->bwsta...nd )->tv_sec))Description
TRUEnever evaluated
FALSEnever evaluated
0
1932 )->tv_sec)
(( &bw->bwstar...end )->tv_sec)Description
TRUEnever evaluated
FALSEnever evaluated
? ((
((( &bw->bwsta...nd )->tv_sec))Description
TRUEnever evaluated
FALSEnever evaluated
0
1933 &bw->bwstart
((( &bw->bwsta...nd )->tv_sec))Description
TRUEnever evaluated
FALSEnever evaluated
0
1934 )->tv_usec
((( &bw->bwsta...nd )->tv_sec))Description
TRUEnever evaluated
FALSEnever evaluated
0
1935 >
((( &bw->bwsta...nd )->tv_sec))Description
TRUEnever evaluated
FALSEnever evaluated
0
1936 (
((( &bw->bwsta...nd )->tv_sec))Description
TRUEnever evaluated
FALSEnever evaluated
0
1937 &bw->bwend
((( &bw->bwsta...nd )->tv_sec))Description
TRUEnever evaluated
FALSEnever evaluated
0
1938 )->tv_usec) : ((
((( &bw->bwsta...nd )->tv_sec))Description
TRUEnever evaluated
FALSEnever evaluated
0
1939 &bw->bwstart
((( &bw->bwsta...nd )->tv_sec))Description
TRUEnever evaluated
FALSEnever evaluated
0
1940 )->tv_sec
((( &bw->bwsta...nd )->tv_sec))Description
TRUEnever evaluated
FALSEnever evaluated
0
1941 >
((( &bw->bwsta...nd )->tv_sec))Description
TRUEnever evaluated
FALSEnever evaluated
0
1942 (
((( &bw->bwsta...nd )->tv_sec))Description
TRUEnever evaluated
FALSEnever evaluated
0
1943 &bw->bwend
((( &bw->bwsta...nd )->tv_sec))Description
TRUEnever evaluated
FALSEnever evaluated
0
1944 )->tv_sec))
((( &bw->bwsta...nd )->tv_sec))Description
TRUEnever evaluated
FALSEnever evaluated
0
1945 ) {-
1946 -
1947 do { (-
1948 &bw->bwend-
1949 )->tv_sec = (-
1950 &bw->bwstart-
1951 )->tv_sec - (-
1952 &bw->bwend-
1953 )->tv_sec; (-
1954 &bw->bwend-
1955 )->tv_usec = (-
1956 &bw->bwstart-
1957 )->tv_usec - (-
1958 &bw->bwend-
1959 )->tv_usec; if ((
( &bw->bwend )->tv_usec < 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1960 &bw->bwend
( &bw->bwend )->tv_usec < 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1961 )->tv_usec < 0
( &bw->bwend )->tv_usec < 0Description
TRUEnever evaluated
FALSEnever evaluated
) { --(
0
1962 &bw->bwend-
1963 )->tv_sec; (-
1964 &bw->bwend-
1965 )->tv_usec += 1000000; }
never executed: end of block
} while (0)
0
1966 ;-
1967-
1968-
1969 if (bw->bwend.tv_sec
bw->bwend.tv_secDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1970 bw->thresh /= 2;-
1971 if (bw->thresh < bw->buflen / 4
bw->thresh < bw->buflen / 4Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1972 bw->thresh = bw->buflen / 4;
never executed: bw->thresh = bw->buflen / 4;
0
1973 }
never executed: end of block
else if (bw->bwend.tv_usec < 10000
bw->bwend.tv_usec < 10000Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1974 bw->thresh *= 2;-
1975 if (bw->thresh > bw->buflen * 8
bw->thresh > bw->buflen * 8Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1976 bw->thresh = bw->buflen * 8;
never executed: bw->thresh = bw->buflen * 8;
0
1977 }
never executed: end of block
0
1978-
1979 -
1980 { (-
1981 &ts-
1982 )->tv_sec = (-
1983 &bw->bwend-
1984 )->tv_sec; (-
1985 &ts-
1986 )->tv_nsec = (-
1987 &bw->bwend-
1988 )->tv_usec * 1000; }-
1989 ;-
1990 while (nanosleep(&ts, &rm) == -1
nanosleep(&ts, &rm) == -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1991 if (-
1992 (*
(*__errno_location ()) != 4Description
TRUEnever evaluated
FALSEnever evaluated
__errno_location ())
(*__errno_location ()) != 4Description
TRUEnever evaluated
FALSEnever evaluated
0
1993 !=
(*__errno_location ()) != 4Description
TRUEnever evaluated
FALSEnever evaluated
0
1994 4
(*__errno_location ()) != 4Description
TRUEnever evaluated
FALSEnever evaluated
0
1995 )-
1996 break;
never executed: break;
0
1997 ts = rm;-
1998 }
never executed: end of block
0
1999 }
never executed: end of block
0
2000-
2001 bw->lamt = 0;-
2002 monotime_tv(&bw->bwstart);-
2003}
never executed: end of block
0
2004-
2005-
2006void-
2007mktemp_proto(char *s, size_t len)-
2008{-
2009 const char *tmpdir;-
2010 int r;-
2011-
2012 if ((
(tmpdir = gete...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
tmpdir = getenv("TMPDIR")) !=
(tmpdir = gete...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2013 ((void *)0)
(tmpdir = gete...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2014 ) {-
2015 r = snprintf(s, len, "%s/ssh-XXXXXXXXXXXX", tmpdir);-
2016 if (r > 0
r > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& (
(size_t)r < lenDescription
TRUEnever evaluated
FALSEnever evaluated
size_t)r < len
(size_t)r < lenDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2017 return;
never executed: return;
0
2018 }
never executed: end of block
0
2019 r = snprintf(s, len, "/tmp/ssh-XXXXXXXXXXXX");-
2020 if (r < 0
r < 0Description
TRUEnever evaluated
FALSEnever evaluated
|| (
(size_t)r >= lenDescription
TRUEnever evaluated
FALSEnever evaluated
size_t)r >= len
(size_t)r >= lenDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2021 fatal("%s: template string too short", __func__);
never executed: fatal("%s: template string too short", __func__);
0
2022}
never executed: end of block
0
2023-
2024static const struct {-
2025 const char *name;-
2026 int value;-
2027} ipqos[] = {-
2028 { "none", 0x7fffffff },-
2029 { "af11", -
2030 0x28 -
2031 },-
2032 { "af12", -
2033 0x30 -
2034 },-
2035 { "af13", -
2036 0x38 -
2037 },-
2038 { "af21", -
2039 0x48 -
2040 },-
2041 { "af22", -
2042 0x50 -
2043 },-
2044 { "af23", -
2045 0x58 -
2046 },-
2047 { "af31", -
2048 0x68 -
2049 },-
2050 { "af32", -
2051 0x70 -
2052 },-
2053 { "af33", -
2054 0x78 -
2055 },-
2056 { "af41", -
2057 0x88 -
2058 },-
2059 { "af42", -
2060 0x90 -
2061 },-
2062 { "af43", -
2063 0x98 -
2064 },-
2065 { "cs0", 0x00 },-
2066 { "cs1", 0x20 },-
2067 { "cs2", 0x40 },-
2068 { "cs3", 0x60 },-
2069 { "cs4", 0x80 },-
2070 { "cs5", 0xa0 },-
2071 { "cs6", 0xc0 },-
2072 { "cs7", 0xe0 },-
2073 { "ef", -
2074 0xb8 -
2075 },-
2076 { "lowdelay", -
2077 0x10 -
2078 },-
2079 { "throughput", -
2080 0x08 -
2081 },-
2082 { "reliability", -
2083 0x04 -
2084 },-
2085 { -
2086 ((void *)0)-
2087 , -1 }-
2088};-
2089-
2090int-
2091parse_ipqos(const char *cp)-
2092{-
2093 u_int i;-
2094 char *ep;-
2095 long val;-
2096-
2097 if (cp ==
cp == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2098 ((void *)0)
cp == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2099 )-
2100 return
never executed: return -1;
-1;
never executed: return -1;
0
2101 for (i = 0; ipqos[i].name !=
ipqos[i].name != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2102 ((void *)0)
ipqos[i].name != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2103 ; i++) {-
2104 if (strcasecmp(cp, ipqos[i].name) == 0
strcasecmp(cp,...[i].name) == 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2105 return
never executed: return ipqos[i].value;
ipqos[i].value;
never executed: return ipqos[i].value;
0
2106 }
never executed: end of block
0
2107-
2108 val = strtol(cp, &ep, 0);-
2109 if (*
*cp == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
cp == '\0'
*cp == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
|| *
*ep != '\0'Description
TRUEnever evaluated
FALSEnever evaluated
ep != '\0'
*ep != '\0'Description
TRUEnever evaluated
FALSEnever evaluated
|| val < 0
val < 0Description
TRUEnever evaluated
FALSEnever evaluated
|| val > 255
val > 255Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2110 return
never executed: return -1;
-1;
never executed: return -1;
0
2111 return
never executed: return val;
val;
never executed: return val;
0
2112}-
2113-
2114const char *-
2115iptos2str(int iptos)-
2116{-
2117 int i;-
2118 static char iptos_str[sizeof "0xff"];-
2119-
2120 for (i = 0; ipqos[i].name !=
ipqos[i].name != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2121 ((void *)0)
ipqos[i].name != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2122 ; i++) {-
2123 if (ipqos[i].value == iptos
ipqos[i].value == iptosDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2124 return
never executed: return ipqos[i].name;
ipqos[i].name;
never executed: return ipqos[i].name;
0
2125 }
never executed: end of block
0
2126 snprintf(iptos_str, sizeof iptos_str, "0x%02x", iptos);-
2127 return
never executed: return iptos_str;
iptos_str;
never executed: return iptos_str;
0
2128}-
2129-
2130void-
2131lowercase(char *s)-
2132{-
2133 for (; *
*sDescription
TRUEevaluated 8400 times by 1 test
Evaluated by:
  • test_hostkeys
FALSEevaluated 520 times by 1 test
Evaluated by:
  • test_hostkeys
s
*sDescription
TRUEevaluated 8400 times by 1 test
Evaluated by:
  • test_hostkeys
FALSEevaluated 520 times by 1 test
Evaluated by:
  • test_hostkeys
; s++)
520-8400
2134 *
executed 8400 times by 1 test: *s = (__extension__ ({ int __res; if (sizeof ( (u_char)*s ) > 1) { if (__builtin_constant_p ( (u_char)*s )) { int __c = ( (u_char)*s ); __res = __c < -128 || __c > 255 ? __c : (*__ctype_tolower_loc ())[__c]; } else __res = tolower ( (u_char)*s ); } else __res = (*__ctype_tolower_loc ())[(int) ( (u_char)*s )]; __res; })) ;
Executed by:
  • test_hostkeys
s =
executed 8400 times by 1 test: *s = (__extension__ ({ int __res; if (sizeof ( (u_char)*s ) > 1) { if (__builtin_constant_p ( (u_char)*s )) { int __c = ( (u_char)*s ); __res = __c < -128 || __c > 255 ? __c : (*__ctype_tolower_loc ())[__c]; } else __res = tolower ( (u_char)*s ); } else __res = (*__ctype_tolower_loc ())[(int) ( (u_char)*s )]; __res; })) ;
Executed by:
  • test_hostkeys
8400
2135 (__extension__ ({ int __res; if (sizeof (
sizeof ( (u_char)*s ) > 1Description
TRUEnever evaluated
FALSEevaluated 8400 times by 1 test
Evaluated by:
  • test_hostkeys
executed 8400 times by 1 test: *s = (__extension__ ({ int __res; if (sizeof ( (u_char)*s ) > 1) { if (__builtin_constant_p ( (u_char)*s )) { int __c = ( (u_char)*s ); __res = __c < -128 || __c > 255 ? __c : (*__ctype_tolower_loc ())[__c]; } else __res = tolower ( (u_char)*s ); } else __res = (*__ctype_tolower_loc ())[(int) ( (u_char)*s )]; __res; })) ;
Executed by:
  • test_hostkeys
0-8400
2136 (u_char)*s
sizeof ( (u_char)*s ) > 1Description
TRUEnever evaluated
FALSEevaluated 8400 times by 1 test
Evaluated by:
  • test_hostkeys
executed 8400 times by 1 test: *s = (__extension__ ({ int __res; if (sizeof ( (u_char)*s ) > 1) { if (__builtin_constant_p ( (u_char)*s )) { int __c = ( (u_char)*s ); __res = __c < -128 || __c > 255 ? __c : (*__ctype_tolower_loc ())[__c]; } else __res = tolower ( (u_char)*s ); } else __res = (*__ctype_tolower_loc ())[(int) ( (u_char)*s )]; __res; })) ;
Executed by:
  • test_hostkeys
0-8400
2137 ) > 1
sizeof ( (u_char)*s ) > 1Description
TRUEnever evaluated
FALSEevaluated 8400 times by 1 test
Evaluated by:
  • test_hostkeys
) { if (__builtin_constant_p (
__builtin_cons...( (u_char)*s )Description
TRUEnever evaluated
FALSEnever evaluated
executed 8400 times by 1 test: *s = (__extension__ ({ int __res; if (sizeof ( (u_char)*s ) > 1) { if (__builtin_constant_p ( (u_char)*s )) { int __c = ( (u_char)*s ); __res = __c < -128 || __c > 255 ? __c : (*__ctype_tolower_loc ())[__c]; } else __res = tolower ( (u_char)*s ); } else __res = (*__ctype_tolower_loc ())[(int) ( (u_char)*s )]; __res; })) ;
Executed by:
  • test_hostkeys
0-8400
2138 (u_char)*s
__builtin_cons...( (u_char)*s )Description
TRUEnever evaluated
FALSEnever evaluated
executed 8400 times by 1 test: *s = (__extension__ ({ int __res; if (sizeof ( (u_char)*s ) > 1) { if (__builtin_constant_p ( (u_char)*s )) { int __c = ( (u_char)*s ); __res = __c < -128 || __c > 255 ? __c : (*__ctype_tolower_loc ())[__c]; } else __res = tolower ( (u_char)*s ); } else __res = (*__ctype_tolower_loc ())[(int) ( (u_char)*s )]; __res; })) ;
Executed by:
  • test_hostkeys
0-8400
2139 )
__builtin_cons...( (u_char)*s )Description
TRUEnever evaluated
FALSEnever evaluated
) { int __c = (
executed 8400 times by 1 test: *s = (__extension__ ({ int __res; if (sizeof ( (u_char)*s ) > 1) { if (__builtin_constant_p ( (u_char)*s )) { int __c = ( (u_char)*s ); __res = __c < -128 || __c > 255 ? __c : (*__ctype_tolower_loc ())[__c]; } else __res = tolower ( (u_char)*s ); } else __res = (*__ctype_tolower_loc ())[(int) ( (u_char)*s )]; __res; })) ;
Executed by:
  • test_hostkeys
0-8400
2140 (u_char)*s
executed 8400 times by 1 test: *s = (__extension__ ({ int __res; if (sizeof ( (u_char)*s ) > 1) { if (__builtin_constant_p ( (u_char)*s )) { int __c = ( (u_char)*s ); __res = __c < -128 || __c > 255 ? __c : (*__ctype_tolower_loc ())[__c]; } else __res = tolower ( (u_char)*s ); } else __res = (*__ctype_tolower_loc ())[(int) ( (u_char)*s )]; __res; })) ;
Executed by:
  • test_hostkeys
8400
2141 ); __res = __c < -128
__c < -128Description
TRUEnever evaluated
FALSEnever evaluated
|| __c > 255
__c > 255Description
TRUEnever evaluated
FALSEnever evaluated
? __c : (*__ctype_tolower_loc ())[__c]; }
never executed: end of block
else __res = tolower (
never executed: __res = tolower ( (u_char)*s );
executed 8400 times by 1 test: *s = (__extension__ ({ int __res; if (sizeof ( (u_char)*s ) > 1) { if (__builtin_constant_p ( (u_char)*s )) { int __c = ( (u_char)*s ); __res = __c < -128 || __c > 255 ? __c : (*__ctype_tolower_loc ())[__c]; } else __res = tolower ( (u_char)*s ); } else __res = (*__ctype_tolower_loc ())[(int) ( (u_char)*s )]; __res; })) ;
Executed by:
  • test_hostkeys
0-8400
2142 (u_char)*s
never executed: __res = tolower ( (u_char)*s );
executed 8400 times by 1 test: *s = (__extension__ ({ int __res; if (sizeof ( (u_char)*s ) > 1) { if (__builtin_constant_p ( (u_char)*s )) { int __c = ( (u_char)*s ); __res = __c < -128 || __c > 255 ? __c : (*__ctype_tolower_loc ())[__c]; } else __res = tolower ( (u_char)*s ); } else __res = (*__ctype_tolower_loc ())[(int) ( (u_char)*s )]; __res; })) ;
Executed by:
  • test_hostkeys
0-8400
2143 );
never executed: __res = tolower ( (u_char)*s );
} else __res = (*__ctype_tolower_loc ())[(int) (
executed 8400 times by 1 test: __res = (*__ctype_tolower_loc ())[(int) ( (u_char)*s )];
Executed by:
  • test_hostkeys
executed 8400 times by 1 test: *s = (__extension__ ({ int __res; if (sizeof ( (u_char)*s ) > 1) { if (__builtin_constant_p ( (u_char)*s )) { int __c = ( (u_char)*s ); __res = __c < -128 || __c > 255 ? __c : (*__ctype_tolower_loc ())[__c]; } else __res = tolower ( (u_char)*s ); } else __res = (*__ctype_tolower_loc ())[(int) ( (u_char)*s )]; __res; })) ;
Executed by:
  • test_hostkeys
0-8400
2144 (u_char)*s
executed 8400 times by 1 test: __res = (*__ctype_tolower_loc ())[(int) ( (u_char)*s )];
Executed by:
  • test_hostkeys
executed 8400 times by 1 test: *s = (__extension__ ({ int __res; if (sizeof ( (u_char)*s ) > 1) { if (__builtin_constant_p ( (u_char)*s )) { int __c = ( (u_char)*s ); __res = __c < -128 || __c > 255 ? __c : (*__ctype_tolower_loc ())[__c]; } else __res = tolower ( (u_char)*s ); } else __res = (*__ctype_tolower_loc ())[(int) ( (u_char)*s )]; __res; })) ;
Executed by:
  • test_hostkeys
8400
2145 )];
executed 8400 times by 1 test: __res = (*__ctype_tolower_loc ())[(int) ( (u_char)*s )];
Executed by:
  • test_hostkeys
__res; }))
executed 8400 times by 1 test: *s = (__extension__ ({ int __res; if (sizeof ( (u_char)*s ) > 1) { if (__builtin_constant_p ( (u_char)*s )) { int __c = ( (u_char)*s ); __res = __c < -128 || __c > 255 ? __c : (*__ctype_tolower_loc ())[__c]; } else __res = tolower ( (u_char)*s ); } else __res = (*__ctype_tolower_loc ())[(int) ( (u_char)*s )]; __res; })) ;
Executed by:
  • test_hostkeys
8400
2146 ;
executed 8400 times by 1 test: *s = (__extension__ ({ int __res; if (sizeof ( (u_char)*s ) > 1) { if (__builtin_constant_p ( (u_char)*s )) { int __c = ( (u_char)*s ); __res = __c < -128 || __c > 255 ? __c : (*__ctype_tolower_loc ())[__c]; } else __res = tolower ( (u_char)*s ); } else __res = (*__ctype_tolower_loc ())[(int) ( (u_char)*s )]; __res; })) ;
Executed by:
  • test_hostkeys
8400
2147}
executed 520 times by 1 test: end of block
Executed by:
  • test_hostkeys
520
2148-
2149int-
2150unix_listener(const char *path, int backlog, int unlink_first)-
2151{-
2152 struct sockaddr_un sunaddr;-
2153 int saved_errno, sock;-
2154-
2155 memset(&sunaddr, 0, sizeof(sunaddr));-
2156 sunaddr.sun_family = -
2157 1-
2158 ;-
2159 if (strlcpy(sunaddr.sun_path, path,
strlcpy(sunadd...addr.sun_path)Description
TRUEnever evaluated
FALSEnever evaluated
0
2160 sizeof(sunaddr.sun_path)) >= sizeof(sunaddr.sun_path)
strlcpy(sunadd...addr.sun_path)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2161 error("%s: path \"%s\" too long for Unix domain socket",-
2162 __func__, path);-
2163 -
2164 (*__errno_location ()) -
2165 = -
2166 36-
2167 ;-
2168 return
never executed: return -1;
-1;
never executed: return -1;
0
2169 }-
2170-
2171 sock = socket(-
2172 1-
2173 , -
2174 SOCK_STREAM-
2175 , 0);-
2176 if (sock < 0
sock < 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2177 saved_errno = -
2178 (*__errno_location ())-
2179 ;-
2180 error("%s: socket: %.100s", __func__, strerror(-
2181 (*__errno_location ())-
2182 ));-
2183 -
2184 (*__errno_location ()) -
2185 = saved_errno;-
2186 return
never executed: return -1;
-1;
never executed: return -1;
0
2187 }-
2188 if (unlink_first == 1
unlink_first == 1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2189 if (unlink(path) != 0
unlink(path) != 0Description
TRUEnever evaluated
FALSEnever evaluated
&&
0
2190 (*
(*__errno_location ()) != 2Description
TRUEnever evaluated
FALSEnever evaluated
__errno_location ())
(*__errno_location ()) != 2Description
TRUEnever evaluated
FALSEnever evaluated
0
2191 !=
(*__errno_location ()) != 2Description
TRUEnever evaluated
FALSEnever evaluated
0
2192 2
(*__errno_location ()) != 2Description
TRUEnever evaluated
FALSEnever evaluated
0
2193 )-
2194 error("unlink(%s): %.100s", path, strerror(
never executed: error("unlink(%s): %.100s", path, strerror( (*__errno_location ()) ));
0
2195 (*__errno_location ())
never executed: error("unlink(%s): %.100s", path, strerror( (*__errno_location ()) ));
0
2196 ));
never executed: error("unlink(%s): %.100s", path, strerror( (*__errno_location ()) ));
0
2197 }
never executed: end of block
0
2198 if (bind(sock, (struct sockaddr *)&sunaddr, sizeof(sunaddr)) < 0
bind(sock, (st...(sunaddr)) < 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2199 saved_errno = -
2200 (*__errno_location ())-
2201 ;-
2202 error("%s: cannot bind to path %s: %s",-
2203 __func__, path, strerror(-
2204 (*__errno_location ())-
2205 ));-
2206 close(sock);-
2207 -
2208 (*__errno_location ()) -
2209 = saved_errno;-
2210 return
never executed: return -1;
-1;
never executed: return -1;
0
2211 }-
2212 if (listen(sock, backlog) < 0
listen(sock, backlog) < 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2213 saved_errno = -
2214 (*__errno_location ())-
2215 ;-
2216 error("%s: cannot listen on path %s: %s",-
2217 __func__, path, strerror(-
2218 (*__errno_location ())-
2219 ));-
2220 close(sock);-
2221 unlink(path);-
2222 -
2223 (*__errno_location ()) -
2224 = saved_errno;-
2225 return
never executed: return -1;
-1;
never executed: return -1;
0
2226 }-
2227 return
never executed: return sock;
sock;
never executed: return sock;
0
2228}-
2229-
2230void-
2231sock_set_v6only(int s)-
2232{-
2233-
2234 int on = 1;-
2235-
2236 debug3("%s: set socket %d IPV6_V6ONLY", __func__, s);-
2237 if (setsockopt(s,
setsockopt(s, ...eof(on)) == -1Description
TRUEnever evaluated
FALSEnever evaluated
0
2238 IPPROTO_IPV6
setsockopt(s, ...eof(on)) == -1Description
TRUEnever evaluated
FALSEnever evaluated
0
2239 ,
setsockopt(s, ...eof(on)) == -1Description
TRUEnever evaluated
FALSEnever evaluated
0
2240 26
setsockopt(s, ...eof(on)) == -1Description
TRUEnever evaluated
FALSEnever evaluated
0
2241 , &on, sizeof(on)) == -1
setsockopt(s, ...eof(on)) == -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2242 error("setsockopt IPV6_V6ONLY: %s", strerror(
never executed: error("setsockopt IPV6_V6ONLY: %s", strerror( (*__errno_location ()) ));
0
2243 (*__errno_location ())
never executed: error("setsockopt IPV6_V6ONLY: %s", strerror( (*__errno_location ()) ));
0
2244 ));
never executed: error("setsockopt IPV6_V6ONLY: %s", strerror( (*__errno_location ()) ));
0
2245-
2246}
never executed: end of block
0
2247-
2248-
2249-
2250-
2251-
2252static int-
2253strcmp_maybe_null(const char *a, const char *b)-
2254{-
2255 if ((a ==
a == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2256 ((void *)0)
a == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2257 && b !=
b != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2258 ((void *)0)
b != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2259 ) || (a !=
a != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2260 ((void *)0)
a != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2261 && b ==
b == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2262 ((void *)0)
b == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2263 ))-
2264 return
never executed: return 0;
0;
never executed: return 0;
0
2265 if (a !=
a != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2266 ((void *)0)
a != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2267 && -
2268 __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2269 a
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2270 ) && __builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2271 b
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2272 ) && (__s1_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2273 a
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2274 ), __s2_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2275 b
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2276 ), (!((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2277 a
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2278 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2279 a
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2280 ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2281 b
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2282 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2283 b
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2284 ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2285 a
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2286 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2287 b
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2288 ) : (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2289 a
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2290 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2291 a
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2292 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2293 a
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2294 ) == 1) && (__s1_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2295 a
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2296 ), __s1_len < 4) ? (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2297 b
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2298 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2299 b
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2300 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2301 b
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2302 ) == 1) ? __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2303 a
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2304 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2305 b
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2306 ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2307 b
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2308 ); int __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2309 a
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2310 ))[0] - __s2[0]); if (__s1_len > 0
__s1_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2311 a
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2312 ))[1] - __s2[1]); if (__s1_len > 1
__s1_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2313 a
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2314 ))[2] - __s2[2]); if (__s1_len > 2
__s1_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( a ))[3] - __s2[3]);
0
2315 a
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( a ))[3] - __s2[3]);
0
2316 ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2317 b
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2318 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2319 b
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2320 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2321 b
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2322 ) == 1) && (__s2_len = __builtin_strlen (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2323 b
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2324 ), __s2_len < 4) ? (__builtin_constant_p (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2325 a
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2326 ) && ((size_t)(const void *)((
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2327 a
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2328 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2329 a
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2330 ) == 1) ? __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2331 a
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2332 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2333 b
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2334 ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2335 a
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2336 ); int __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2337 b
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2338 ))[0] - __s2[0]); if (__s2_len > 0
__s2_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2339 b
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2340 ))[1] - __s2[1]); if (__s2_len > 1
__s2_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2341 b
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2342 ))[2] - __s2[2]); if (__s2_len > 2
__s2_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( b ))[3] - __s2[3]);
0
2343 b
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( b ))[3] - __s2[3]);
0
2344 ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2345 a
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2346 ,
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2347 b
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2348 )))); })
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2349 != 0
__extension__ ... )))); }) != 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2350 return
never executed: return 0;
0;
never executed: return 0;
0
2351 return
never executed: return 1;
1;
never executed: return 1;
0
2352}-
2353-
2354-
2355-
2356-
2357-
2358int-
2359forward_equals(const struct Forward *a, const struct Forward *b)-
2360{-
2361 if (strcmp_maybe_null(a->listen_host, b->listen_host) == 0
strcmp_maybe_n...ten_host) == 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2362 return
never executed: return 0;
0;
never executed: return 0;
0
2363 if (a->listen_port != b->listen_port
a->listen_port...b->listen_portDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2364 return
never executed: return 0;
0;
never executed: return 0;
0
2365 if (strcmp_maybe_null(a->listen_path, b->listen_path) == 0
strcmp_maybe_n...ten_path) == 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2366 return
never executed: return 0;
0;
never executed: return 0;
0
2367 if (strcmp_maybe_null(a->connect_host, b->connect_host) == 0
strcmp_maybe_n...ect_host) == 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2368 return
never executed: return 0;
0;
never executed: return 0;
0
2369 if (a->connect_port != b->connect_port
a->connect_por...->connect_portDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2370 return
never executed: return 0;
0;
never executed: return 0;
0
2371 if (strcmp_maybe_null(a->connect_path, b->connect_path) == 0
strcmp_maybe_n...ect_path) == 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2372 return
never executed: return 0;
0;
never executed: return 0;
0
2373-
2374 return
never executed: return 1;
1;
never executed: return 1;
0
2375}-
2376-
2377-
2378int-
2379daemonized(void)-
2380{-
2381 int fd;-
2382-
2383 if ((
(fd = open( "/...| 0400 )) >= 0Description
TRUEnever evaluated
FALSEnever evaluated
fd = open(
(fd = open( "/...| 0400 )) >= 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2384 "/dev/tty"
(fd = open( "/...| 0400 )) >= 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2385 ,
(fd = open( "/...| 0400 )) >= 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2386 00
(fd = open( "/...| 0400 )) >= 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2387 |
(fd = open( "/...| 0400 )) >= 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2388 0400
(fd = open( "/...| 0400 )) >= 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2389 )) >= 0
(fd = open( "/...| 0400 )) >= 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2390 close(fd);-
2391 return
never executed: return 0;
0;
never executed: return 0;
0
2392 }-
2393 if (getppid() != 1
getppid() != 1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2394 return
never executed: return 0;
0;
never executed: return 0;
0
2395 if (getsid(0) != getpid()
getsid(0) != getpid()Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2396 return
never executed: return 0;
0;
never executed: return 0;
0
2397 debug3("already daemonized");-
2398 return
never executed: return 1;
1;
never executed: return 1;
0
2399}-
2400-
2401-
2402-
2403-
2404-
2405-
2406-
2407int-
2408argv_split(const char *s, int *argcp, char ***argvp)-
2409{-
2410 int r = -1;-
2411 int argc = 0, quote, i, j;-
2412 char *arg, **argv = xcalloc(1, sizeof(*argv));-
2413-
2414 *argvp = -
2415 ((void *)0)-
2416 ;-
2417 *argcp = 0;-
2418-
2419 for (i = 0; s[i] != '\0'
s[i] != '\0'Description
TRUEnever evaluated
FALSEnever evaluated
; i++) {
0
2420-
2421 if (s[i] == ' '
s[i] == ' 'Description
TRUEnever evaluated
FALSEnever evaluated
|| s[i] == '\t'
s[i] == '\t'Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2422 continue;
never executed: continue;
0
2423-
2424-
2425 quote = 0;-
2426 if (s[i] == '\\'
s[i] == '\\'Description
TRUEnever evaluated
FALSEnever evaluated
&&
0
2427 (s[i + 1] == '\''
s[i + 1] == '\''Description
TRUEnever evaluated
FALSEnever evaluated
|| s[i + 1] == '\"'
s[i + 1] == '\"'Description
TRUEnever evaluated
FALSEnever evaluated
|| s[i + 1] == '\\'
s[i + 1] == '\\'Description
TRUEnever evaluated
FALSEnever evaluated
))
0
2428 i++;
never executed: i++;
0
2429 else if (s[i] == '\''
s[i] == '\''Description
TRUEnever evaluated
FALSEnever evaluated
|| s[i] == '"'
s[i] == '"'Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2430 quote = s[i++];
never executed: quote = s[i++];
0
2431-
2432 argv = xreallocarray(argv, (argc + 2), sizeof(*argv));-
2433 arg = argv[argc++] = xcalloc(1, strlen(s + i) + 1);-
2434 argv[argc] = -
2435 ((void *)0)-
2436 ;-
2437-
2438-
2439 for (j = 0; s[i] != '\0'
s[i] != '\0'Description
TRUEnever evaluated
FALSEnever evaluated
; i++) {
0
2440 if (s[i] == '\\'
s[i] == '\\'Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2441 if (s[i + 1] == '\''
s[i + 1] == '\''Description
TRUEnever evaluated
FALSEnever evaluated
||
0
2442 s[i + 1] == '\"'
s[i + 1] == '\"'Description
TRUEnever evaluated
FALSEnever evaluated
||
0
2443 s[i + 1] == '\\'
s[i + 1] == '\\'Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2444 i++;-
2445 arg[j++] = s[i];-
2446 }
never executed: end of block
else {
0
2447-
2448 arg[j++] = s[i];-
2449 }
never executed: end of block
0
2450 } else if (quote == 0
quote == 0Description
TRUEnever evaluated
FALSEnever evaluated
&& (s[i] == ' '
s[i] == ' 'Description
TRUEnever evaluated
FALSEnever evaluated
|| s[i] == '\t'
s[i] == '\t'Description
TRUEnever evaluated
FALSEnever evaluated
))
0
2451 break;
never executed: break;
0
2452 else if (quote != 0
quote != 0Description
TRUEnever evaluated
FALSEnever evaluated
&& s[i] == quote
s[i] == quoteDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2453 break;
never executed: break;
0
2454 else-
2455 arg[j++] = s[i];
never executed: arg[j++] = s[i];
0
2456 }-
2457 if (s[i] == '\0'
s[i] == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2458 if (quote != 0
quote != 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2459-
2460 r = -4;-
2461 goto
never executed: goto out;
out;
never executed: goto out;
0
2462 }-
2463 break;
never executed: break;
0
2464 }-
2465 }
never executed: end of block
0
2466-
2467 *argcp = argc;-
2468 *argvp = argv;-
2469 argc = 0;-
2470 argv = -
2471 ((void *)0)-
2472 ;-
2473 r = 0;-
2474 out:
code before this statement never executed: out:
0
2475 if (argc != 0
argc != 0Description
TRUEnever evaluated
FALSEnever evaluated
&& argv !=
argv != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2476 ((void *)0)
argv != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2477 ) {-
2478 for (i = 0; i < argc
i < argcDescription
TRUEnever evaluated
FALSEnever evaluated
; i++)
0
2479 free(argv[i]);
never executed: free(argv[i]);
0
2480 free(argv);-
2481 }
never executed: end of block
0
2482 return
never executed: return r;
r;
never executed: return r;
0
2483}-
2484-
2485-
2486-
2487-
2488-
2489char *-
2490argv_assemble(int argc, char **argv)-
2491{-
2492 int i, j, ws, r;-
2493 char c, *ret;-
2494 struct sshbuf *buf, *arg;-
2495-
2496 if ((
(buf = sshbuf_...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
buf = sshbuf_new()) ==
(buf = sshbuf_...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2497 ((void *)0)
(buf = sshbuf_...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2498 || (
(arg = sshbuf_...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
arg = sshbuf_new()) ==
(arg = sshbuf_...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2499 ((void *)0)
(arg = sshbuf_...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2500 )-
2501 fatal("%s: sshbuf_new failed", __func__);
never executed: fatal("%s: sshbuf_new failed", __func__);
0
2502-
2503 for (i = 0; i < argc
i < argcDescription
TRUEnever evaluated
FALSEnever evaluated
; i++) {
0
2504 ws = 0;-
2505 sshbuf_reset(arg);-
2506 for (j = 0; argv[i][j] != '\0'
argv[i][j] != '\0'Description
TRUEnever evaluated
FALSEnever evaluated
; j++) {
0
2507 r = 0;-
2508 c = argv[i][j];-
2509 switch (c) {-
2510 case
never executed: case ' ':
' ':
never executed: case ' ':
0
2511 case
never executed: case '\t':
'\t':
never executed: case '\t':
0
2512 ws = 1;-
2513 r = sshbuf_put_u8(arg, c);-
2514 break;
never executed: break;
0
2515 case
never executed: case '\\':
'\\':
never executed: case '\\':
0
2516 case
never executed: case '\'':
'\'':
never executed: case '\'':
0
2517 case
never executed: case '"':
'"':
never executed: case '"':
0
2518 if ((
(r = sshbuf_pu...g, '\\')) != 0Description
TRUEnever evaluated
FALSEnever evaluated
r = sshbuf_put_u8(arg, '\\')) != 0
(r = sshbuf_pu...g, '\\')) != 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2519 break;
never executed: break;
0
2520-
2521 default
never executed: default:
:
never executed: default:
code before this statement never executed: default:
0
2522 r = sshbuf_put_u8(arg, c);-
2523 break;
never executed: break;
0
2524 }-
2525 if (r != 0
r != 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2526 fatal("%s: sshbuf_put_u8: %s",
never executed: fatal("%s: sshbuf_put_u8: %s", __func__, ssh_err(r));
0
2527 __func__, ssh_err(r));
never executed: fatal("%s: sshbuf_put_u8: %s", __func__, ssh_err(r));
0
2528 }
never executed: end of block
0
2529 if ((i != 0
i != 0Description
TRUEnever evaluated
FALSEnever evaluated
&& (
(r = sshbuf_pu...uf, ' ')) != 0Description
TRUEnever evaluated
FALSEnever evaluated
r = sshbuf_put_u8(buf, ' ')) != 0
(r = sshbuf_pu...uf, ' ')) != 0Description
TRUEnever evaluated
FALSEnever evaluated
) ||
0
2530 (ws != 0
ws != 0Description
TRUEnever evaluated
FALSEnever evaluated
&& (
(r = sshbuf_pu...uf, '"')) != 0Description
TRUEnever evaluated
FALSEnever evaluated
r = sshbuf_put_u8(buf, '"')) != 0
(r = sshbuf_pu...uf, '"')) != 0Description
TRUEnever evaluated
FALSEnever evaluated
) ||
0
2531 (
(r = sshbuf_pu...uf, arg)) != 0Description
TRUEnever evaluated
FALSEnever evaluated
r = sshbuf_putb(buf, arg)) != 0
(r = sshbuf_pu...uf, arg)) != 0Description
TRUEnever evaluated
FALSEnever evaluated
||
0
2532 (ws != 0
ws != 0Description
TRUEnever evaluated
FALSEnever evaluated
&& (
(r = sshbuf_pu...uf, '"')) != 0Description
TRUEnever evaluated
FALSEnever evaluated
r = sshbuf_put_u8(buf, '"')) != 0
(r = sshbuf_pu...uf, '"')) != 0Description
TRUEnever evaluated
FALSEnever evaluated
))
0
2533 fatal("%s: buffer error: %s", __func__, ssh_err(r));
never executed: fatal("%s: buffer error: %s", __func__, ssh_err(r));
0
2534 }
never executed: end of block
0
2535 if ((
(ret = malloc(...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
ret = malloc(sshbuf_len(buf) + 1)) ==
(ret = malloc(...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2536 ((void *)0)
(ret = malloc(...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2537 )-
2538 fatal("%s: malloc failed", __func__);
never executed: fatal("%s: malloc failed", __func__);
0
2539 memcpy(ret, sshbuf_ptr(buf), sshbuf_len(buf));-
2540 ret[sshbuf_len(buf)] = '\0';-
2541 sshbuf_free(buf);-
2542 sshbuf_free(arg);-
2543 return
never executed: return ret;
ret;
never executed: return ret;
0
2544}-
2545-
2546-
2547int-
2548exited_cleanly(pid_t pid, const char *tag, const char *cmd, int quiet)-
2549{-
2550 int status;-
2551-
2552 while (waitpid(pid, &status, 0) == -1
waitpid(pid, &status, 0) == -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2553 if (-
2554 (*
(*__errno_location ()) != 4Description
TRUEnever evaluated
FALSEnever evaluated
__errno_location ())
(*__errno_location ()) != 4Description
TRUEnever evaluated
FALSEnever evaluated
0
2555 !=
(*__errno_location ()) != 4Description
TRUEnever evaluated
FALSEnever evaluated
0
2556 4
(*__errno_location ()) != 4Description
TRUEnever evaluated
FALSEnever evaluated
0
2557 ) {-
2558 error("%s: waitpid: %s", tag, strerror(-
2559 (*__errno_location ())-
2560 ));-
2561 return
never executed: return -1;
-1;
never executed: return -1;
0
2562 }-
2563 }
never executed: end of block
0
2564 if (-
2565 (((
(((signed char... 1) >> 1) > 0)Description
TRUEnever evaluated
FALSEnever evaluated
signed char) (((
(((signed char... 1) >> 1) > 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2566 status
(((signed char... 1) >> 1) > 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2567 ) & 0x7f) + 1) >> 1) > 0)
(((signed char... 1) >> 1) > 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2568 ) {-
2569 error("%s %s exited on signal %d", tag, cmd, -
2570 ((-
2571 status-
2572 ) & 0x7f)-
2573 );-
2574 return
never executed: return -1;
-1;
never executed: return -1;
0
2575 } else if (-
2576 (((
((( status ) &...00) >> 8) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2577 status
((( status ) &...00) >> 8) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2578 ) & 0xff00) >> 8)
((( status ) &...00) >> 8) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2579 != 0
((( status ) &...00) >> 8) != 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2580 do_log2(quiet ? SYSLOG_LEVEL_DEBUG1 : SYSLOG_LEVEL_INFO,-
2581 "%s %s failed, status %d", tag, cmd, -
2582 (((-
2583 status-
2584 ) & 0xff00) >> 8)-
2585 );-
2586 return
never executed: return -1;
-1;
never executed: return -1;
0
2587 }-
2588 return
never executed: return 0;
0;
never executed: return 0;
0
2589}-
2590int-
2591safe_path(const char *name, struct stat *stp, const char *pw_dir,-
2592 uid_t uid, char *err, size_t errlen)-
2593{-
2594 char buf[-
2595 4096-
2596 ], homedir[-
2597 4096-
2598 ];-
2599 char *cp;-
2600 int comparehome = 0;-
2601 struct stat st;-
2602-
2603 if (_ssh_compat_realpath(name, buf) ==
_ssh_compat_re...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2604 ((void *)0)
_ssh_compat_re...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2605 ) {-
2606 snprintf(err, errlen, "realpath %s failed: %s", name,-
2607 strerror(-
2608 (*__errno_location ())-
2609 ));-
2610 return
never executed: return -1;
-1;
never executed: return -1;
0
2611 }-
2612 if (pw_dir !=
pw_dir != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2613 ((void *)0)
pw_dir != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2614 && _ssh_compat_realpath(pw_dir, homedir) !=
_ssh_compat_re...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2615 ((void *)0)
_ssh_compat_re...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2616 )-
2617 comparehome = 1;
never executed: comparehome = 1;
0
2618-
2619 if (!
! (((( stp->st... == (0100000))Description
TRUEnever evaluated
FALSEnever evaluated
0
2620 ((((
! (((( stp->st... == (0100000))Description
TRUEnever evaluated
FALSEnever evaluated
0
2621 stp->st_mode
! (((( stp->st... == (0100000))Description
TRUEnever evaluated
FALSEnever evaluated
0
2622 )) & 0170000) == (0100000))
! (((( stp->st... == (0100000))Description
TRUEnever evaluated
FALSEnever evaluated
0
2623 ) {-
2624 snprintf(err, errlen, "%s is not a regular file", buf);-
2625 return
never executed: return -1;
-1;
never executed: return -1;
0
2626 }-
2627 if ((!platform_sys_dir_uid(stp->st_uid)
!platform_sys_...d(stp->st_uid)Description
TRUEnever evaluated
FALSEnever evaluated
&& stp->st_uid != uid
stp->st_uid != uidDescription
TRUEnever evaluated
FALSEnever evaluated
) ||
0
2628 (
(stp->st_mode & 022) != 0Description
TRUEnever evaluated
FALSEnever evaluated
stp->st_mode & 022) != 0
(stp->st_mode & 022) != 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2629 snprintf(err, errlen, "bad ownership or modes for file %s",-
2630 buf);-
2631 return
never executed: return -1;
-1;
never executed: return -1;
0
2632 }-
2633-
2634-
2635 for (;;) {-
2636 if ((
(cp = dirname(...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
cp = dirname(buf)) ==
(cp = dirname(...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2637 ((void *)0)
(cp = dirname(...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2638 ) {-
2639 snprintf(err, errlen, "dirname() failed");-
2640 return
never executed: return -1;
-1;
never executed: return -1;
0
2641 }-
2642 strlcpy(buf, cp, sizeof(buf));-
2643-
2644 if (stat(buf, &st) < 0
stat(buf, &st) < 0Description
TRUEnever evaluated
FALSEnever evaluated
||
0
2645 (!platform_sys_dir_uid(st.st_uid)
!platform_sys_...uid(st.st_uid)Description
TRUEnever evaluated
FALSEnever evaluated
&& st.st_uid != uid
st.st_uid != uidDescription
TRUEnever evaluated
FALSEnever evaluated
) ||
0
2646 (
(st.st_mode & 022) != 0Description
TRUEnever evaluated
FALSEnever evaluated
st.st_mode & 022) != 0
(st.st_mode & 022) != 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2647 snprintf(err, errlen,-
2648 "bad ownership or modes for directory %s", buf);-
2649 return
never executed: return -1;
-1;
never executed: return -1;
0
2650 }-
2651-
2652-
2653 if (comparehome
comparehomeDescription
TRUEnever evaluated
FALSEnever evaluated
&&
0
2654 __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2655 homedir
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2656 ) && __builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2657 buf
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2658 ) && (__s1_len = __builtin_strlen (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2659 homedir
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2660 ), __s2_len = __builtin_strlen (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2661 buf
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2662 ), (!((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2663 homedir
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2664 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2665 homedir
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2666 ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2667 buf
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2668 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2669 buf
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2670 ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2671 homedir
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2672 ,
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2673 buf
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2674 ) : (__builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2675 homedir
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2676 ) && ((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2677 homedir
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2678 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2679 homedir
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2680 ) == 1) && (__s1_len = __builtin_strlen (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2681 homedir
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2682 ), __s1_len < 4) ? (__builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2683 buf
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2684 ) && ((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2685 buf
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2686 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2687 buf
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2688 ) == 1) ? __builtin_strcmp (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2689 homedir
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2690 ,
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2691 buf
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2692 ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2693 buf
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2694 ); int __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2695 homedir
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2696 ))[0] - __s2[0]); if (__s1_len > 0
__s1_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2697 homedir
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2698 ))[1] - __s2[1]); if (__s1_len > 1
__s1_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2699 homedir
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2700 ))[2] - __s2[2]); if (__s1_len > 2
__s1_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( homedir ))[3] - __s2[3]);
0
2701 homedir
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( homedir ))[3] - __s2[3]);
0
2702 ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2703 buf
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2704 ) && ((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2705 buf
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2706 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2707 buf
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2708 ) == 1) && (__s2_len = __builtin_strlen (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2709 buf
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2710 ), __s2_len < 4) ? (__builtin_constant_p (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2711 homedir
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2712 ) && ((size_t)(const void *)((
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2713 homedir
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2714 ) + 1) - (size_t)(const void *)(
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2715 homedir
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2716 ) == 1) ? __builtin_strcmp (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2717 homedir
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2718 ,
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2719 buf
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2720 ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2721 homedir
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2722 ); int __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2723 buf
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2724 ))[0] - __s2[0]); if (__s2_len > 0
__s2_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2725 buf
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2726 ))[1] - __s2[1]); if (__s2_len > 1
__s2_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2727 buf
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2728 ))[2] - __s2[2]); if (__s2_len > 2
__s2_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( buf ))[3] - __s2[3]);
0
2729 buf
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( buf ))[3] - __s2[3]);
0
2730 ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2731 homedir
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2732 ,
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2733 buf
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2734 )))); })
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2735 == 0
__extension__ ... )))); }) == 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2736 break;
never executed: break;
0
2737-
2738-
2739-
2740-
2741-
2742 if ((
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2743 __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2744 "/"
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2745 ) && __builtin_constant_p (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2746 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2747 ) && (__s1_len = __builtin_strlen (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2748 "/"
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2749 ), __s2_len = __builtin_strlen (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2750 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2751 ), (!((size_t)(const void *)((
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2752 "/"
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2753 ) + 1) - (size_t)(const void *)(
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2754 "/"
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2755 ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2756 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2757 ) + 1) - (size_t)(const void *)(
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2758 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2759 ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2760 "/"
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2761 ,
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2762 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2763 ) : (__builtin_constant_p (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2764 "/"
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2765 ) && ((size_t)(const void *)((
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2766 "/"
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2767 ) + 1) - (size_t)(const void *)(
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2768 "/"
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2769 ) == 1) && (__s1_len = __builtin_strlen (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2770 "/"
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2771 ), __s1_len < 4) ? (__builtin_constant_p (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2772 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2773 ) && ((size_t)(const void *)((
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2774 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2775 ) + 1) - (size_t)(const void *)(
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2776 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2777 ) == 1) ? __builtin_strcmp (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2778 "/"
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2779 ,
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2780 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2781 ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2782 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2783 ); int __result = (((const unsigned char *) (const char *) (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2784 "/"
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2785 ))[0] - __s2[0]); if (__s1_len > 0
__s1_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2786 "/"
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2787 ))[1] - __s2[1]); if (__s1_len > 1
__s1_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2788 "/"
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2789 ))[2] - __s2[2]); if (__s1_len > 2
__s1_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( "/" ))[3] - __s2[3]);
0
2790 "/"
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( "/" ))[3] - __s2[3]);
0
2791 ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2792 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2793 ) && ((size_t)(const void *)((
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2794 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2795 ) + 1) - (size_t)(const void *)(
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2796 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2797 ) == 1) && (__s2_len = __builtin_strlen (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2798 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2799 ), __s2_len < 4) ? (__builtin_constant_p (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2800 "/"
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2801 ) && ((size_t)(const void *)((
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2802 "/"
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2803 ) + 1) - (size_t)(const void *)(
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2804 "/"
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2805 ) == 1) ? __builtin_strcmp (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2806 "/"
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2807 ,
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2808 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2809 ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2810 "/"
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2811 ); int __result = (((const unsigned char *) (const char *) (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2812 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2813 ))[0] - __s2[0]); if (__s2_len > 0
__s2_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2814 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2815 ))[1] - __s2[1]); if (__s2_len > 1
__s2_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2816 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2817 ))[2] - __s2[2]); if (__s2_len > 2
__s2_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( buf ))[3] - __s2[3]);
0
2818 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( buf ))[3] - __s2[3]);
0
2819 ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2820 "/"
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2821 ,
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2822 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2823 )))); })
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2824 == 0)
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
|| (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2825 __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2826 "."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2827 ) && __builtin_constant_p (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2828 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2829 ) && (__s1_len = __builtin_strlen (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2830 "."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2831 ), __s2_len = __builtin_strlen (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2832 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2833 ), (!((size_t)(const void *)((
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2834 "."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2835 ) + 1) - (size_t)(const void *)(
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2836 "."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2837 ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2838 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2839 ) + 1) - (size_t)(const void *)(
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2840 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2841 ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2842 "."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2843 ,
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2844 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2845 ) : (__builtin_constant_p (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2846 "."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2847 ) && ((size_t)(const void *)((
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2848 "."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2849 ) + 1) - (size_t)(const void *)(
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2850 "."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2851 ) == 1) && (__s1_len = __builtin_strlen (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2852 "."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2853 ), __s1_len < 4) ? (__builtin_constant_p (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2854 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2855 ) && ((size_t)(const void *)((
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2856 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2857 ) + 1) - (size_t)(const void *)(
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2858 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2859 ) == 1) ? __builtin_strcmp (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2860 "."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2861 ,
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2862 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2863 ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2864 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2865 ); int __result = (((const unsigned char *) (const char *) (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2866 "."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2867 ))[0] - __s2[0]); if (__s1_len > 0
__s1_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2868 "."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2869 ))[1] - __s2[1]); if (__s1_len > 1
__s1_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2870 "."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2871 ))[2] - __s2[2]); if (__s1_len > 2
__s1_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( "." ))[3] - __s2[3]);
0
2872 "."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( "." ))[3] - __s2[3]);
0
2873 ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2874 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2875 ) && ((size_t)(const void *)((
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2876 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2877 ) + 1) - (size_t)(const void *)(
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2878 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2879 ) == 1) && (__s2_len = __builtin_strlen (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2880 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2881 ), __s2_len < 4) ? (__builtin_constant_p (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2882 "."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2883 ) && ((size_t)(const void *)((
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2884 "."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2885 ) + 1) - (size_t)(const void *)(
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2886 "."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2887 ) == 1) ? __builtin_strcmp (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2888 "."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2889 ,
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2890 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2891 ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2892 "."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2893 ); int __result = (((const unsigned char *) (const char *) (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2894 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2895 ))[0] - __s2[0]); if (__s2_len > 0
__s2_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2896 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2897 ))[1] - __s2[1]); if (__s2_len > 1
__s2_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2898 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2899 ))[2] - __s2[2]); if (__s2_len > 2
__s2_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( buf ))[3] - __s2[3]);
0
2900 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( buf ))[3] - __s2[3]);
0
2901 ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2902 "."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2903 ,
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2904 buf
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2905 )))); })
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2906 == 0)
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2907 break;
never executed: break;
0
2908 }
never executed: end of block
0
2909 return
never executed: return 0;
0;
never executed: return 0;
0
2910}-
2911-
2912-
2913-
2914-
2915-
2916-
2917-
2918int-
2919safe_path_fd(int fd, const char *file, struct passwd *pw,-
2920 char *err, size_t errlen)-
2921{-
2922 struct stat st;-
2923-
2924-
2925 if (fstat(fd, &st) < 0
fstat(fd, &st) < 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2926 snprintf(err, errlen, "cannot stat file %s: %s",-
2927 file, strerror(-
2928 (*__errno_location ())-
2929 ));-
2930 return
never executed: return -1;
-1;
never executed: return -1;
0
2931 }-
2932 return
never executed: return safe_path(file, &st, pw->pw_dir, pw->pw_uid, err, errlen);
safe_path(file, &st, pw->pw_dir, pw->pw_uid, err, errlen);
never executed: return safe_path(file, &st, pw->pw_dir, pw->pw_uid, err, errlen);
0
2933}-
2934-
2935-
2936-
2937-
2938-
2939void-
2940child_set_env(char ***envp, u_int *envsizep, const char *name,-
2941 const char *value)-
2942{-
2943 char **env;-
2944 u_int envsize;-
2945 u_int i, namelen;-
2946-
2947 if (-
2948 (
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
__extension__ (__builtin_constant_p (
__builtin_constant_p ( '=' )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2949 '='
__builtin_constant_p ( '=' )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2950 )
__builtin_constant_p ( '=' )Description
TRUEnever evaluated
FALSEnever evaluated
&& !__builtin_constant_p (
!__builtin_constant_p ( name )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2951 name
!__builtin_constant_p ( name )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2952 )
!__builtin_constant_p ( name )Description
TRUEnever evaluated
FALSEnever evaluated
&& (
( '=' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2953 '='
( '=' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2954 ) == '\0'
( '=' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
? (char *) __rawmemchr (
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2955 name
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2956 ,
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2957 '='
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2958 ) : __builtin_strchr (
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2959 name
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2960 ,
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2961 '='
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2962 )))
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2963 !=
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2964 ((void *)0)
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2965 ) {-
2966 error("Invalid environment variable \"%.100s\"", name);-
2967 return;
never executed: return;
0
2968 }-
2969-
2970-
2971-
2972-
2973-
2974 if (*
*envp == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
envp ==
*envp == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2975 ((void *)0)
*envp == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
2976 && *
*envsizep == 0Description
TRUEnever evaluated
FALSEnever evaluated
envsizep == 0
*envsizep == 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2977 *envp = xmalloc(sizeof(char *));-
2978 *envp[0] = -
2979 ((void *)0)-
2980 ;-
2981 *envsizep = 1;-
2982 }
never executed: end of block
0
2983-
2984-
2985-
2986-
2987-
2988-
2989 env = *envp;-
2990 namelen = strlen(name);-
2991 for (i = 0; env[i]
env[i]Description
TRUEnever evaluated
FALSEnever evaluated
; i++)
0
2992 if (-
2993 (
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
__extension__ (__builtin_constant_p (
__builtin_cons..._p ( namelen )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2994 namelen
__builtin_cons..._p ( namelen )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2995 )
__builtin_cons..._p ( namelen )Description
TRUEnever evaluated
FALSEnever evaluated
&& ((__builtin_constant_p (
__builtin_cons...t_p ( env[i] )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2996 env[i]
__builtin_cons...t_p ( env[i] )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2997 )
__builtin_cons...t_p ( env[i] )Description
TRUEnever evaluated
FALSEnever evaluated
&& strlen (
strlen ( env[i...) ( namelen ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2998 env[i]
strlen ( env[i...) ( namelen ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
2999 ) < ((size_t) (
strlen ( env[i...) ( namelen ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3000 namelen
strlen ( env[i...) ( namelen ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3001 ))
strlen ( env[i...) ( namelen ))Description
TRUEnever evaluated
FALSEnever evaluated
) || (__builtin_constant_p (
__builtin_constant_p ( name )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3002 name
__builtin_constant_p ( name )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3003 )
__builtin_constant_p ( name )Description
TRUEnever evaluated
FALSEnever evaluated
&& strlen (
strlen ( name ...) ( namelen ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3004 name
strlen ( name ...) ( namelen ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3005 ) < ((size_t) (
strlen ( name ...) ( namelen ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3006 namelen
strlen ( name ...) ( namelen ))Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3007 ))
strlen ( name ...) ( namelen ))Description
TRUEnever evaluated
FALSEnever evaluated
)) ? __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3008 env[i]
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3009 ) && __builtin_constant_p (
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3010 name
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3011 ) && (__s1_len = __builtin_strlen (
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3012 env[i]
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3013 ), __s2_len = __builtin_strlen (
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3014 name
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3015 ), (!((size_t)(const void *)((
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3016 env[i]
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3017 ) + 1) - (size_t)(const void *)(
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3018 env[i]
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3019 ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3020 name
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3021 ) + 1) - (size_t)(const void *)(
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3022 name
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3023 ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3024 env[i]
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3025 ,
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3026 name
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3027 ) : (__builtin_constant_p (
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3028 env[i]
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3029 ) && ((size_t)(const void *)((
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3030 env[i]
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3031 ) + 1) - (size_t)(const void *)(
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3032 env[i]
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3033 ) == 1) && (__s1_len = __builtin_strlen (
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3034 env[i]
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3035 ), __s1_len < 4) ? (__builtin_constant_p (
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3036 name
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3037 ) && ((size_t)(const void *)((
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3038 name
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3039 ) + 1) - (size_t)(const void *)(
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3040 name
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3041 ) == 1) ? __builtin_strcmp (
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3042 env[i]
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3043 ,
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3044 name
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3045 ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3046 name
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3047 ); int __result = (((const unsigned char *) (const char *) (
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3048 env[i]
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3049 ))[0] - __s2[0]); if (__s1_len > 0
__s1_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3050 env[i]
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3051 ))[1] - __s2[1]); if (__s1_len > 1
__s1_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3052 env[i]
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3053 ))[2] - __s2[2]); if (__s1_len > 2
__s1_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( env[i] ))[3] - __s2[3]);
0
3054 env[i]
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( env[i] ))[3] - __s2[3]);
0
3055 ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3056 name
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3057 ) && ((size_t)(const void *)((
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3058 name
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3059 ) + 1) - (size_t)(const void *)(
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3060 name
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3061 ) == 1) && (__s2_len = __builtin_strlen (
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3062 name
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3063 ), __s2_len < 4) ? (__builtin_constant_p (
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3064 env[i]
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3065 ) && ((size_t)(const void *)((
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3066 env[i]
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3067 ) + 1) - (size_t)(const void *)(
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3068 env[i]
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3069 ) == 1) ? __builtin_strcmp (
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3070 env[i]
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3071 ,
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3072 name
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3073 ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3074 env[i]
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3075 ); int __result = (((const unsigned char *) (const char *) (
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3076 name
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3077 ))[0] - __s2[0]); if (__s2_len > 0
__s2_len > 0Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3078 name
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3079 ))[1] - __s2[1]); if (__s2_len > 1
__s2_len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) { __result = (((const unsigned char *) (const char *) (
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3080 name
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3081 ))[2] - __s2[2]); if (__s2_len > 2
__s2_len > 2Description
TRUEnever evaluated
FALSEnever evaluated
&& __result == 0
__result == 0Description
TRUEnever evaluated
FALSEnever evaluated
) __result = (((const unsigned char *) (const char *) (
never executed: __result = (((const unsigned char *) (const char *) ( name ))[3] - __s2[3]);
0
3082 name
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( name ))[3] - __s2[3]);
0
3083 ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3084 env[i]
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3085 ,
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3086 name
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3087 )))); }) : strncmp (
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3088 env[i]
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3089 ,
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3090 name
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3091 ,
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3092 namelen
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3093 )))
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
3094 == 0
(__extension__...melen ))) == 0Description
TRUEnever evaluated
FALSEnever evaluated
&& env[i][namelen] == '='
env[i][namelen] == '='Description
TRUEnever evaluated
FALSEnever evaluated
)
0
3095 break;
never executed: break;
0
3096 if (env[i]
env[i]Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
3097-
3098 free(env[i]);-
3099 }
never executed: end of block
else {
0
3100-
3101 envsize = *envsizep;-
3102 if (i >= envsize - 1
i >= envsize - 1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
3103 if (envsize >= 1000
envsize >= 1000Description
TRUEnever evaluated
FALSEnever evaluated
)
0
3104 fatal("child_set_env: too many env vars");
never executed: fatal("child_set_env: too many env vars");
0
3105 envsize += 50;-
3106 env = (*envp) = xreallocarray(env, envsize, sizeof(char *));-
3107 *envsizep = envsize;-
3108 }
never executed: end of block
0
3109-
3110 env[i + 1] = -
3111 ((void *)0)-
3112 ;-
3113 }
never executed: end of block
0
3114-
3115-
3116-
3117 env[i] = xmalloc(strlen(name) + 1 + strlen(value) + 1);-
3118 snprintf(env[i], strlen(name) + 1 + strlen(value) + 1, "%s=%s", name, value);-
3119}
never executed: end of block
0
3120-
3121-
3122-
3123-
3124-
3125int-
3126valid_domain(char *name, int makelower, const char **errstr)-
3127{-
3128 size_t i, l = strlen(name);-
3129 u_char c, last = '\0';-
3130 static char errbuf[256];-
3131-
3132 if (l == 0
l == 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
3133 strlcpy(errbuf, "empty domain name", sizeof(errbuf));-
3134 goto
never executed: goto bad;
bad;
never executed: goto bad;
0
3135 }-
3136 if (!
! ((*__ctype_b...int) _ISalpha)Description
TRUEnever evaluated
FALSEnever evaluated
0
3137 ((*__ctype_b_loc ())[(int) ((
! ((*__ctype_b...int) _ISalpha)Description
TRUEnever evaluated
FALSEnever evaluated
0
3138 (u_char)name[0]
! ((*__ctype_b...int) _ISalpha)Description
TRUEnever evaluated
FALSEnever evaluated
0
3139 ))] & (unsigned short int) _ISalpha)
! ((*__ctype_b...int) _ISalpha)Description
TRUEnever evaluated
FALSEnever evaluated
0
3140 && !
! ((*__ctype_b...int) _ISdigit)Description
TRUEnever evaluated
FALSEnever evaluated
0
3141 ((*__ctype_b_loc ())[(int) ((
! ((*__ctype_b...int) _ISdigit)Description
TRUEnever evaluated
FALSEnever evaluated
0
3142 (u_char)name[0]
! ((*__ctype_b...int) _ISdigit)Description
TRUEnever evaluated
FALSEnever evaluated
0
3143 ))] & (unsigned short int) _ISdigit)
! ((*__ctype_b...int) _ISdigit)Description
TRUEnever evaluated
FALSEnever evaluated
0
3144 ) {-
3145 snprintf(errbuf, sizeof(errbuf), "domain name \"%.100s\" "-
3146 "starts with invalid character", name);-
3147 goto
never executed: goto bad;
bad;
never executed: goto bad;
0
3148 }-
3149 for (i = 0; i < l
i < lDescription
TRUEnever evaluated
FALSEnever evaluated
; i++) {
0
3150 c = -
3151 (__extension__ ({ int __res; if (sizeof (
sizeof ( (u_char)name[i] ) > 1Description
TRUEnever evaluated
FALSEnever evaluated
0
3152 (u_char)name[i]
sizeof ( (u_char)name[i] ) > 1Description
TRUEnever evaluated
FALSEnever evaluated
0
3153 ) > 1
sizeof ( (u_char)name[i] ) > 1Description
TRUEnever evaluated
FALSEnever evaluated
) { if (__builtin_constant_p (
__builtin_cons...char)name[i] )Description
TRUEnever evaluated
FALSEnever evaluated
0
3154 (u_char)name[i]
__builtin_cons...char)name[i] )Description
TRUEnever evaluated
FALSEnever evaluated
0
3155 )
__builtin_cons...char)name[i] )Description
TRUEnever evaluated
FALSEnever evaluated
) { int __c = (
0
3156 (u_char)name[i]-
3157 ); __res = __c < -128
__c < -128Description
TRUEnever evaluated
FALSEnever evaluated
|| __c > 255
__c > 255Description
TRUEnever evaluated
FALSEnever evaluated
? __c : (*__ctype_tolower_loc ())[__c]; }
never executed: end of block
else __res = tolower (
never executed: __res = tolower ( (u_char)name[i] );
0
3158 (u_char)name[i]
never executed: __res = tolower ( (u_char)name[i] );
0
3159 );
never executed: __res = tolower ( (u_char)name[i] );
} else __res = (*__ctype_tolower_loc ())[(int) (
never executed: __res = (*__ctype_tolower_loc ())[(int) ( (u_char)name[i] )];
0
3160 (u_char)name[i]
never executed: __res = (*__ctype_tolower_loc ())[(int) ( (u_char)name[i] )];
0
3161 )];
never executed: __res = (*__ctype_tolower_loc ())[(int) ( (u_char)name[i] )];
__res; }))
0
3162 ;-
3163 if (makelower
makelowerDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
3164 name[i] = (char)c;
never executed: name[i] = (char)c;
0
3165 if (last == '.'
last == '.'Description
TRUEnever evaluated
FALSEnever evaluated
&& c == '.'
c == '.'Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
3166 snprintf(errbuf, sizeof(errbuf), "domain name "-
3167 "\"%.100s\" contains consecutive separators", name);-
3168 goto
never executed: goto bad;
bad;
never executed: goto bad;
0
3169 }-
3170 if (c != '.'
c != '.'Description
TRUEnever evaluated
FALSEnever evaluated
&& c != '-'
c != '-'Description
TRUEnever evaluated
FALSEnever evaluated
&& !
! ((*__ctype_b...int) _ISalnum)Description
TRUEnever evaluated
FALSEnever evaluated
0
3171 ((*__ctype_b_loc ())[(int) ((
! ((*__ctype_b...int) _ISalnum)Description
TRUEnever evaluated
FALSEnever evaluated
0
3172 c
! ((*__ctype_b...int) _ISalnum)Description
TRUEnever evaluated
FALSEnever evaluated
0
3173 ))] & (unsigned short int) _ISalnum)
! ((*__ctype_b...int) _ISalnum)Description
TRUEnever evaluated
FALSEnever evaluated
0
3174 &&-
3175 c != '_'
c != '_'Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
3176 snprintf(errbuf, sizeof(errbuf), "domain name "-
3177 "\"%.100s\" contains invalid characters", name);-
3178 goto
never executed: goto bad;
bad;
never executed: goto bad;
0
3179 }-
3180 last = c;-
3181 }
never executed: end of block
0
3182 if (name[l - 1] == '.'
name[l - 1] == '.'Description
TRUEnever evaluated
FALSEnever evaluated
)
0
3183 name[l - 1] = '\0';
never executed: name[l - 1] = '\0';
0
3184 if (errstr !=
errstr != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
3185 ((void *)0)
errstr != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
3186 )-
3187 *
never executed: *errstr = ((void *)0) ;
errstr =
never executed: *errstr = ((void *)0) ;
0
3188 ((void *)0)
never executed: *errstr = ((void *)0) ;
0
3189 ;
never executed: *errstr = ((void *)0) ;
0
3190 return
never executed: return 1;
1;
never executed: return 1;
0
3191bad:-
3192 if (errstr !=
errstr != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
3193 ((void *)0)
errstr != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
3194 )-
3195 *
never executed: *errstr = errbuf;
errstr = errbuf;
never executed: *errstr = errbuf;
0
3196 return
never executed: return 0;
0;
never executed: return 0;
0
3197}-
3198-
3199const char *-
3200atoi_err(const char *nptr, int *val)-
3201{-
3202 const char *errstr = -
3203 ((void *)0)-
3204 ;-
3205 long long num;-
3206-
3207 if (nptr ==
nptr == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
3208 ((void *)0)
nptr == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
3209 || *
*nptr == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
nptr == '\0'
*nptr == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
)
0
3210 return
never executed: return "missing";
"missing";
never executed: return "missing";
0
3211 num = strtonum(nptr, 0, 0x7fffffff, &errstr);-
3212 if (errstr ==
errstr == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
3213 ((void *)0)
errstr == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
3214 )-
3215 *
never executed: *val = (int)num;
val = (int)num;
never executed: *val = (int)num;
0
3216 return
never executed: return errstr;
errstr;
never executed: return errstr;
0
3217}-
3218-
3219int-
3220parse_absolute_time(const char *s, uint64_t *tp)-
3221{-
3222 struct tm tm;-
3223 time_t tt;-
3224 char buf[32], *fmt;-
3225-
3226 *tp = 0;-
3227-
3228-
3229-
3230-
3231-
3232-
3233 switch (strlen(s)) {-
3234 case
never executed: case 8:
8:
never executed: case 8:
0
3235 fmt = "%Y-%m-%d";-
3236 snprintf(buf, sizeof(buf), "%.4s-%.2s-%.2s", s, s + 4, s + 6);-
3237 break;
never executed: break;
0
3238 case
never executed: case 12:
12:
never executed: case 12:
0
3239 fmt = "%Y-%m-%dT%H:%M";-
3240 snprintf(buf, sizeof(buf), "%.4s-%.2s-%.2sT%.2s:%.2s",-
3241 s, s + 4, s + 6, s + 8, s + 10);-
3242 break;
never executed: break;
0
3243 case
never executed: case 14:
14:
never executed: case 14:
0
3244 fmt = "%Y-%m-%dT%H:%M:%S";-
3245 snprintf(buf, sizeof(buf), "%.4s-%.2s-%.2sT%.2s:%.2s:%.2s",-
3246 s, s + 4, s + 6, s + 8, s + 10, s + 12);-
3247 break;
never executed: break;
0
3248 default
never executed: default:
:
never executed: default:
0
3249 return
never executed: return -4;
-4;
never executed: return -4;
0
3250 }-
3251-
3252 memset(&tm, 0, sizeof(tm));-
3253 if (strptime(buf, fmt, &tm) ==
strptime(buf, ...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
3254 ((void *)0)
strptime(buf, ...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
3255 )-
3256 return
never executed: return -4;
-4;
never executed: return -4;
0
3257 if ((
(tt = mktime(&tm)) < 0Description
TRUEnever evaluated
FALSEnever evaluated
tt = mktime(&tm)) < 0
(tt = mktime(&tm)) < 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
3258 return
never executed: return -4;
-4;
never executed: return -4;
0
3259-
3260 *tp = (uint64_t)tt;-
3261 return
never executed: return 0;
0;
never executed: return 0;
0
3262}-
3263-
3264void-
3265format_absolute_time(uint64_t t, char *buf, size_t len)-
3266{-
3267 time_t tt = t > 0x7fffffff
t > 0x7fffffffDescription
TRUEnever evaluated
FALSEnever evaluated
? 0x7fffffff : t;
0
3268 struct tm tm;-
3269-
3270 localtime_r(&tt, &tm);-
3271 strftime(buf, len, "%Y-%m-%dT%H:%M:%S", &tm);-
3272}
never executed: end of block
0
Switch to Source codePreprocessed file

Generated by Squish Coco 4.2.2