OpenCoverage

scp.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/openssh/src/scp.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-
20-
21extern char *__progname;-
22-
23-
24-
25int do_cmd(char *host, char *remuser, int port, char *cmd, int *fdin, int *fdout);-
26int do_cmd2(char *host, char *remuser, int port, char *cmd, int fdin, int fdout);-
27-
28-
29arglist args;-
30arglist remote_remote_args;-
31-
32-
33long long limit_kbps = 0;-
34struct bwlimit bwlimit;-
35-
36-
37char *curfile;-
38-
39-
40int verbose_mode = 0;-
41-
42-
43int showprogress = 1;-
44-
45-
46-
47-
48-
49int throughlocal = 0;-
50-
51-
52int sshport = -1;-
53-
54-
55char *ssh_program = "/var/tmp/openssh-test/bin/ssh";-
56-
57-
58pid_t do_cmd_pid = -1;-
59-
60static void-
61killchild(int signo)-
62{-
63 if (do_cmd_pid > 1
do_cmd_pid > 1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
64 kill(do_cmd_pid, signo ? signo : -
65 15-
66 );-
67 waitpid(do_cmd_pid, -
68 ((void *)0)-
69 , 0);-
70 }
never executed: end of block
0
71-
72 if (signo
signoDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
73 _exit(1);
never executed: _exit(1);
0
74 exit(1);
never executed: exit(1);
0
75}-
76-
77static void-
78suspchild(int signo)-
79{-
80 int status;-
81-
82 if (do_cmd_pid > 1
do_cmd_pid > 1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
83 kill(do_cmd_pid, signo);-
84 while (waitpid(do_cmd_pid, &status,
waitpid(do_cmd...tus, 2 ) == -1Description
TRUEnever evaluated
FALSEnever evaluated
0
85 2
waitpid(do_cmd...tus, 2 ) == -1Description
TRUEnever evaluated
FALSEnever evaluated
0
86 ) == -1
waitpid(do_cmd...tus, 2 ) == -1Description
TRUEnever evaluated
FALSEnever evaluated
&&
0
87 -
88 (*
(*__errno_location ()) == 4Description
TRUEnever evaluated
FALSEnever evaluated
__errno_location ())
(*__errno_location ()) == 4Description
TRUEnever evaluated
FALSEnever evaluated
0
89 ==
(*__errno_location ()) == 4Description
TRUEnever evaluated
FALSEnever evaluated
0
90 4
(*__errno_location ()) == 4Description
TRUEnever evaluated
FALSEnever evaluated
0
91 )-
92 ;
never executed: ;
0
93 kill(getpid(), -
94 19-
95 );-
96 }
never executed: end of block
0
97}
never executed: end of block
0
98-
99static int-
100do_local_cmd(arglist *a)-
101{-
102 u_int i;-
103 int status;-
104 pid_t pid;-
105-
106 if (a->num == 0
a->num == 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
107 fatal("do_local_cmd: no arguments");
never executed: fatal("do_local_cmd: no arguments");
0
108-
109 if (verbose_mode
verbose_modeDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
110 fprintf(-
111 stderr-
112 , "Executing:");-
113 for (i = 0; i < a->num
i < a->numDescription
TRUEnever evaluated
FALSEnever evaluated
; i++)
0
114 fmprintf(
never executed: fmprintf( stderr , " %s", a->list[i]);
0
115 stderr
never executed: fmprintf( stderr , " %s", a->list[i]);
0
116 , " %s", a->list[i]);
never executed: fmprintf( stderr , " %s", a->list[i]);
0
117 fprintf(-
118 stderr-
119 , "\n");-
120 }
never executed: end of block
0
121 if ((
(pid = fork()) == -1Description
TRUEnever evaluated
FALSEnever evaluated
pid = fork()) == -1
(pid = fork()) == -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
122 fatal("do_local_cmd: fork: %s", strerror(
never executed: fatal("do_local_cmd: fork: %s", strerror( (*__errno_location ()) ));
0
123 (*__errno_location ())
never executed: fatal("do_local_cmd: fork: %s", strerror( (*__errno_location ()) ));
0
124 ));
never executed: fatal("do_local_cmd: fork: %s", strerror( (*__errno_location ()) ));
0
125-
126 if (pid == 0
pid == 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
127 execvp(a->list[0], a->list);-
128 perror(a->list[0]);-
129 exit(1);
never executed: exit(1);
0
130 }-
131-
132 do_cmd_pid = pid;-
133 mysignal(-
13415-
135,killchild);-
136 mysignal(-
1372-
138,killchild);-
139 mysignal(-
1401-
141,killchild);-
142-
143 while (waitpid(pid, &status, 0) == -1
waitpid(pid, &status, 0) == -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
144 if (-
145 (*
(*__errno_location ()) != 4Description
TRUEnever evaluated
FALSEnever evaluated
__errno_location ())
(*__errno_location ()) != 4Description
TRUEnever evaluated
FALSEnever evaluated
0
146 !=
(*__errno_location ()) != 4Description
TRUEnever evaluated
FALSEnever evaluated
0
147 4
(*__errno_location ()) != 4Description
TRUEnever evaluated
FALSEnever evaluated
0
148 )-
149 fatal("do_local_cmd: waitpid: %s", strerror(
never executed: fatal("do_local_cmd: waitpid: %s", strerror( (*__errno_location ()) ));
0
150 (*__errno_location ())
never executed: fatal("do_local_cmd: waitpid: %s", strerror( (*__errno_location ()) ));
0
151 ));
never executed: fatal("do_local_cmd: waitpid: %s", strerror( (*__errno_location ()) ));
0
152-
153 do_cmd_pid = -1;-
154-
155 if (!
! ((( status ) & 0x7f) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
156 (((
! ((( status ) & 0x7f) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
157 status
! ((( status ) & 0x7f) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
158 ) & 0x7f) == 0)
! ((( status ) & 0x7f) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
159 || -
160 (((
((( status ) &...00) >> 8) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
161 status
((( status ) &...00) >> 8) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
162 ) & 0xff00) >> 8)
((( status ) &...00) >> 8) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
163 != 0
((( status ) &...00) >> 8) != 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
164 return
never executed: return (-1);
(-1);
never executed: return (-1);
0
165-
166 return
never executed: return (0);
(0);
never executed: return (0);
0
167}-
168-
169-
170-
171-
172-
173-
174-
175int-
176do_cmd(char *host, char *remuser, int port, char *cmd, int *fdin, int *fdout)-
177{-
178 int pin[2], pout[2], reserved[2];-
179-
180 if (verbose_mode
verbose_modeDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
181 fmprintf(
never executed: fmprintf( stderr , "Executing: program %s host %s, user %s, command %s\n", ssh_program, host, remuser ? remuser : "(unspecified)", cmd);
0
182 stderr
never executed: fmprintf( stderr , "Executing: program %s host %s, user %s, command %s\n", ssh_program, host, remuser ? remuser : "(unspecified)", cmd);
0
183 ,
never executed: fmprintf( stderr , "Executing: program %s host %s, user %s, command %s\n", ssh_program, host, remuser ? remuser : "(unspecified)", cmd);
0
184 "Executing: program %s host %s, user %s, command %s\n",
never executed: fmprintf( stderr , "Executing: program %s host %s, user %s, command %s\n", ssh_program, host, remuser ? remuser : "(unspecified)", cmd);
0
185 ssh_program, host,
never executed: fmprintf( stderr , "Executing: program %s host %s, user %s, command %s\n", ssh_program, host, remuser ? remuser : "(unspecified)", cmd);
0
186 remuser ? remuser : "(unspecified)", cmd);
never executed: fmprintf( stderr , "Executing: program %s host %s, user %s, command %s\n", ssh_program, host, remuser ? remuser : "(unspecified)", cmd);
0
187-
188 if (port == -1
port == -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
189 port = sshport;
never executed: port = sshport;
0
190-
191-
192-
193-
194-
195 if (pipe(reserved) < 0
pipe(reserved) < 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
196 fatal("pipe: %s", strerror(
never executed: fatal("pipe: %s", strerror( (*__errno_location ()) ));
0
197 (*__errno_location ())
never executed: fatal("pipe: %s", strerror( (*__errno_location ()) ));
0
198 ));
never executed: fatal("pipe: %s", strerror( (*__errno_location ()) ));
0
199-
200-
201 if (pipe(pin) < 0
pipe(pin) < 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
202 fatal("pipe: %s", strerror(
never executed: fatal("pipe: %s", strerror( (*__errno_location ()) ));
0
203 (*__errno_location ())
never executed: fatal("pipe: %s", strerror( (*__errno_location ()) ));
0
204 ));
never executed: fatal("pipe: %s", strerror( (*__errno_location ()) ));
0
205 if (pipe(pout) < 0
pipe(pout) < 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
206 fatal("pipe: %s", strerror(
never executed: fatal("pipe: %s", strerror( (*__errno_location ()) ));
0
207 (*__errno_location ())
never executed: fatal("pipe: %s", strerror( (*__errno_location ()) ));
0
208 ));
never executed: fatal("pipe: %s", strerror( (*__errno_location ()) ));
0
209-
210-
211 close(reserved[0]);-
212 close(reserved[1]);-
213-
214 mysignal(-
21520-
216,suspchild);-
217 mysignal(-
21821-
219,suspchild);-
220 mysignal(-
22122-
222,suspchild);-
223-
224-
225 do_cmd_pid = fork();-
226 if (do_cmd_pid == 0
do_cmd_pid == 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
227-
228 close(pin[1]);-
229 close(pout[0]);-
230 dup2(pin[0], 0);-
231 dup2(pout[1], 1);-
232 close(pin[0]);-
233 close(pout[1]);-
234-
235 replacearg(&args, 0, "%s", ssh_program);-
236 if (port != -1
port != -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
237 addargs(&args, "-p");-
238 addargs(&args, "%d", port);-
239 }
never executed: end of block
0
240 if (remuser !=
remuser != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
241 ((void *)0)
remuser != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
242 ) {-
243 addargs(&args, "-l");-
244 addargs(&args, "%s", remuser);-
245 }
never executed: end of block
0
246 addargs(&args, "--");-
247 addargs(&args, "%s", host);-
248 addargs(&args, "%s", cmd);-
249-
250 execvp(ssh_program, args.list);-
251 perror(ssh_program);-
252 exit(1);
never executed: exit(1);
0
253 } else if (do_cmd_pid == -1
do_cmd_pid == -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
254 fatal("fork: %s", strerror(-
255 (*__errno_location ())-
256 ));-
257 }
never executed: end of block
0
258-
259 close(pin[0]);-
260 *fdout = pin[1];-
261 close(pout[1]);-
262 *fdin = pout[0];-
263 mysignal(-
26415-
265,killchild);-
266 mysignal(-
2672-
268,killchild);-
269 mysignal(-
2701-
271,killchild);-
272 return
never executed: return 0;
0;
never executed: return 0;
0
273}-
274-
275-
276-
277-
278-
279-
280int-
281do_cmd2(char *host, char *remuser, int port, char *cmd, int fdin, int fdout)-
282{-
283 pid_t pid;-
284 int status;-
285-
286 if (verbose_mode
verbose_modeDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
287 fmprintf(
never executed: fmprintf( stderr , "Executing: 2nd program %s host %s, user %s, command %s\n", ssh_program, host, remuser ? remuser : "(unspecified)", cmd);
0
288 stderr
never executed: fmprintf( stderr , "Executing: 2nd program %s host %s, user %s, command %s\n", ssh_program, host, remuser ? remuser : "(unspecified)", cmd);
0
289 ,
never executed: fmprintf( stderr , "Executing: 2nd program %s host %s, user %s, command %s\n", ssh_program, host, remuser ? remuser : "(unspecified)", cmd);
0
290 "Executing: 2nd program %s host %s, user %s, command %s\n",
never executed: fmprintf( stderr , "Executing: 2nd program %s host %s, user %s, command %s\n", ssh_program, host, remuser ? remuser : "(unspecified)", cmd);
0
291 ssh_program, host,
never executed: fmprintf( stderr , "Executing: 2nd program %s host %s, user %s, command %s\n", ssh_program, host, remuser ? remuser : "(unspecified)", cmd);
0
292 remuser ? remuser : "(unspecified)", cmd);
never executed: fmprintf( stderr , "Executing: 2nd program %s host %s, user %s, command %s\n", ssh_program, host, remuser ? remuser : "(unspecified)", cmd);
0
293-
294 if (port == -1
port == -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
295 port = sshport;
never executed: port = sshport;
0
296-
297-
298 pid = fork();-
299 if (pid == 0
pid == 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
300 dup2(fdin, 0);-
301 dup2(fdout, 1);-
302-
303 replacearg(&args, 0, "%s", ssh_program);-
304 if (port != -1
port != -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
305 addargs(&args, "-p");-
306 addargs(&args, "%d", port);-
307 }
never executed: end of block
0
308 if (remuser !=
remuser != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
309 ((void *)0)
remuser != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
310 ) {-
311 addargs(&args, "-l");-
312 addargs(&args, "%s", remuser);-
313 }
never executed: end of block
0
314 addargs(&args, "--");-
315 addargs(&args, "%s", host);-
316 addargs(&args, "%s", cmd);-
317-
318 execvp(ssh_program, args.list);-
319 perror(ssh_program);-
320 exit(1);
never executed: exit(1);
0
321 } else if (pid == -1
pid == -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
322 fatal("fork: %s", strerror(-
323 (*__errno_location ())-
324 ));-
325 }
never executed: end of block
0
326 while (waitpid(pid, &status, 0) == -1
waitpid(pid, &status, 0) == -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
327 if (-
328 (*
(*__errno_location ()) != 4Description
TRUEnever evaluated
FALSEnever evaluated
__errno_location ())
(*__errno_location ()) != 4Description
TRUEnever evaluated
FALSEnever evaluated
0
329 !=
(*__errno_location ()) != 4Description
TRUEnever evaluated
FALSEnever evaluated
0
330 4
(*__errno_location ()) != 4Description
TRUEnever evaluated
FALSEnever evaluated
0
331 )-
332 fatal("do_cmd2: waitpid: %s", strerror(
never executed: fatal("do_cmd2: waitpid: %s", strerror( (*__errno_location ()) ));
0
333 (*__errno_location ())
never executed: fatal("do_cmd2: waitpid: %s", strerror( (*__errno_location ()) ));
0
334 ));
never executed: fatal("do_cmd2: waitpid: %s", strerror( (*__errno_location ()) ));
0
335 return
never executed: return 0;
0;
never executed: return 0;
0
336}-
337-
338typedef struct {-
339 size_t cnt;-
340 char *buf;-
341} BUF;-
342-
343BUF *allocbuf(BUF *, int, int);-
344void lostconn(int);-
345int okname(char *);-
346void run_err(const char *,...);-
347void verifydir(char *);-
348-
349struct passwd *pwd;-
350uid_t userid;-
351int errs, remin, remout;-
352int pflag, iamremote, iamrecursive, targetshouldbedirectory;-
353-
354-
355char cmd[64];-
356-
357int response(void);-
358void rsource(char *, struct stat *);-
359void sink(int, char *[]);-
360void source(int, char *[]);-
361void tolocal(int, char *[]);-
362void toremote(int, char *[]);-
363void usage(void);-
364-
365int-
366main(int argc, char **argv)-
367{-
368 int ch, fflag, tflag, status, n;-
369 char **newargv;-
370 const char *errstr;-
371 extern char *BSDoptarg;-
372 extern int BSDoptind;-
373-
374-
375 sanitise_stdfd();-
376-
377 msetlocale();-
378-
379-
380 newargv = xcalloc((((argc + 1) > (1)) ? (argc + 1) : (1)), sizeof(*newargv));-
381 for (n = 0; n < argc
n < argcDescription
TRUEnever evaluated
FALSEnever evaluated
; n++)
0
382 newargv[n] = xstrdup(argv[n]);
never executed: newargv[n] = xstrdup(argv[n]);
0
383 argv = newargv;-
384-
385 __progname = ssh_get_progname(argv[0]);-
386-
387 memset(&args, '\0', sizeof(args));-
388 memset(&remote_remote_args, '\0', sizeof(remote_remote_args));-
389 args.list = remote_remote_args.list = -
390 ((void *)0)-
391 ;-
392 addargs(&args, "%s", ssh_program);-
393 addargs(&args, "-x");-
394 addargs(&args, "-oForwardAgent=no");-
395 addargs(&args, "-oPermitLocalCommand=no");-
396 addargs(&args, "-oClearAllForwardings=yes");-
397 addargs(&args, "-oRemoteCommand=none");-
398 addargs(&args, "-oRequestTTY=no");-
399-
400 fflag = tflag = 0;-
401 while ((
(ch = BSDgetop...:o:F:")) != -1Description
TRUEnever evaluated
FALSEnever evaluated
ch = BSDgetopt(argc, argv, "dfl:prtvBCc:i:P:q12346S:o:F:")) != -1
(ch = BSDgetop...:o:F:")) != -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
402 switch (ch) {-
403-
404 case
never executed: case '1':
'1':
never executed: case '1':
0
405 fatal("SSH protocol v.1 is no longer supported");-
406 break;
never executed: break;
0
407 case
never executed: case '2':
'2':
never executed: case '2':
0
408-
409 break;
never executed: break;
0
410 case
never executed: case '4':
'4':
never executed: case '4':
0
411 case
never executed: case '6':
'6':
never executed: case '6':
0
412 case
never executed: case 'C':
'C':
never executed: case 'C':
0
413 addargs(&args, "-%c", ch);-
414 addargs(&remote_remote_args, "-%c", ch);-
415 break;
never executed: break;
0
416 case
never executed: case '3':
'3':
never executed: case '3':
0
417 throughlocal = 1;-
418 break;
never executed: break;
0
419 case
never executed: case 'o':
'o':
never executed: case 'o':
0
420 case
never executed: case 'c':
'c':
never executed: case 'c':
0
421 case
never executed: case 'i':
'i':
never executed: case 'i':
0
422 case
never executed: case 'F':
'F':
never executed: case 'F':
0
423 addargs(&remote_remote_args, "-%c", ch);-
424 addargs(&remote_remote_args, "%s", BSDoptarg);-
425 addargs(&args, "-%c", ch);-
426 addargs(&args, "%s", BSDoptarg);-
427 break;
never executed: break;
0
428 case
never executed: case 'P':
'P':
never executed: case 'P':
0
429 sshport = a2port(BSDoptarg);-
430 if (sshport <= 0
sshport <= 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
431 fatal("bad port \"%s\"\n", BSDoptarg);
never executed: fatal("bad port \"%s\"\n", BSDoptarg);
0
432 break;
never executed: break;
0
433 case
never executed: case 'B':
'B':
never executed: case 'B':
0
434 addargs(&remote_remote_args, "-oBatchmode=yes");-
435 addargs(&args, "-oBatchmode=yes");-
436 break;
never executed: break;
0
437 case
never executed: case 'l':
'l':
never executed: case 'l':
0
438 limit_kbps = strtonum(BSDoptarg, 1, 100 * 1024 * 1024,-
439 &errstr);-
440 if (errstr !=
errstr != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
441 ((void *)0)
errstr != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
442 )-
443 usage();
never executed: usage();
0
444 limit_kbps *= 1024;-
445 bandwidth_limit_init(&bwlimit, limit_kbps, 16384);-
446 break;
never executed: break;
0
447 case
never executed: case 'p':
'p':
never executed: case 'p':
0
448 pflag = 1;-
449 break;
never executed: break;
0
450 case
never executed: case 'r':
'r':
never executed: case 'r':
0
451 iamrecursive = 1;-
452 break;
never executed: break;
0
453 case
never executed: case 'S':
'S':
never executed: case 'S':
0
454 ssh_program = xstrdup(BSDoptarg);-
455 break;
never executed: break;
0
456 case
never executed: case 'v':
'v':
never executed: case 'v':
0
457 addargs(&args, "-v");-
458 addargs(&remote_remote_args, "-v");-
459 verbose_mode = 1;-
460 break;
never executed: break;
0
461 case
never executed: case 'q':
'q':
never executed: case 'q':
0
462 addargs(&args, "-q");-
463 addargs(&remote_remote_args, "-q");-
464 showprogress = 0;-
465 break;
never executed: break;
0
466-
467-
468 case
never executed: case 'd':
'd':
never executed: case 'd':
0
469 targetshouldbedirectory = 1;-
470 break;
never executed: break;
0
471 case
never executed: case 'f':
'f':
never executed: case 'f':
0
472 iamremote = 1;-
473 fflag = 1;-
474 break;
never executed: break;
0
475 case
never executed: case 't':
't':
never executed: case 't':
0
476 iamremote = 1;-
477 tflag = 1;-
478-
479-
480-
481 break;
never executed: break;
0
482 default
never executed: default:
:
never executed: default:
0
483 usage();-
484 }
never executed: end of block
0
485 argc -= BSDoptind;-
486 argv += BSDoptind;-
487-
488 if ((
(pwd = getpwui...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
pwd = getpwuid(userid = getuid())) ==
(pwd = getpwui...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
489 ((void *)0)
(pwd = getpwui...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
490 )-
491 fatal("unknown user %u", (u_int) userid);
never executed: fatal("unknown user %u", (u_int) userid);
0
492-
493 if (!isatty(
!isatty( 1 )Description
TRUEnever evaluated
FALSEnever evaluated
0
494 1
!isatty( 1 )Description
TRUEnever evaluated
FALSEnever evaluated
0
495 )
!isatty( 1 )Description
TRUEnever evaluated
FALSEnever evaluated
)
0
496 showprogress = 0;
never executed: showprogress = 0;
0
497-
498 if (pflag
pflagDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
499-
500 }
never executed: end of block
else {
0
501 if (pledge("stdio rpath wpath cpath fattr tty proc exec",
pledge("stdio ...d *)0) ) == -1Description
TRUEnever evaluated
FALSEnever evaluated
0
502
pledge("stdio ...d *)0) ) == -1Description
TRUEnever evaluated
FALSEnever evaluated
0
503 ((void *)0)
pledge("stdio ...d *)0) ) == -1Description
TRUEnever evaluated
FALSEnever evaluated
0
504 ) == -1
pledge("stdio ...d *)0) ) == -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
505 perror("pledge");-
506 exit(1);
never executed: exit(1);
0
507 }-
508 }
never executed: end of block
0
509-
510 remin = -
511 0-
512 ;-
513 remout = -
514 1-
515 ;-
516-
517 if (fflag
fflagDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
518-
519 (void) response();-
520 source(argc, argv);-
521 exit(errs != 0);
never executed: exit(errs != 0);
0
522 }-
523 if (tflag
tflagDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
524-
525 sink(argc, argv);-
526 exit(errs != 0);
never executed: exit(errs != 0);
0
527 }-
528 if (argc < 2
argc < 2Description
TRUEnever evaluated
FALSEnever evaluated
)
0
529 usage();
never executed: usage();
0
530 if (argc > 2
argc > 2Description
TRUEnever evaluated
FALSEnever evaluated
)
0
531 targetshouldbedirectory = 1;
never executed: targetshouldbedirectory = 1;
0
532-
533 remin = remout = -1;-
534 do_cmd_pid = -1;-
535-
536 (void) snprintf(cmd, sizeof cmd, "scp%s%s%s%s",-
537 verbose_mode ? " -v" : "",-
538 iamrecursive ? " -r" : "", pflag ? " -p" : "",-
539 targetshouldbedirectory ? " -d" : "");-
540-
541 (void) mysignal(-
542 13-
543 ,lostconn);-
544-
545 if (colon(argv[argc - 1])
colon(argv[argc - 1])Description
TRUEnever evaluated
FALSEnever evaluated
)
0
546 toremote(argc, argv);
never executed: toremote(argc, argv);
0
547 else {-
548 if (targetshouldbedirectory
targetshouldbedirectoryDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
549 verifydir(argv[argc - 1]);
never executed: verifydir(argv[argc - 1]);
0
550 tolocal(argc, argv);-
551 }
never executed: end of block
0
552-
553-
554-
555-
556 if (do_cmd_pid != -1
do_cmd_pid != -1Description
TRUEnever evaluated
FALSEnever evaluated
&& errs == 0
errs == 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
557 if (remin != -1
remin != -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
558 (
never executed: (void) close(remin);
void) close(remin);
never executed: (void) close(remin);
0
559 if (remout != -1
remout != -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
560 (
never executed: (void) close(remout);
void) close(remout);
never executed: (void) close(remout);
0
561 if (waitpid(do_cmd_pid, &status, 0) == -1
waitpid(do_cmd...atus, 0) == -1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
562 errs = 1;
never executed: errs = 1;
0
563 else {-
564 if (!
! ((( status ) & 0x7f) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
565 (((
! ((( status ) & 0x7f) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
566 status
! ((( status ) & 0x7f) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
567 ) & 0x7f) == 0)
! ((( status ) & 0x7f) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
568 || -
569 (((
((( status ) &...00) >> 8) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
570 status
((( status ) &...00) >> 8) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
571 ) & 0xff00) >> 8)
((( status ) &...00) >> 8) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
572 != 0
((( status ) &...00) >> 8) != 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
573 errs = 1;
never executed: errs = 1;
0
574 }
never executed: end of block
0
575 }-
576 exit(errs != 0);
never executed: exit(errs != 0);
0
577}-
578-
579-
580static int-
581scpio(void *_cnt, size_t s)-
582{-
583 off_t *cnt = (off_t *)_cnt;-
584-
585 *cnt += s;-
586 if (limit_kbps > 0
limit_kbps > 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
587 bandwidth_limit(&bwlimit, s);
never executed: bandwidth_limit(&bwlimit, s);
0
588 return
never executed: return 0;
0;
never executed: return 0;
0
589}-
590-
591static int-
592do_times(int fd, int verb, const struct stat *sb)-
593{-
594-
595 char buf[(20 + 7 + 2) * 2 + 2];-
596-
597 (void)snprintf(buf, sizeof(buf), "T%llu 0 %llu 0\n",-
598 (unsigned long long) (sb->-
599 st_mtim.tv_sec -
600 < 0 ? 0 : sb->-
601 st_mtim.tv_sec-
602 ),-
603 (unsigned long long) (sb->-
604 st_atim.tv_sec -
605 < 0 ? 0 : sb->-
606 st_atim.tv_sec-
607 ));-
608 if (verb
verbDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
609 fprintf(-
610 stderr-
611 , "File mtime %lld atime %lld\n",-
612 (long long)sb->-
613 st_mtim.tv_sec-
614 , (long long)sb->-
615 st_atim.tv_sec-
616 );-
617 fprintf(-
618 stderr-
619 , "Sending file timestamps: %s", buf);-
620 }
never executed: end of block
0
621 (void) atomicio((ssize_t (*)(int, void *, size_t))write, fd, buf, strlen(buf));-
622 return
never executed: return (response());
(response());
never executed: return (response());
0
623}-
624-
625static int-
626parse_scp_uri(const char *uri, char **userp, char **hostp, int *portp,-
627 char **pathp)-
628{-
629 int r;-
630-
631 r = parse_uri("scp", uri, userp, hostp, portp, pathp);-
632 if (r == 0
r == 0Description
TRUEnever evaluated
FALSEnever evaluated
&& *
*pathp == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
pathp ==
*pathp == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
633 ((void *)0)
*pathp == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
634 )-
635 *
never executed: *pathp = xstrdup(".");
pathp = xstrdup(".");
never executed: *pathp = xstrdup(".");
0
636 return
never executed: return r;
r;
never executed: return r;
0
637}-
638-
639void-
640toremote(int argc, char **argv)-
641{-
642 char *suser = -
643 ((void *)0)-
644 , *host = -
645 ((void *)0)-
646 , *src = -
647 ((void *)0)-
648 ;-
649 char *bp, *tuser, *thost, *targ;-
650 int sport = -1, tport = -1;-
651 arglist alist;-
652 int i, r;-
653 u_int j;-
654-
655 memset(&alist, '\0', sizeof(alist));-
656 alist.list = -
657 ((void *)0)-
658 ;-
659-
660-
661 r = parse_scp_uri(argv[argc - 1], &tuser, &thost, &tport, &targ);-
662 if (r == -1
r == -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
663 fmprintf(-
664 stderr-
665 , "%s: invalid uri\n", argv[argc - 1]);-
666 ++errs;-
667 goto
never executed: goto out;
out;
never executed: goto out;
0
668 }-
669 if (r != 0
r != 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
670 if (parse_user_host_path(argv[argc - 1], &tuser, &thost,
parse_user_hos..., &targ) == -1Description
TRUEnever evaluated
FALSEnever evaluated
0
671 &targ) == -1
parse_user_hos..., &targ) == -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
672 fmprintf(-
673 stderr-
674 , "%s: invalid target\n", argv[argc - 1]);-
675 ++errs;-
676 goto
never executed: goto out;
out;
never executed: goto out;
0
677 }-
678 }
never executed: end of block
0
679 if (tuser !=
tuser != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
680 ((void *)0)
tuser != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
681 && !okname(tuser)
!okname(tuser)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
682 ++errs;-
683 goto
never executed: goto out;
out;
never executed: goto out;
0
684 }-
685-
686-
687 for (i = 0; i < argc - 1
i < argc - 1Description
TRUEnever evaluated
FALSEnever evaluated
; i++) {
0
688 free(suser);-
689 free(host);-
690 free(src);-
691 r = parse_scp_uri(argv[i], &suser, &host, &sport, &src);-
692 if (r == -1
r == -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
693 fmprintf(-
694 stderr-
695 , "%s: invalid uri\n", argv[i]);-
696 ++errs;-
697 continue;
never executed: continue;
0
698 }-
699 if (r != 0
r != 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
700 parse_user_host_path(argv[i], &suser, &host, &src);-
701 }
never executed: end of block
0
702 if (suser !=
suser != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
703 ((void *)0)
suser != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
704 && !okname(suser)
!okname(suser)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
705 ++errs;-
706 continue;
never executed: continue;
0
707 }-
708 if (host
hostDescription
TRUEnever evaluated
FALSEnever evaluated
&& throughlocal
throughlocalDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
709 xasprintf(&bp, "%s -f %s%s", cmd,-
710 *src == '-' ? "-- " : "", src);-
711 if (do_cmd(host, suser, sport, bp, &remin, &remout) < 0
do_cmd(host, s..., &remout) < 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
712 exit(1);
never executed: exit(1);
0
713 free(bp);-
714 xasprintf(&bp, "%s -t %s%s", cmd,-
715 *targ == '-' ? "-- " : "", targ);-
716 if (do_cmd2(thost, tuser, tport, bp, remin, remout) < 0
do_cmd2(thost,...n, remout) < 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
717 exit(1);
never executed: exit(1);
0
718 free(bp);-
719 (void) close(remin);-
720 (void) close(remout);-
721 remin = remout = -1;-
722 }
never executed: end of block
else if (host
hostDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
723 if (tport != -1
tport != -1Description
TRUEnever evaluated
FALSEnever evaluated
&& tport != 22
tport != 22Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
724-
725 fatal("target port not supported with two "-
726 "remote hosts without the -3 option");-
727 }
never executed: end of block
0
728-
729 freeargs(&alist);-
730 addargs(&alist, "%s", ssh_program);-
731 addargs(&alist, "-x");-
732 addargs(&alist, "-oClearAllForwardings=yes");-
733 addargs(&alist, "-n");-
734 for (j = 0; j < remote_remote_args.num
j < remote_remote_args.numDescription
TRUEnever evaluated
FALSEnever evaluated
; j++) {
0
735 addargs(&alist, "%s",-
736 remote_remote_args.list[j]);-
737 }
never executed: end of block
0
738-
739 if (sport != -1
sport != -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
740 addargs(&alist, "-p");-
741 addargs(&alist, "%d", sport);-
742 }
never executed: end of block
0
743 if (suser
suserDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
744 addargs(&alist, "-l");-
745 addargs(&alist, "%s", suser);-
746 }
never executed: end of block
0
747 addargs(&alist, "--");-
748 addargs(&alist, "%s", host);-
749 addargs(&alist, "%s", cmd);-
750 addargs(&alist, "%s", src);-
751 addargs(&alist, "%s%s%s:%s",-
752 tuser ? tuser : "", tuser ? "@" : "",-
753 thost, targ);-
754 if (do_local_cmd(&alist) != 0
do_local_cmd(&alist) != 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
755 errs = 1;
never executed: errs = 1;
0
756 }
never executed: end of block
else {
0
757 if (remin == -1
remin == -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
758 xasprintf(&bp, "%s -t %s%s", cmd,-
759 *targ == '-' ? "-- " : "", targ);-
760 if (do_cmd(thost, tuser, tport, bp, &remin,
do_cmd(thost, ..., &remout) < 0Description
TRUEnever evaluated
FALSEnever evaluated
0
761 &remout) < 0
do_cmd(thost, ..., &remout) < 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
762 exit(1);
never executed: exit(1);
0
763 if (response() < 0
response() < 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
764 exit(1);
never executed: exit(1);
0
765 free(bp);-
766 }
never executed: end of block
0
767 source(1, argv + i);-
768 }
never executed: end of block
0
769 }-
770out:
code before this statement never executed: out:
0
771 free(tuser);-
772 free(thost);-
773 free(targ);-
774 free(suser);-
775 free(host);-
776 free(src);-
777}
never executed: end of block
0
778-
779void-
780tolocal(int argc, char **argv)-
781{-
782 char *bp, *host = -
783 ((void *)0)-
784 , *src = -
785 ((void *)0)-
786 , *suser = -
787 ((void *)0)-
788 ;-
789 arglist alist;-
790 int i, r, sport = -1;-
791-
792 memset(&alist, '\0', sizeof(alist));-
793 alist.list = -
794 ((void *)0)-
795 ;-
796-
797 for (i = 0; i < argc - 1
i < argc - 1Description
TRUEnever evaluated
FALSEnever evaluated
; i++) {
0
798 free(suser);-
799 free(host);-
800 free(src);-
801 r = parse_scp_uri(argv[i], &suser, &host, &sport, &src);-
802 if (r == -1
r == -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
803 fmprintf(-
804 stderr-
805 , "%s: invalid uri\n", argv[i]);-
806 ++errs;-
807 continue;
never executed: continue;
0
808 }-
809 if (r != 0
r != 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
810 parse_user_host_path(argv[i], &suser, &host, &src);
never executed: parse_user_host_path(argv[i], &suser, &host, &src);
0
811 if (suser !=
suser != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
812 ((void *)0)
suser != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
813 && !okname(suser)
!okname(suser)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
814 ++errs;-
815 continue;
never executed: continue;
0
816 }-
817 if (!host
!hostDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
818 freeargs(&alist);-
819 addargs(&alist, "%s", "cp");-
820 if (iamrecursive
iamrecursiveDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
821 addargs(&alist, "-r");
never executed: addargs(&alist, "-r");
0
822 if (pflag
pflagDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
823 addargs(&alist, "-p");
never executed: addargs(&alist, "-p");
0
824 addargs(&alist, "--");-
825 addargs(&alist, "%s", argv[i]);-
826 addargs(&alist, "%s", argv[argc-1]);-
827 if (do_local_cmd(&alist)
do_local_cmd(&alist)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
828 ++
never executed: ++errs;
errs;
never executed: ++errs;
0
829 continue;
never executed: continue;
0
830 }-
831-
832 xasprintf(&bp, "%s -f %s%s",-
833 cmd, *src == '-' ? "-- " : "", src);-
834 if (do_cmd(host, suser, sport, bp, &remin, &remout) < 0
do_cmd(host, s..., &remout) < 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
835 free(bp);-
836 ++errs;-
837 continue;
never executed: continue;
0
838 }-
839 free(bp);-
840 sink(1, argv + argc - 1);-
841 (void) close(remin);-
842 remin = remout = -1;-
843 }
never executed: end of block
0
844 free(suser);-
845 free(host);-
846 free(src);-
847}
never executed: end of block
0
848-
849void-
850source(int argc, char **argv)-
851{-
852 struct stat stb;-
853 static BUF buffer;-
854 BUF *bp;-
855 off_t i, statbytes;-
856 size_t amt, nr;-
857 int fd = -1, haderr, indx;-
858 char *last, *name, buf[2048], encname[-
859 4096-
860 ];-
861 int len;-
862-
863 for (indx = 0; indx < argc
indx < argcDescription
TRUEnever evaluated
FALSEnever evaluated
; ++indx) {
0
864 name = argv[indx];-
865 statbytes = 0;-
866 len = strlen(name);-
867 while (len > 1
len > 1Description
TRUEnever evaluated
FALSEnever evaluated
&& name[len-1] == '/'
name[len-1] == '/'Description
TRUEnever evaluated
FALSEnever evaluated
)
0
868 name[--len] = '\0';
never executed: name[--len] = '\0';
0
869 if ((
(fd = open(nam...4000 , 0)) < 0Description
TRUEnever evaluated
FALSEnever evaluated
fd = open(name,
(fd = open(nam...4000 , 0)) < 0Description
TRUEnever evaluated
FALSEnever evaluated
0
870 00
(fd = open(nam...4000 , 0)) < 0Description
TRUEnever evaluated
FALSEnever evaluated
0
871 |
(fd = open(nam...4000 , 0)) < 0Description
TRUEnever evaluated
FALSEnever evaluated
0
872 04000
(fd = open(nam...4000 , 0)) < 0Description
TRUEnever evaluated
FALSEnever evaluated
0
873 , 0)) < 0
(fd = open(nam...4000 , 0)) < 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
874 goto
never executed: goto syserr;
syserr;
never executed: goto syserr;
0
875 if (-
876 (
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
__extension__ (__builtin_constant_p (
__builtin_constant_p ( '\n' )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
877 '\n'
__builtin_constant_p ( '\n' )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
878 )
__builtin_constant_p ( '\n' )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
879 name
!__builtin_constant_p ( name )Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
880 )
!__builtin_constant_p ( name )Description
TRUEnever evaluated
FALSEnever evaluated
&& (
( '\n' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
881 '\n'
( '\n' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
882 ) == '\0'
( '\n' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
? (char *) __rawmemchr (
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
883 name
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
884 ,
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
885 '\n'
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
886 ) : __builtin_strchr (
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
887 name
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
888 ,
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
889 '\n'
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
890 )))
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
891 !=
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
892 ((void *)0)
(__extension__...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
893 ) {-
894 strnvis(encname, name, sizeof(encname), 0x10);-
895 name = encname;-
896 }
never executed: end of block
0
897 if (fstat(fd, &stb) < 0
fstat(fd, &stb) < 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
898syserr: run_err("%s: %s", name, strerror(-
899 (*__errno_location ())-
900 ));-
901 goto
never executed: goto next;
next;
never executed: goto next;
0
902 }-
903 if (stb.st_size < 0
stb.st_size < 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
904 run_err("%s: %s", name, "Negative file size");-
905 goto
never executed: goto next;
next;
never executed: goto next;
0
906 }-
907 unset_nonblock(fd);-
908 switch (stb.st_mode & -
909 0170000-
910 ) {-
911 case
never executed: case 0100000 :
never executed: case 0100000 :
0
912 0100000
never executed: case 0100000 :
0
913 :
never executed: case 0100000 :
0
914 break;
never executed: break;
0
915 case
never executed: case 0040000 :
never executed: case 0040000 :
0
916 0040000
never executed: case 0040000 :
0
917 :
never executed: case 0040000 :
0
918 if (iamrecursive
iamrecursiveDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
919 rsource(name, &stb);-
920 goto
never executed: goto next;
next;
never executed: goto next;
0
921 }-
922-
923 default
never executed: default:
:
never executed: default:
code before this statement never executed: default:
0
924 run_err("%s: not a regular file", name);-
925 goto
never executed: goto next;
next;
never executed: goto next;
0
926 }-
927 if ((
(last = strrch...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
last = strrchr(name, '/')) ==
(last = strrch...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
928 ((void *)0)
(last = strrch...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
929 )-
930 last = name;
never executed: last = name;
0
931 else-
932 ++
never executed: ++last;
last;
never executed: ++last;
0
933 curfile = last;-
934 if (pflag
pflagDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
935 if (do_times(remout, verbose_mode, &stb) < 0
do_times(remou...ode, &stb) < 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
936 goto
never executed: goto next;
next;
never executed: goto next;
0
937 }
never executed: end of block
0
938-
939 snprintf(buf, sizeof buf, "C%04o %lld %s\n",-
940 (u_int) (stb.st_mode & (-
941 04000-
942 |-
943 02000-
944 |-
945 (0400|0200|0100)-
946 |-
947 ((0400|0200|0100) >> 3)-
948 |-
949 (((0400|0200|0100) >> 3) >> 3)-
950 )),-
951 (long long)stb.st_size, last);-
952 if (verbose_mode
verbose_modeDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
953 fmprintf(
never executed: fmprintf( stderr , "Sending file modes: %s", buf);
0
954 stderr
never executed: fmprintf( stderr , "Sending file modes: %s", buf);
0
955 , "Sending file modes: %s", buf);
never executed: fmprintf( stderr , "Sending file modes: %s", buf);
0
956 (void) atomicio((ssize_t (*)(int, void *, size_t))write, remout, buf, strlen(buf));-
957 if (response() < 0
response() < 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
958 goto
never executed: goto next;
next;
never executed: goto next;
0
959 if ((
(bp = allocbuf...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
bp = allocbuf(&buffer, fd, 16384)) ==
(bp = allocbuf...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
960 ((void *)0)
(bp = allocbuf...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
961 ) {-
962next: if (fd != -1
fd != -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
963 (void) close(fd);-
964 fd = -1;-
965 }
never executed: end of block
0
966 continue;
never executed: continue;
0
967 }-
968 if (showprogress
showprogressDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
969 start_progress_meter(curfile, stb.st_size, &statbytes);
never executed: start_progress_meter(curfile, stb.st_size, &statbytes);
0
970 set_nonblock(remout);-
971 for (haderr = i = 0; i < stb.st_size
i < stb.st_sizeDescription
TRUEnever evaluated
FALSEnever evaluated
; i += bp->cnt) {
0
972 amt = bp->cnt;-
973 if (i + (off_t)amt > stb.st_size
i + (off_t)amt > stb.st_sizeDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
974 amt = stb.st_size - i;
never executed: amt = stb.st_size - i;
0
975 if (!haderr
!haderrDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
976 if ((
(nr = atomicio..., amt)) != amtDescription
TRUEnever evaluated
FALSEnever evaluated
nr = atomicio(read, fd,
(nr = atomicio..., amt)) != amtDescription
TRUEnever evaluated
FALSEnever evaluated
0
977 bp->buf, amt)) != amt
(nr = atomicio..., amt)) != amtDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
978 haderr = -
979 (*__errno_location ())-
980 ;-
981 memset(bp->buf + nr, 0, amt - nr);-
982 }
never executed: end of block
0
983 }
never executed: end of block
0
984-
985 if (haderr
haderrDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
986 (void)atomicio((ssize_t (*)(int, void *, size_t))write, remout, bp->buf, amt);-
987 memset(bp->buf, 0, amt);-
988 continue;
never executed: continue;
0
989 }-
990 if (atomicio6((ssize_t (*)(int, void *, size_t))write, remout, bp->buf, amt, scpio,
atomicio6((ssi...tbytes) != amtDescription
TRUEnever evaluated
FALSEnever evaluated
0
991 &statbytes) != amt
atomicio6((ssi...tbytes) != amtDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
992 haderr =
never executed: haderr = (*__errno_location ()) ;
0
993 (*__errno_location ())
never executed: haderr = (*__errno_location ()) ;
0
994 ;
never executed: haderr = (*__errno_location ()) ;
0
995 }
never executed: end of block
0
996 unset_nonblock(remout);-
997-
998 if (fd != -1
fd != -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
999 if (close(fd) < 0
close(fd) < 0Description
TRUEnever evaluated
FALSEnever evaluated
&& !haderr
!haderrDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1000 haderr =
never executed: haderr = (*__errno_location ()) ;
0
1001 (*__errno_location ())
never executed: haderr = (*__errno_location ()) ;
0
1002 ;
never executed: haderr = (*__errno_location ()) ;
0
1003 fd = -1;-
1004 }
never executed: end of block
0
1005 if (!haderr
!haderrDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1006 (
never executed: (void) atomicio((ssize_t (*)(int, void *, size_t))write, remout, "", 1);
void) atomicio((ssize_t (*)(int, void *, size_t))write, remout, "", 1);
never executed: (void) atomicio((ssize_t (*)(int, void *, size_t))write, remout, "", 1);
0
1007 else-
1008 run_err("%s: %s", name, strerror(haderr));
never executed: run_err("%s: %s", name, strerror(haderr));
0
1009 (void) response();-
1010 if (showprogress
showprogressDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1011 stop_progress_meter();
never executed: stop_progress_meter();
0
1012 }
never executed: end of block
0
1013}
never executed: end of block
0
1014-
1015void-
1016rsource(char *name, struct stat *statp)-
1017{-
1018 DIR *dirp;-
1019 struct dirent *dp;-
1020 char *last, *vect[1], path[-
1021 4096-
1022 ];-
1023-
1024 if (!(dirp = opendir(name))
!(dirp = opendir(name))Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1025 run_err("%s: %s", name, strerror(-
1026 (*__errno_location ())-
1027 ));-
1028 return;
never executed: return;
0
1029 }-
1030 last = strrchr(name, '/');-
1031 if (last ==
last == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1032 ((void *)0)
last == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1033 )-
1034 last = name;
never executed: last = name;
0
1035 else-
1036 last++;
never executed: last++;
0
1037 if (pflag
pflagDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1038 if (do_times(remout, verbose_mode, statp) < 0
do_times(remou...de, statp) < 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1039 closedir(dirp);-
1040 return;
never executed: return;
0
1041 }-
1042 }
never executed: end of block
0
1043 (void) snprintf(path, sizeof path, "D%04o %d %.1024s\n",-
1044 (u_int) (statp->st_mode & (-
1045 04000-
1046 |-
1047 02000-
1048 |-
1049 (0400|0200|0100)-
1050 |-
1051 ((0400|0200|0100) >> 3)-
1052 |-
1053 (((0400|0200|0100) >> 3) >> 3)-
1054 )), 0, last);-
1055 if (verbose_mode
verbose_modeDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1056 fmprintf(
never executed: fmprintf( stderr , "Entering directory: %s", path);
0
1057 stderr
never executed: fmprintf( stderr , "Entering directory: %s", path);
0
1058 , "Entering directory: %s", path);
never executed: fmprintf( stderr , "Entering directory: %s", path);
0
1059 (void) atomicio((ssize_t (*)(int, void *, size_t))write, remout, path, strlen(path));-
1060 if (response() < 0
response() < 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1061 closedir(dirp);-
1062 return;
never executed: return;
0
1063 }-
1064 while ((
(dp = readdir(...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
dp = readdir(dirp)) !=
(dp = readdir(...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1065 ((void *)0)
(dp = readdir(...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1066 ) {-
1067 if (dp->d_ino == 0
dp->d_ino == 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1068 continue;
never executed: continue;
0
1069 if (!
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1070 __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1071 dp->d_name
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1072 ) && __builtin_constant_p (
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1073 "."
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1074 ) && (__s1_len = __builtin_strlen (
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1075 dp->d_name
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1076 ), __s2_len = __builtin_strlen (
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1077 "."
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1078 ), (!((size_t)(const void *)((
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1079 dp->d_name
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1080 ) + 1) - (size_t)(const void *)(
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1081 dp->d_name
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1082 ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1083 "."
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1084 ) + 1) - (size_t)(const void *)(
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1085 "."
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1086 ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1087 dp->d_name
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1088 ,
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1089 "."
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1090 ) : (__builtin_constant_p (
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1091 dp->d_name
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1092 ) && ((size_t)(const void *)((
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1093 dp->d_name
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1094 ) + 1) - (size_t)(const void *)(
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1095 dp->d_name
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1096 ) == 1) && (__s1_len = __builtin_strlen (
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1097 dp->d_name
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1098 ), __s1_len < 4) ? (__builtin_constant_p (
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1099 "."
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1100 ) && ((size_t)(const void *)((
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1101 "."
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1102 ) + 1) - (size_t)(const void *)(
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1103 "."
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1104 ) == 1) ? __builtin_strcmp (
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1105 dp->d_name
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1106 ,
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1107 "."
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1108 ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1109 "."
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1110 ); int __result = (((const unsigned char *) (const char *) (
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1111 dp->d_name
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1112 ))[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_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1113 dp->d_name
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1114 ))[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_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1115 dp->d_name
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1116 ))[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 *) ( dp->d_name ))[3] - __s2[3]);
0
1117 dp->d_name
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( dp->d_name ))[3] - __s2[3]);
0
1118 ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1119 "."
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1120 ) && ((size_t)(const void *)((
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1121 "."
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1122 ) + 1) - (size_t)(const void *)(
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1123 "."
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1124 ) == 1) && (__s2_len = __builtin_strlen (
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1125 "."
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1126 ), __s2_len < 4) ? (__builtin_constant_p (
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1127 dp->d_name
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1128 ) && ((size_t)(const void *)((
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1129 dp->d_name
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1130 ) + 1) - (size_t)(const void *)(
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1131 dp->d_name
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1132 ) == 1) ? __builtin_strcmp (
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1133 dp->d_name
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1134 ,
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1135 "."
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1136 ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1137 dp->d_name
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1138 ); int __result = (((const unsigned char *) (const char *) (
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1139 "."
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1140 ))[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_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1141 "."
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1142 ))[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_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1143 "."
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1144 ))[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
1145 "."
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( "." ))[3] - __s2[3]);
0
1146 ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1147 dp->d_name
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1148 ,
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1149 "."
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1150 )))); })
! __extension_..., "." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1151 || !
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1152 __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1153 dp->d_name
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1154 ) && __builtin_constant_p (
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1155 ".."
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1156 ) && (__s1_len = __builtin_strlen (
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1157 dp->d_name
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1158 ), __s2_len = __builtin_strlen (
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1159 ".."
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1160 ), (!((size_t)(const void *)((
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1161 dp->d_name
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1162 ) + 1) - (size_t)(const void *)(
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1163 dp->d_name
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1164 ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1165 ".."
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1166 ) + 1) - (size_t)(const void *)(
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1167 ".."
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1168 ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1169 dp->d_name
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1170 ,
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1171 ".."
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1172 ) : (__builtin_constant_p (
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1173 dp->d_name
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1174 ) && ((size_t)(const void *)((
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1175 dp->d_name
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1176 ) + 1) - (size_t)(const void *)(
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1177 dp->d_name
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1178 ) == 1) && (__s1_len = __builtin_strlen (
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1179 dp->d_name
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1180 ), __s1_len < 4) ? (__builtin_constant_p (
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1181 ".."
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1182 ) && ((size_t)(const void *)((
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1183 ".."
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1184 ) + 1) - (size_t)(const void *)(
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1185 ".."
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1186 ) == 1) ? __builtin_strcmp (
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1187 dp->d_name
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1188 ,
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1189 ".."
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1190 ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1191 ".."
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1192 ); int __result = (((const unsigned char *) (const char *) (
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1193 dp->d_name
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1194 ))[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_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1195 dp->d_name
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1196 ))[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_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1197 dp->d_name
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1198 ))[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 *) ( dp->d_name ))[3] - __s2[3]);
0
1199 dp->d_name
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( dp->d_name ))[3] - __s2[3]);
0
1200 ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1201 ".."
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1202 ) && ((size_t)(const void *)((
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1203 ".."
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1204 ) + 1) - (size_t)(const void *)(
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1205 ".."
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1206 ) == 1) && (__s2_len = __builtin_strlen (
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1207 ".."
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1208 ), __s2_len < 4) ? (__builtin_constant_p (
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1209 dp->d_name
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1210 ) && ((size_t)(const void *)((
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1211 dp->d_name
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1212 ) + 1) - (size_t)(const void *)(
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1213 dp->d_name
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1214 ) == 1) ? __builtin_strcmp (
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1215 dp->d_name
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1216 ,
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1217 ".."
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1218 ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1219 dp->d_name
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1220 ); int __result = (((const unsigned char *) (const char *) (
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1221 ".."
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1222 ))[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_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1223 ".."
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1224 ))[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_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1225 ".."
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1226 ))[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
1227 ".."
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( ".." ))[3] - __s2[3]);
0
1228 ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1229 dp->d_name
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1230 ,
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1231 ".."
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1232 )))); })
! __extension_... ".." )))); })Description
TRUEnever evaluated
FALSEnever evaluated
0
1233 )-
1234 continue;
never executed: continue;
0
1235 if (strlen(name) + 1 + strlen(dp->d_name) >= sizeof(path) - 1
strlen(name) +...zeof(path) - 1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1236 run_err("%s/%s: name too long", name, dp->d_name);-
1237 continue;
never executed: continue;
0
1238 }-
1239 (void) snprintf(path, sizeof path, "%s/%s", name, dp->d_name);-
1240 vect[0] = path;-
1241 source(1, vect);-
1242 }
never executed: end of block
0
1243 (void) closedir(dirp);-
1244 (void) atomicio((ssize_t (*)(int, void *, size_t))write, remout, "E\n", 2);-
1245 (void) response();-
1246}
never executed: end of block
0
1247-
1248-
1249-
1250-
1251-
1252-
1253void-
1254sink(int argc, char **argv)-
1255{-
1256 static BUF buffer;-
1257 struct stat stb;-
1258 enum {-
1259 YES, NO, DISPLAYED-
1260 } wrerr;-
1261 BUF *bp;-
1262 off_t i;-
1263 size_t j, count;-
1264 int amt, exists, first, ofd;-
1265 mode_t mode, omode, mask;-
1266 off_t size, statbytes;-
1267 unsigned long long ull;-
1268 int setimes, targisdir, wrerrno = 0;-
1269 char ch, *cp, *np, *targ, *why, *vect[1], buf[2048], visbuf[2048];-
1270 struct timeval tv[2];-
1271-
1272-
1273-
1274-
1275-
1276 if (((sizeof(time_t) == 4
sizeof(time_t) == 4Description
TRUEnever evaluated
FALSEnever evaluated
&& (
(0) > (2147483647)Description
TRUEnever evaluated
FALSEnever evaluated
0) >
(0) > (2147483647)Description
TRUEnever evaluated
FALSEnever evaluated
0
1277 (2147483647)
(0) > (2147483647)Description
TRUEnever evaluated
FALSEnever evaluated
0
1278 ) || (sizeof(time_t) == 8
sizeof(time_t) == 8Description
TRUEnever evaluated
FALSEnever evaluated
&& (
(0) > (9223372036854775807L)Description
TRUEnever evaluated
FALSEnever evaluated
0) >
(0) > (9223372036854775807L)Description
TRUEnever evaluated
FALSEnever evaluated
0
1279 (9223372036854775807L)
(0) > (9223372036854775807L)Description
TRUEnever evaluated
FALSEnever evaluated
0
1280 ) || (sizeof(time_t) != 4
sizeof(time_t) != 4Description
TRUEnever evaluated
FALSEnever evaluated
&& sizeof(time_t) != 8
sizeof(time_t) != 8Description
TRUEnever evaluated
FALSEnever evaluated
)) || ((sizeof(off_t) == 4
sizeof(off_t) == 4Description
TRUEnever evaluated
FALSEnever evaluated
&& (
(0) > (2147483647)Description
TRUEnever evaluated
FALSEnever evaluated
0) >
(0) > (2147483647)Description
TRUEnever evaluated
FALSEnever evaluated
0
1281 (2147483647)
(0) > (2147483647)Description
TRUEnever evaluated
FALSEnever evaluated
0
1282 ) || (sizeof(off_t) == 8
sizeof(off_t) == 8Description
TRUEnever evaluated
FALSEnever evaluated
&& (
(0) > (9223372036854775807L)Description
TRUEnever evaluated
FALSEnever evaluated
0) >
(0) > (9223372036854775807L)Description
TRUEnever evaluated
FALSEnever evaluated
0
1283 (9223372036854775807L)
(0) > (9223372036854775807L)Description
TRUEnever evaluated
FALSEnever evaluated
0
1284 ) || (sizeof(off_t) != 4
sizeof(off_t) != 4Description
TRUEnever evaluated
FALSEnever evaluated
&& sizeof(off_t) != 8
sizeof(off_t) != 8Description
TRUEnever evaluated
FALSEnever evaluated
)))
0
1285 { why = "Unexpected off_t/time_t size"; goto
never executed: goto screwup;
screwup;
never executed: goto screwup;
};
0
1286-
1287 setimes = targisdir = 0;-
1288 mask = umask(0);-
1289 if (!pflag
!pflagDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1290 (
never executed: (void) umask(mask);
void) umask(mask);
never executed: (void) umask(mask);
0
1291 if (argc != 1
argc != 1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1292 run_err("ambiguous target");-
1293 exit(1);
never executed: exit(1);
0
1294 }-
1295 targ = *argv;-
1296 if (targetshouldbedirectory
targetshouldbedirectoryDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1297 verifydir(targ);
never executed: verifydir(targ);
0
1298-
1299 (void) atomicio((ssize_t (*)(int, void *, size_t))write, remout, "", 1);-
1300 if (stat(targ, &stb) == 0
stat(targ, &stb) == 0Description
TRUEnever evaluated
FALSEnever evaluated
&&
0
1301 ((((
(((( stb.st_mo... == (0040000))Description
TRUEnever evaluated
FALSEnever evaluated
0
1302 stb.st_mode
(((( stb.st_mo... == (0040000))Description
TRUEnever evaluated
FALSEnever evaluated
0
1303 )) & 0170000) == (0040000))
(((( stb.st_mo... == (0040000))Description
TRUEnever evaluated
FALSEnever evaluated
0
1304 )-
1305 targisdir = 1;
never executed: targisdir = 1;
0
1306 for (first = 1;; first = 0) {-
1307 cp = buf;-
1308 if (atomicio(read, remin, cp, 1) != 1
atomicio(read,...n, cp, 1) != 1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1309 return;
never executed: return;
0
1310 if (*
*cp++ == '\n'Description
TRUEnever evaluated
FALSEnever evaluated
cp++ == '\n'
*cp++ == '\n'Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1311 { why = "unexpected <newline>"; goto
never executed: goto screwup;
screwup;
never executed: goto screwup;
};
0
1312 do {-
1313 if (atomicio(read, remin, &ch, sizeof(ch)) != sizeof(ch)
atomicio(read,... != sizeof(ch)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1314 { why = "lost connection"; goto
never executed: goto screwup;
screwup;
never executed: goto screwup;
};
0
1315 *cp++ = ch;-
1316 }
never executed: end of block
while (cp < &buf[sizeof(buf) - 1]
cp < &buf[sizeof(buf) - 1]Description
TRUEnever evaluated
FALSEnever evaluated
&& ch != '\n'
ch != '\n'Description
TRUEnever evaluated
FALSEnever evaluated
);
0
1317 *cp = 0;-
1318 if (verbose_mode
verbose_modeDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1319 fmprintf(
never executed: fmprintf( stderr , "Sink: %s", buf);
0
1320 stderr
never executed: fmprintf( stderr , "Sink: %s", buf);
0
1321 , "Sink: %s", buf);
never executed: fmprintf( stderr , "Sink: %s", buf);
0
1322-
1323 if (buf[0] == '\01'
buf[0] == '\01'Description
TRUEnever evaluated
FALSEnever evaluated
|| buf[0] == '\02'
buf[0] == '\02'Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1324 if (iamremote == 0
iamremote == 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1325 (void) snmprintf(visbuf, sizeof(visbuf),-
1326 -
1327 ((void *)0)-
1328 , "%s", buf + 1);-
1329 (void) atomicio((ssize_t (*)(int, void *, size_t))write, -
1330 2-
1331 ,-
1332 visbuf, strlen(visbuf));-
1333 }
never executed: end of block
0
1334 if (buf[0] == '\02'
buf[0] == '\02'Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1335 exit(1);
never executed: exit(1);
0
1336 ++errs;-
1337 continue;
never executed: continue;
0
1338 }-
1339 if (buf[0] == 'E'
buf[0] == 'E'Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1340 (void) atomicio((ssize_t (*)(int, void *, size_t))write, remout, "", 1);-
1341 return;
never executed: return;
0
1342 }-
1343 if (ch == '\n'
ch == '\n'Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1344 *--
never executed: *--cp = 0;
cp = 0;
never executed: *--cp = 0;
0
1345-
1346 cp = buf;-
1347 if (*
*cp == 'T'Description
TRUEnever evaluated
FALSEnever evaluated
cp == 'T'
*cp == 'T'Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1348 setimes++;-
1349 cp++;-
1350 if (!
! ((*__ctype_b...int) _ISdigit)Description
TRUEnever evaluated
FALSEnever evaluated
0
1351 ((*__ctype_b_loc ())[(int) ((
! ((*__ctype_b...int) _ISdigit)Description
TRUEnever evaluated
FALSEnever evaluated
0
1352 (unsigned char)*cp
! ((*__ctype_b...int) _ISdigit)Description
TRUEnever evaluated
FALSEnever evaluated
0
1353 ))] & (unsigned short int) _ISdigit)
! ((*__ctype_b...int) _ISdigit)Description
TRUEnever evaluated
FALSEnever evaluated
0
1354 )-
1355 { why = "mtime.sec not present"; goto
never executed: goto screwup;
screwup;
never executed: goto screwup;
};
0
1356 ull = strtoull(cp, &cp, 10);-
1357 if (!cp
!cpDescription
TRUEnever evaluated
FALSEnever evaluated
|| *
*cp++ != ' 'Description
TRUEnever evaluated
FALSEnever evaluated
cp++ != ' '
*cp++ != ' 'Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1358 { why = "mtime.sec not delimited"; goto
never executed: goto screwup;
screwup;
never executed: goto screwup;
};
0
1359 if (((sizeof(time_t) == 4
sizeof(time_t) == 4Description
TRUEnever evaluated
FALSEnever evaluated
&& (
(ull) > (2147483647)Description
TRUEnever evaluated
FALSEnever evaluated
ull) >
(ull) > (2147483647)Description
TRUEnever evaluated
FALSEnever evaluated
0
1360 (2147483647)
(ull) > (2147483647)Description
TRUEnever evaluated
FALSEnever evaluated
0
1361 ) || (sizeof(time_t) == 8
sizeof(time_t) == 8Description
TRUEnever evaluated
FALSEnever evaluated
&& (
(ull) > (9223372036854775807L)Description
TRUEnever evaluated
FALSEnever evaluated
ull) >
(ull) > (9223372036854775807L)Description
TRUEnever evaluated
FALSEnever evaluated
0
1362 (9223372036854775807L)
(ull) > (9223372036854775807L)Description
TRUEnever evaluated
FALSEnever evaluated
0
1363 ) || (sizeof(time_t) != 4
sizeof(time_t) != 4Description
TRUEnever evaluated
FALSEnever evaluated
&& sizeof(time_t) != 8
sizeof(time_t) != 8Description
TRUEnever evaluated
FALSEnever evaluated
)))
0
1364 setimes = 0;
never executed: setimes = 0;
0
1365 tv[1].tv_sec = ull;-
1366 tv[1].tv_usec = strtol(cp, &cp, 10);-
1367 if (!cp
!cpDescription
TRUEnever evaluated
FALSEnever evaluated
|| *
*cp++ != ' 'Description
TRUEnever evaluated
FALSEnever evaluated
cp++ != ' '
*cp++ != ' 'Description
TRUEnever evaluated
FALSEnever evaluated
|| tv[1].tv_usec < 0
tv[1].tv_usec < 0Description
TRUEnever evaluated
FALSEnever evaluated
||
0
1368 tv[1].tv_usec > 999999
tv[1].tv_usec > 999999Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1369 { why = "mtime.usec not delimited"; goto
never executed: goto screwup;
screwup;
never executed: goto screwup;
};
0
1370 if (!
! ((*__ctype_b...int) _ISdigit)Description
TRUEnever evaluated
FALSEnever evaluated
0
1371 ((*__ctype_b_loc ())[(int) ((
! ((*__ctype_b...int) _ISdigit)Description
TRUEnever evaluated
FALSEnever evaluated
0
1372 (unsigned char)*cp
! ((*__ctype_b...int) _ISdigit)Description
TRUEnever evaluated
FALSEnever evaluated
0
1373 ))] & (unsigned short int) _ISdigit)
! ((*__ctype_b...int) _ISdigit)Description
TRUEnever evaluated
FALSEnever evaluated
0
1374 )-
1375 { why = "atime.sec not present"; goto
never executed: goto screwup;
screwup;
never executed: goto screwup;
};
0
1376 ull = strtoull(cp, &cp, 10);-
1377 if (!cp
!cpDescription
TRUEnever evaluated
FALSEnever evaluated
|| *
*cp++ != ' 'Description
TRUEnever evaluated
FALSEnever evaluated
cp++ != ' '
*cp++ != ' 'Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1378 { why = "atime.sec not delimited"; goto
never executed: goto screwup;
screwup;
never executed: goto screwup;
};
0
1379 if (((sizeof(time_t) == 4
sizeof(time_t) == 4Description
TRUEnever evaluated
FALSEnever evaluated
&& (
(ull) > (2147483647)Description
TRUEnever evaluated
FALSEnever evaluated
ull) >
(ull) > (2147483647)Description
TRUEnever evaluated
FALSEnever evaluated
0
1380 (2147483647)
(ull) > (2147483647)Description
TRUEnever evaluated
FALSEnever evaluated
0
1381 ) || (sizeof(time_t) == 8
sizeof(time_t) == 8Description
TRUEnever evaluated
FALSEnever evaluated
&& (
(ull) > (9223372036854775807L)Description
TRUEnever evaluated
FALSEnever evaluated
ull) >
(ull) > (9223372036854775807L)Description
TRUEnever evaluated
FALSEnever evaluated
0
1382 (9223372036854775807L)
(ull) > (9223372036854775807L)Description
TRUEnever evaluated
FALSEnever evaluated
0
1383 ) || (sizeof(time_t) != 4
sizeof(time_t) != 4Description
TRUEnever evaluated
FALSEnever evaluated
&& sizeof(time_t) != 8
sizeof(time_t) != 8Description
TRUEnever evaluated
FALSEnever evaluated
)))
0
1384 setimes = 0;
never executed: setimes = 0;
0
1385 tv[0].tv_sec = ull;-
1386 tv[0].tv_usec = strtol(cp, &cp, 10);-
1387 if (!cp
!cpDescription
TRUEnever evaluated
FALSEnever evaluated
|| *
*cp++ != '\0'Description
TRUEnever evaluated
FALSEnever evaluated
cp++ != '\0'
*cp++ != '\0'Description
TRUEnever evaluated
FALSEnever evaluated
|| tv[0].tv_usec < 0
tv[0].tv_usec < 0Description
TRUEnever evaluated
FALSEnever evaluated
||
0
1388 tv[0].tv_usec > 999999
tv[0].tv_usec > 999999Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1389 { why = "atime.usec not delimited"; goto
never executed: goto screwup;
screwup;
never executed: goto screwup;
};
0
1390 (void) atomicio((ssize_t (*)(int, void *, size_t))write, remout, "", 1);-
1391 continue;
never executed: continue;
0
1392 }-
1393 if (*
*cp != 'C'Description
TRUEnever evaluated
FALSEnever evaluated
cp != 'C'
*cp != 'C'Description
TRUEnever evaluated
FALSEnever evaluated
&& *
*cp != 'D'Description
TRUEnever evaluated
FALSEnever evaluated
cp != 'D'
*cp != 'D'Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1394-
1395-
1396-
1397-
1398-
1399-
1400-
1401 if (first
firstDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1402 run_err("%s", cp);-
1403 exit(1);
never executed: exit(1);
0
1404 }-
1405 { why = "expected control record"; goto
never executed: goto screwup;
screwup;
never executed: goto screwup;
};
0
1406 }-
1407 mode = 0;-
1408 for (++cp; cp < buf + 5
cp < buf + 5Description
TRUEnever evaluated
FALSEnever evaluated
; cp++) {
0
1409 if (*
*cp < '0'Description
TRUEnever evaluated
FALSEnever evaluated
cp < '0'
*cp < '0'Description
TRUEnever evaluated
FALSEnever evaluated
|| *
*cp > '7'Description
TRUEnever evaluated
FALSEnever evaluated
cp > '7'
*cp > '7'Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1410 { why = "bad mode"; goto
never executed: goto screwup;
screwup;
never executed: goto screwup;
};
0
1411 mode = (mode << 3) | (*cp - '0');-
1412 }
never executed: end of block
0
1413 if (!pflag
!pflagDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1414 mode &= ~mask;
never executed: mode &= ~mask;
0
1415 if (*
*cp++ != ' 'Description
TRUEnever evaluated
FALSEnever evaluated
cp++ != ' '
*cp++ != ' 'Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1416 { why = "mode not delimited"; goto
never executed: goto screwup;
screwup;
never executed: goto screwup;
};
0
1417-
1418 if (!
! ((*__ctype_b...int) _ISdigit)Description
TRUEnever evaluated
FALSEnever evaluated
0
1419 ((*__ctype_b_loc ())[(int) ((
! ((*__ctype_b...int) _ISdigit)Description
TRUEnever evaluated
FALSEnever evaluated
0
1420 (unsigned char)*cp
! ((*__ctype_b...int) _ISdigit)Description
TRUEnever evaluated
FALSEnever evaluated
0
1421 ))] & (unsigned short int) _ISdigit)
! ((*__ctype_b...int) _ISdigit)Description
TRUEnever evaluated
FALSEnever evaluated
0
1422 )-
1423 { why = "size not present"; goto
never executed: goto screwup;
screwup;
never executed: goto screwup;
};
0
1424 ull = strtoull(cp, &cp, 10);-
1425 if (!cp
!cpDescription
TRUEnever evaluated
FALSEnever evaluated
|| *
*cp++ != ' 'Description
TRUEnever evaluated
FALSEnever evaluated
cp++ != ' '
*cp++ != ' 'Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1426 { why = "size not delimited"; goto
never executed: goto screwup;
screwup;
never executed: goto screwup;
};
0
1427 if (((sizeof(off_t) == 4
sizeof(off_t) == 4Description
TRUEnever evaluated
FALSEnever evaluated
&& (
(ull) > (2147483647)Description
TRUEnever evaluated
FALSEnever evaluated
ull) >
(ull) > (2147483647)Description
TRUEnever evaluated
FALSEnever evaluated
0
1428 (2147483647)
(ull) > (2147483647)Description
TRUEnever evaluated
FALSEnever evaluated
0
1429 ) || (sizeof(off_t) == 8
sizeof(off_t) == 8Description
TRUEnever evaluated
FALSEnever evaluated
&& (
(ull) > (9223372036854775807L)Description
TRUEnever evaluated
FALSEnever evaluated
ull) >
(ull) > (9223372036854775807L)Description
TRUEnever evaluated
FALSEnever evaluated
0
1430 (9223372036854775807L)
(ull) > (9223372036854775807L)Description
TRUEnever evaluated
FALSEnever evaluated
0
1431 ) || (sizeof(off_t) != 4
sizeof(off_t) != 4Description
TRUEnever evaluated
FALSEnever evaluated
&& sizeof(off_t) != 8
sizeof(off_t) != 8Description
TRUEnever evaluated
FALSEnever evaluated
)))
0
1432 { why = "size out of range"; goto
never executed: goto screwup;
screwup;
never executed: goto screwup;
};
0
1433 size = (off_t)ull;-
1434-
1435 if ((
( (__extension... ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
0
1436 (__extension__ (__builtin_constant_p (
__builtin_constant_p ( '/' )Description
TRUEnever evaluated
FALSEnever evaluated
( (__extension... ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
0
1437 '/'
__builtin_constant_p ( '/' )Description
TRUEnever evaluated
FALSEnever evaluated
( (__extension... ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
0
1438 )
__builtin_constant_p ( '/' )Description
TRUEnever evaluated
FALSEnever evaluated
&& !__builtin_constant_p (
!__builtin_constant_p ( cp )Description
TRUEnever evaluated
FALSEnever evaluated
( (__extension... ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
0
1439 cp
!__builtin_constant_p ( cp )Description
TRUEnever evaluated
FALSEnever evaluated
( (__extension... ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
0
1440 )
!__builtin_constant_p ( cp )Description
TRUEnever evaluated
FALSEnever evaluated
&& (
( '/' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
( (__extension... ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
0
1441 '/'
( '/' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
( (__extension... ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
0
1442 ) == '\0'
( '/' ) == '\0'Description
TRUEnever evaluated
FALSEnever evaluated
? (char *) __rawmemchr (
( (__extension... ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
0
1443 cp
( (__extension... ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
0
1444 ,
( (__extension... ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
0
1445 '/'
( (__extension... ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
0
1446 ) : __builtin_strchr (
( (__extension... ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
0
1447 cp
( (__extension... ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
0
1448 ,
( (__extension... ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
0
1449 '/'
( (__extension... ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
0
1450 )))
( (__extension... ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
0
1451 !=
( (__extension... ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
0
1452 ((void *)0)
( (__extension... ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
0
1453 )
( (__extension... ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
|| (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1454 __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1455 cp
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1456 ) && __builtin_constant_p (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1457 ".."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1458 ) && (__s1_len = __builtin_strlen (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1459 cp
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1460 ), __s2_len = __builtin_strlen (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1461 ".."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1462 ), (!((size_t)(const void *)((
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1463 cp
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1464 ) + 1) - (size_t)(const void *)(
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1465 cp
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1466 ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1467 ".."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1468 ) + 1) - (size_t)(const void *)(
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1469 ".."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1470 ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1471 cp
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1472 ,
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1473 ".."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1474 ) : (__builtin_constant_p (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1475 cp
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1476 ) && ((size_t)(const void *)((
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1477 cp
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1478 ) + 1) - (size_t)(const void *)(
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1479 cp
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1480 ) == 1) && (__s1_len = __builtin_strlen (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1481 cp
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1482 ), __s1_len < 4) ? (__builtin_constant_p (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1483 ".."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1484 ) && ((size_t)(const void *)((
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1485 ".."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1486 ) + 1) - (size_t)(const void *)(
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1487 ".."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1488 ) == 1) ? __builtin_strcmp (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1489 cp
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1490 ,
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1491 ".."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1492 ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1493 ".."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1494 ); int __result = (((const unsigned char *) (const char *) (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1495 cp
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1496 ))[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
1497 cp
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1498 ))[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
1499 cp
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1500 ))[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 *) ( cp ))[3] - __s2[3]);
0
1501 cp
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( cp ))[3] - __s2[3]);
0
1502 ))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1503 ".."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1504 ) && ((size_t)(const void *)((
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1505 ".."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1506 ) + 1) - (size_t)(const void *)(
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1507 ".."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1508 ) == 1) && (__s2_len = __builtin_strlen (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1509 ".."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1510 ), __s2_len < 4) ? (__builtin_constant_p (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1511 cp
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1512 ) && ((size_t)(const void *)((
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1513 cp
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1514 ) + 1) - (size_t)(const void *)(
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1515 cp
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1516 ) == 1) ? __builtin_strcmp (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1517 cp
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1518 ,
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1519 ".."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1520 ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1521 cp
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1522 ); int __result = (((const unsigned char *) (const char *) (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1523 ".."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1524 ))[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
1525 ".."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1526 ))[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
1527 ".."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1528 ))[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
1529 ".."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
never executed: __result = (((const unsigned char *) (const char *) ( ".." ))[3] - __s2[3]);
0
1530 ))[3] - __s2[3]); } } __result; }))) : __builtin_strcmp (
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1531 cp
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1532 ,
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1533 ".."
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1534 )))); })
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1535 == 0)
( __extension_...)))); }) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1536 run_err("error: unexpected filename: %s", cp);-
1537 exit(1);
never executed: exit(1);
0
1538 }-
1539 if (targisdir
targisdirDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1540 static char *namebuf;-
1541 static size_t cursize;-
1542 size_t need;-
1543-
1544 need = strlen(targ) + strlen(cp) + 250;-
1545 if (need > cursize
need > cursizeDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1546 free(namebuf);-
1547 namebuf = xmalloc(need);-
1548 cursize = need;-
1549 }
never executed: end of block
0
1550 (void) snprintf(namebuf, need, "%s%s%s", targ,-
1551 -
1552 __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (-
1553 targ-
1554 ) && __builtin_constant_p (-
1555 "/"-
1556 ) && (__s1_len = __builtin_strlen (-
1557 targ-
1558 ), __s2_len = __builtin_strlen (-
1559 "/"-
1560 ), (!((size_t)(const void *)((-
1561 targ-
1562 ) + 1) - (size_t)(const void *)(-
1563 targ-
1564 ) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((-
1565 "/"-
1566 ) + 1) - (size_t)(const void *)(-
1567 "/"-
1568 ) == 1) || __s2_len >= 4)) ? __builtin_strcmp (-
1569 targ-
1570 , -
1571 "/"-
1572 ) : (__builtin_constant_p (-
1573 targ-
1574 ) && ((size_t)(const void *)((-
1575 targ-
1576 ) + 1) - (size_t)(const void *)(-
1577 targ-
1578 ) == 1) && (__s1_len = __builtin_strlen (-
1579 targ-
1580 ), __s1_len < 4) ? (__builtin_constant_p (-
1581 "/"-
1582 ) && ((size_t)(const void *)((-
1583 "/"-
1584 ) + 1) - (size_t)(const void *)(-
1585 "/"-
1586 ) == 1) ? __builtin_strcmp (-
1587 targ-
1588 , -
1589 "/"-
1590 ) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (-
1591 "/"-
1592 ); int __result = (((const unsigned char *) (const char *) (-
1593 targ-
1594 ))[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 *) (
0
1595 targ-
1596 ))[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 *) (
0
1597 targ-
1598 ))[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 *) ( targ ))[3] - __s2[3]);
0
1599 targ
never executed: __result = (((const unsigned char *) (const char *) ( targ ))[3] - __s2[3]);
0
1600 ))[3] - __s2[3]);
never executed: __result = (((const unsigned char *) (const char *) ( targ ))[3] - __s2[3]);
}
never executed: end of block
}
never executed: end of block
__result; }))) : (__builtin_constant_p (
0
1601 "/"-
1602 ) && ((size_t)(const void *)((-
1603 "/"-
1604 ) + 1) - (size_t)(const void *)(-
1605 "/"-
1606 ) == 1) && (__s2_len = __builtin_strlen (-
1607 "/"-
1608 ), __s2_len < 4) ? (__builtin_constant_p (-
1609 targ-
1610 ) && ((size_t)(const void *)((-
1611 targ-
1612 ) + 1) - (size_t)(const void *)(-
1613 targ-
1614 ) == 1) ? __builtin_strcmp (-
1615 targ-
1616 , -
1617 "/"-
1618 ) : -(__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (-
1619 targ-
1620 ); int __result = (((const unsigned char *) (const char *) (-
1621 "/"-
1622 ))[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 *) (
0
1623 "/"-
1624 ))[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 *) (
0
1625 "/"-
1626 ))[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
1627 "/"
never executed: __result = (((const unsigned char *) (const char *) ( "/" ))[3] - __s2[3]);
0
1628 ))[3] - __s2[3]);
never executed: __result = (((const unsigned char *) (const char *) ( "/" ))[3] - __s2[3]);
}
never executed: end of block
}
never executed: end of block
__result; }))) : __builtin_strcmp (
0
1629 targ-
1630 , -
1631 "/"-
1632 )))); }) -
1633 ? "/" : "", cp);-
1634 np = namebuf;-
1635 }
never executed: end of block
else
0
1636 np = targ;
never executed: np = targ;
0
1637 curfile = cp;-
1638 exists = stat(np, &stb) == 0;-
1639 if (buf[0] == 'D'
buf[0] == 'D'Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1640 int mod_flag = pflag;-
1641 if (!iamrecursive
!iamrecursiveDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1642 { why = "received directory without -r"; goto
never executed: goto screwup;
screwup;
never executed: goto screwup;
};
0
1643 if (exists
existsDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1644 if (!
! (((( stb.st_... == (0040000))Description
TRUEnever evaluated
FALSEnever evaluated
0
1645 ((((
! (((( stb.st_... == (0040000))Description
TRUEnever evaluated
FALSEnever evaluated
0
1646 stb.st_mode
! (((( stb.st_... == (0040000))Description
TRUEnever evaluated
FALSEnever evaluated
0
1647 )) & 0170000) == (0040000))
! (((( stb.st_... == (0040000))Description
TRUEnever evaluated
FALSEnever evaluated
0
1648 ) {-
1649 -
1650 (*__errno_location ()) -
1651 = -
1652 20-
1653 ;-
1654 goto
never executed: goto bad;
bad;
never executed: goto bad;
0
1655 }-
1656 if (pflag
pflagDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1657 (
never executed: (void) chmod(np, mode);
void) chmod(np, mode);
never executed: (void) chmod(np, mode);
0
1658 }
never executed: end of block
else {
0
1659-
1660-
1661 mod_flag = 1;-
1662 if (mkdir(np, mode |
mkdir(np, mode...00|0100) ) < 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1663 (0400|0200|0100)
mkdir(np, mode...00|0100) ) < 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1664 ) < 0
mkdir(np, mode...00|0100) ) < 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1665 goto
never executed: goto bad;
bad;
never executed: goto bad;
0
1666 }
never executed: end of block
0
1667 vect[0] = xstrdup(np);-
1668 sink(1, vect);-
1669 if (setimes
setimesDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1670 setimes = 0;-
1671 if (utimes(vect[0], tv) < 0
utimes(vect[0], tv) < 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1672 run_err("%s: set times: %s",
never executed: run_err("%s: set times: %s", vect[0], strerror( (*__errno_location ()) ));
0
1673 vect[0], strerror(
never executed: run_err("%s: set times: %s", vect[0], strerror( (*__errno_location ()) ));
0
1674 (*__errno_location ())
never executed: run_err("%s: set times: %s", vect[0], strerror( (*__errno_location ()) ));
0
1675 ));
never executed: run_err("%s: set times: %s", vect[0], strerror( (*__errno_location ()) ));
0
1676 }
never executed: end of block
0
1677 if (mod_flag
mod_flagDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1678 (
never executed: (void) chmod(vect[0], mode);
void) chmod(vect[0], mode);
never executed: (void) chmod(vect[0], mode);
0
1679 free(vect[0]);-
1680 continue;
never executed: continue;
0
1681 }-
1682 omode = mode;-
1683 mode |= -
1684 0200-
1685 ;-
1686 if ((
(ofd = open(np...0 , mode)) < 0Description
TRUEnever evaluated
FALSEnever evaluated
ofd = open(np,
(ofd = open(np...0 , mode)) < 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1687 01
(ofd = open(np...0 , mode)) < 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1688 |
(ofd = open(np...0 , mode)) < 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1689 0100
(ofd = open(np...0 , mode)) < 0Description
TRUEnever evaluated
FALSEnever evaluated
0
1690 , mode)) < 0
(ofd = open(np...0 , mode)) < 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1691bad: run_err("%s: %s", np, strerror(-
1692 (*__errno_location ())-
1693 ));-
1694 continue;
never executed: continue;
0
1695 }-
1696 (void) atomicio((ssize_t (*)(int, void *, size_t))write, remout, "", 1);-
1697 if ((
(bp = allocbuf...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
bp = allocbuf(&buffer, ofd, 16384)) ==
(bp = allocbuf...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1698 ((void *)0)
(bp = allocbuf...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1699 ) {-
1700 (void) close(ofd);-
1701 continue;
never executed: continue;
0
1702 }-
1703 cp = bp->buf;-
1704 wrerr = NO;-
1705-
1706 statbytes = 0;-
1707 if (showprogress
showprogressDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1708 start_progress_meter(curfile, size, &statbytes);
never executed: start_progress_meter(curfile, size, &statbytes);
0
1709 set_nonblock(remin);-
1710 for (count = i = 0; i < size
i < sizeDescription
TRUEnever evaluated
FALSEnever evaluated
; i += bp->cnt) {
0
1711 amt = bp->cnt;-
1712 if (i + amt > size
i + amt > sizeDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1713 amt = size - i;
never executed: amt = size - i;
0
1714 count += amt;-
1715 do {-
1716 j = atomicio6(read, remin, cp, amt,-
1717 scpio, &statbytes);-
1718 if (j == 0
j == 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1719 run_err("%s", j != -
1720 32 -
1721 ?-
1722 strerror(-
1723 (*__errno_location ())-
1724 ) :-
1725 "dropped connection");-
1726 exit(1);
never executed: exit(1);
0
1727 }-
1728 amt -= j;-
1729 cp += j;-
1730 }
never executed: end of block
while (amt > 0
amt > 0Description
TRUEnever evaluated
FALSEnever evaluated
);
0
1731-
1732 if (count == bp->cnt
count == bp->cntDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1733-
1734 if (wrerr == NO
wrerr == NODescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1735 if (atomicio((ssize_t (*)(int, void *, size_t))write, ofd, bp->buf,
atomicio((ssiz...ount) != countDescription
TRUEnever evaluated
FALSEnever evaluated
0
1736 count) != count
atomicio((ssiz...ount) != countDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1737 wrerr = YES;-
1738 wrerrno = -
1739 (*__errno_location ())-
1740 ;-
1741 }
never executed: end of block
0
1742 }
never executed: end of block
0
1743 count = 0;-
1744 cp = bp->buf;-
1745 }
never executed: end of block
0
1746 }
never executed: end of block
0
1747 unset_nonblock(remin);-
1748 if (count != 0
count != 0Description
TRUEnever evaluated
FALSEnever evaluated
&& wrerr == NO
wrerr == NODescription
TRUEnever evaluated
FALSEnever evaluated
&&
0
1749 atomicio((ssize_t (*)(int, void *, size_t))write, ofd, bp->buf, count) != count
atomicio((ssiz...ount) != countDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1750 wrerr = YES;-
1751 wrerrno = -
1752 (*__errno_location ())-
1753 ;-
1754 }
never executed: end of block
0
1755 if (wrerr == NO
wrerr == NODescription
TRUEnever evaluated
FALSEnever evaluated
&& (!exists
!existsDescription
TRUEnever evaluated
FALSEnever evaluated
||
0
1756 ((((
(((( stb.st_mo... == (0100000))Description
TRUEnever evaluated
FALSEnever evaluated
0
1757 stb.st_mode
(((( stb.st_mo... == (0100000))Description
TRUEnever evaluated
FALSEnever evaluated
0
1758 )) & 0170000) == (0100000))
(((( stb.st_mo... == (0100000))Description
TRUEnever evaluated
FALSEnever evaluated
0
1759 ) &&-
1760 ftruncate(ofd, size) != 0
ftruncate(ofd, size) != 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1761 run_err("%s: truncate: %s", np, strerror(-
1762 (*__errno_location ())-
1763 ));-
1764 wrerr = DISPLAYED;-
1765 }
never executed: end of block
0
1766 if (pflag
pflagDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1767 if (exists
existsDescription
TRUEnever evaluated
FALSEnever evaluated
|| omode != mode
omode != modeDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1768-
1769 if (fchmod(ofd, omode)
fchmod(ofd, omode)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1770-
1771-
1772-
1773 run_err("%s: set mode: %s",-
1774 np, strerror(-
1775 (*__errno_location ())-
1776 ));-
1777 wrerr = DISPLAYED;-
1778 }
never executed: end of block
0
1779 }
never executed: end of block
else {
0
1780 if (!exists
!existsDescription
TRUEnever evaluated
FALSEnever evaluated
&& omode != mode
omode != modeDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1781-
1782 if (fchmod(ofd, omode & ~mask)
fchmod(ofd, omode & ~mask)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1783-
1784-
1785-
1786 run_err("%s: set mode: %s",-
1787 np, strerror(-
1788 (*__errno_location ())-
1789 ));-
1790 wrerr = DISPLAYED;-
1791 }
never executed: end of block
0
1792 }
never executed: end of block
0
1793 if (close(ofd) == -1
close(ofd) == -1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1794 wrerr = YES;-
1795 wrerrno = -
1796 (*__errno_location ())-
1797 ;-
1798 }
never executed: end of block
0
1799 (void) response();-
1800 if (showprogress
showprogressDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
1801 stop_progress_meter();
never executed: stop_progress_meter();
0
1802 if (setimes
setimesDescription
TRUEnever evaluated
FALSEnever evaluated
&& wrerr == NO
wrerr == NODescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1803 setimes = 0;-
1804 if (utimes(np, tv) < 0
utimes(np, tv) < 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1805 run_err("%s: set times: %s",-
1806 np, strerror(-
1807 (*__errno_location ())-
1808 ));-
1809 wrerr = DISPLAYED;-
1810 }
never executed: end of block
0
1811 }
never executed: end of block
0
1812 switch (wrerr) {-
1813 case
never executed: case YES:
YES:
never executed: case YES:
0
1814 run_err("%s: %s", np, strerror(wrerrno));-
1815 break;
never executed: break;
0
1816 case
never executed: case NO:
NO:
never executed: case NO:
0
1817 (void) atomicio((ssize_t (*)(int, void *, size_t))write, remout, "", 1);-
1818 break;
never executed: break;
0
1819 case
never executed: case DISPLAYED:
DISPLAYED:
never executed: case DISPLAYED:
0
1820 break;
never executed: break;
0
1821 }-
1822 }
never executed: end of block
0
1823screwup:
code before this statement never executed: screwup:
0
1824 run_err("protocol error: %s", why);-
1825 exit(1);
never executed: exit(1);
0
1826}-
1827-
1828int-
1829response(void)-
1830{-
1831 char ch, *cp, resp, rbuf[2048], visbuf[2048];-
1832-
1833 if (atomicio(read, remin, &resp, sizeof(resp)) != sizeof(resp)
atomicio(read,...= sizeof(resp)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1834 lostconn(0);
never executed: lostconn(0);
0
1835-
1836 cp = rbuf;-
1837 switch (resp) {-
1838 case
never executed: case 0:
0:
never executed: case 0:
0
1839 return
never executed: return (0);
(0);
never executed: return (0);
0
1840 default
never executed: default:
:
never executed: default:
0
1841 *cp++ = resp;-
1842-
1843 case
never executed: case 1:
1:
never executed: case 1:
code before this statement never executed: case 1:
0
1844 case
never executed: case 2:
2:
never executed: case 2:
0
1845 do {-
1846 if (atomicio(read, remin, &ch, sizeof(ch)) != sizeof(ch)
atomicio(read,... != sizeof(ch)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1847 lostconn(0);
never executed: lostconn(0);
0
1848 *cp++ = ch;-
1849 }
never executed: end of block
while (cp < &rbuf[sizeof(rbuf) - 1]
cp < &rbuf[sizeof(rbuf) - 1]Description
TRUEnever evaluated
FALSEnever evaluated
&& ch != '\n'
ch != '\n'Description
TRUEnever evaluated
FALSEnever evaluated
);
0
1850-
1851 if (!iamremote
!iamremoteDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1852 cp[-1] = '\0';-
1853 (void) snmprintf(visbuf, sizeof(visbuf),-
1854 -
1855 ((void *)0)-
1856 , "%s\n", rbuf);-
1857 (void) atomicio((ssize_t (*)(int, void *, size_t))write, -
1858 2-
1859 ,-
1860 visbuf, strlen(visbuf));-
1861 }
never executed: end of block
0
1862 ++errs;-
1863 if (resp == 1
resp == 1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1864 return
never executed: return (-1);
(-1);
never executed: return (-1);
0
1865 exit(1);
never executed: exit(1);
0
1866 }-
1867-
1868}-
1869-
1870void-
1871usage(void)-
1872{-
1873 (void) fprintf(-
1874 stderr-
1875 ,-
1876 "usage: scp [-346BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file]\n"-
1877 " [-l limit] [-o ssh_option] [-P port] [-S program] source ... target\n");-
1878 exit(1);
never executed: exit(1);
0
1879}-
1880-
1881void-
1882run_err(const char *fmt,...)-
1883{-
1884 static FILE *fp;-
1885 va_list ap;-
1886-
1887 ++errs;-
1888 if (fp !=
fp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1889 ((void *)0)
fp != ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
1890 || (remout != -1
remout != -1Description
TRUEnever evaluated
FALSEnever evaluated
&& (
(fp = fdopen(remout, "w"))Description
TRUEnever evaluated
FALSEnever evaluated
fp = fdopen(remout, "w"))
(fp = fdopen(remout, "w"))Description
TRUEnever evaluated
FALSEnever evaluated
)) {
0
1891 (void) fprintf(fp, "%c", 0x01);-
1892 (void) fprintf(fp, "scp: ");-
1893 -
1894 __builtin_va_start(-
1895 ap-
1896 ,-
1897 fmt-
1898 )-
1899 ;-
1900 (void) vfprintf(fp, fmt, ap);-
1901 -
1902 __builtin_va_end(-
1903 ap-
1904 )-
1905 ;-
1906 (void) fprintf(fp, "\n");-
1907 (void) fflush(fp);-
1908 }
never executed: end of block
0
1909-
1910 if (!iamremote
!iamremoteDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
1911 -
1912 __builtin_va_start(-
1913 ap-
1914 ,-
1915 fmt-
1916 )-
1917 ;-
1918 vfmprintf(-
1919 stderr-
1920 , fmt, ap);-
1921 -
1922 __builtin_va_end(-
1923 ap-
1924 )-
1925 ;-
1926 fprintf(-
1927 stderr-
1928 , "\n");-
1929 }
never executed: end of block
0
1930}
never executed: end of block
0
1931-
1932void-
1933verifydir(char *cp)-
1934{-
1935 struct stat stb;-
1936-
1937 if (!stat(cp, &stb)
!stat(cp, &stb)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
1938 if (-
1939 ((((
(((( stb.st_mo... == (0040000))Description
TRUEnever evaluated
FALSEnever evaluated
0
1940 stb.st_mode
(((( stb.st_mo... == (0040000))Description
TRUEnever evaluated
FALSEnever evaluated
0
1941 )) & 0170000) == (0040000))
(((( stb.st_mo... == (0040000))Description
TRUEnever evaluated
FALSEnever evaluated
0
1942 )-
1943 return;
never executed: return;
0
1944 -
1945 (*__errno_location ()) -
1946 = -
1947 20-
1948 ;-
1949 }
never executed: end of block
0
1950 run_err("%s: %s", cp, strerror(-
1951 (*__errno_location ())-
1952 ));-
1953 killchild(0);-
1954}
never executed: end of block
0
1955-
1956int-
1957okname(char *cp0)-
1958{-
1959 int c;-
1960 char *cp;-
1961-
1962 cp = cp0;-
1963 do {-
1964 c = (int)*cp;-
1965 if (c & 0200
c & 0200Description
TRUEnever evaluated
FALSEnever evaluated
)
0
1966 goto
never executed: goto bad;
bad;
never executed: goto bad;
0
1967 if (!
! ((*__ctype_b...int) _ISalpha)Description
TRUEnever evaluated
FALSEnever evaluated
0
1968 ((*__ctype_b_loc ())[(int) ((
! ((*__ctype_b...int) _ISalpha)Description
TRUEnever evaluated
FALSEnever evaluated
0
1969 c
! ((*__ctype_b...int) _ISalpha)Description
TRUEnever evaluated
FALSEnever evaluated
0
1970 ))] & (unsigned short int) _ISalpha)
! ((*__ctype_b...int) _ISalpha)Description
TRUEnever evaluated
FALSEnever evaluated
0
1971 && !
! ((*__ctype_b...int) _ISdigit)Description
TRUEnever evaluated
FALSEnever evaluated
0
1972 ((*__ctype_b_loc ())[(int) ((
! ((*__ctype_b...int) _ISdigit)Description
TRUEnever evaluated
FALSEnever evaluated
0
1973 (unsigned char)c
! ((*__ctype_b...int) _ISdigit)Description
TRUEnever evaluated
FALSEnever evaluated
0
1974 ))] & (unsigned short int) _ISdigit)
! ((*__ctype_b...int) _ISdigit)Description
TRUEnever evaluated
FALSEnever evaluated
0
1975 ) {-
1976 switch (c) {-
1977 case
never executed: case '\'':
'\'':
never executed: case '\'':
0
1978 case
never executed: case '"':
'"':
never executed: case '"':
0
1979 case
never executed: case '`':
'`':
never executed: case '`':
0
1980 case
never executed: case ' ':
' ':
never executed: case ' ':
0
1981 case
never executed: case '#':
'#':
never executed: case '#':
0
1982 goto
never executed: goto bad;
bad;
never executed: goto bad;
0
1983 default
never executed: default:
:
never executed: default:
0
1984 break;
never executed: break;
0
1985 }-
1986 }-
1987 }
never executed: end of block
while (*++
*++cpDescription
TRUEnever evaluated
FALSEnever evaluated
cp
*++cpDescription
TRUEnever evaluated
FALSEnever evaluated
);
0
1988 return
never executed: return (1);
(1);
never executed: return (1);
0
1989-
1990bad: fmprintf(-
1991 stderr-
1992 , "%s: invalid user name\n", cp0);-
1993 return
never executed: return (0);
(0);
never executed: return (0);
0
1994}-
1995-
1996BUF *-
1997allocbuf(BUF *bp, int fd, int blksize)-
1998{-
1999 size_t size;-
2000-
2001 struct stat stb;-
2002-
2003 if (fstat(fd, &stb) < 0
fstat(fd, &stb) < 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
2004 run_err("fstat: %s", strerror(-
2005 (*__errno_location ())-
2006 ));-
2007 return
never executed: return (0);
(0);
never executed: return (0);
0
2008 }-
2009 size = ((((stb.st_blksize)+((blksize)-1))/(blksize))*(blksize));-
2010 if (size == 0
size == 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
2011 size = blksize;
never executed: size = blksize;
0
2012-
2013-
2014-
2015 if (bp->cnt >= size
bp->cnt >= sizeDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2016 return
never executed: return (bp);
(bp);
never executed: return (bp);
0
2017 bp->buf = xrecallocarray(bp->buf, bp->cnt, size, 1);-
2018 bp->cnt = size;-
2019 return
never executed: return (bp);
(bp);
never executed: return (bp);
0
2020}-
2021-
2022void-
2023lostconn(int signo)-
2024{-
2025 if (!iamremote
!iamremoteDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2026 (
never executed: (void)write( 2 , "lost connection\n", 16);
void)write(
never executed: (void)write( 2 , "lost connection\n", 16);
0
2027 2
never executed: (void)write( 2 , "lost connection\n", 16);
0
2028 , "lost connection\n", 16);
never executed: (void)write( 2 , "lost connection\n", 16);
0
2029 if (signo
signoDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
2030 _exit(1);
never executed: _exit(1);
0
2031 else-
2032 exit(1);
never executed: exit(1);
0
2033}-
Switch to Source codePreprocessed file

Generated by Squish Coco 4.2.2