OpenCoverage

sig.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/bash/src/sig.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-
21-
22-
23extern void initialize_siglist ();-
24-
25-
26-
27-
28-
29-
30volatile sig_atomic_t interrupt_state = 0;-
31-
32-
33volatile sig_atomic_t sigwinch_received = 0;-
34-
35-
36volatile sig_atomic_t sigterm_received = 0;-
37-
38-
39volatile sig_atomic_t terminating_signal = 0;-
40-
41-
42-
43sigjmp_buf top_level;-
44-
45-
46-
47sigset_t top_level_mask;-
48-
49-
50-
51int interrupt_immediately = 0;-
52-
53-
54int terminate_immediately = 0;-
55-
56-
57static SigHandler *old_winch = (SigHandler *)-
58 ((__sighandler_t) 0)-
59 ;-
60-
61-
62static void initialize_shell_signals (void);-
63-
64void-
65initialize_signals (reinit)-
66 int reinit;-
67{-
68 initialize_shell_signals ();-
69 initialize_job_signals ();-
70-
71-
72-
73-
74}
executed 5448 times by 1 test: end of block
Executed by:
  • Self test
5448
75-
76-
77-
78-
79struct termsig {-
80 int signum;-
81 SigHandler *orig_handler;-
82 int orig_flags;-
83};-
84-
85-
86-
87-
88-
89-
90static struct termsig terminating_signals[] = {-
91-
92{ -
93 1-
94 , (SigHandler *)-
95 ((__sighandler_t) 0)-
96 , 0 },-
97-
98-
99-
100{ -
101 2-
102 , (SigHandler *)-
103 ((__sighandler_t) 0)-
104 , 0 },-
105-
106-
107-
108{ -
109 4-
110 , (SigHandler *)-
111 ((__sighandler_t) 0)-
112 , 0 },-
113-
114-
115-
116{ -
117 5-
118 , (SigHandler *)-
119 ((__sighandler_t) 0)-
120 , 0 },-
121-
122-
123-
124{ -
125 6-
126 , (SigHandler *)-
127 ((__sighandler_t) 0)-
128 , 0 },-
129{ -
130 8-
131 , (SigHandler *)-
132 ((__sighandler_t) 0)-
133 , 0 },-
134-
135-
136-
137{ -
138 7-
139 , (SigHandler *)-
140 ((__sighandler_t) 0)-
141 , 0 },-
142-
143-
144-
145{ -
146 11-
147 , (SigHandler *)-
148 ((__sighandler_t) 0)-
149 , 0 },-
150-
151-
152-
153{ -
154 31-
155 , (SigHandler *)-
156 ((__sighandler_t) 0)-
157 , 0 },-
158-
159-
160-
161{ -
162 13-
163 , (SigHandler *)-
164 ((__sighandler_t) 0)-
165 , 0 },-
166-
167-
168-
169{ -
170 14-
171 , (SigHandler *)-
172 ((__sighandler_t) 0)-
173 , 0 },-
174-
175-
176-
177{ -
178 15-
179 , (SigHandler *)-
180 ((__sighandler_t) 0)-
181 , 0 },-
182-
183-
184-
185{ -
186 24-
187 , (SigHandler *)-
188 ((__sighandler_t) 0)-
189 , 0 },-
190-
191-
192-
193{ -
194 25-
195 , (SigHandler *)-
196 ((__sighandler_t) 0)-
197 , 0 },-
198-
199-
200-
201{ -
202 26-
203 , (SigHandler *)-
204 ((__sighandler_t) 0)-
205 , 0 },-
206{ -
207 10-
208 , (SigHandler *)-
209 ((__sighandler_t) 0)-
210 , 0 },-
211-
212-
213-
214{ -
215 12-
216 , (SigHandler *)-
217 ((__sighandler_t) 0)-
218 , 0 },-
219-
220};-
221-
222-
223-
224-
225-
226-
227-
228static int termsigs_initialized = 0;-
229-
230-
231-
232-
233-
234void-
235initialize_terminating_signals ()-
236{-
237 register int i;-
238-
239 struct sigaction act, oact;-
240-
241-
242 if (termsigs_initialized
termsigs_initializedDescription
TRUEevaluated 39 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 81 times by 1 test
Evaluated by:
  • Self test
)
39-81
243 return;
executed 39 times by 1 test: return;
Executed by:
  • Self test
39
244-
245-
246-
247-
248-
249-
250 act.-
251 __sigaction_handler.sa_handler -
252 = termsig_sighandler;-
253 act.sa_flags = 0;-
254 sigemptyset (&act.sa_mask);-
255 sigemptyset (&oact.sa_mask);-
256 for (i = 0; i < (sizeof (terminating_signals) / sizeof (struct termsig))
i < (sizeof (t...ruct termsig))Description
TRUEevaluated 1377 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 81 times by 1 test
Evaluated by:
  • Self test
; i++)
81-1377
257 sigaddset (&act.sa_mask, (terminating_signals[i].signum));
executed 1377 times by 1 test: sigaddset (&act.sa_mask, (terminating_signals[i].signum));
Executed by:
  • Self test
1377
258 for (i = 0; i < (sizeof (terminating_signals) / sizeof (struct termsig))
i < (sizeof (t...ruct termsig))Description
TRUEevaluated 1377 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 81 times by 1 test
Evaluated by:
  • Self test
; i++)
81-1377
259 {-
260-
261 if (signal_is_trapped ((terminating_signals[i].signum))
signal_is_trap...ls[i].signum))Description
TRUEevaluated 8 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 1369 times by 1 test
Evaluated by:
  • Self test
)
8-1369
262 continue;
executed 8 times by 1 test: continue;
Executed by:
  • Self test
8
263-
264 sigaction ((terminating_signals[i].signum), &act, &oact);-
265 (terminating_signals[i].orig_handler) = oact.-
266 __sigaction_handler.sa_handler-
267 ;-
268 (terminating_signals[i].orig_flags) = oact.sa_flags;-
269-
270-
271-
272 if (interactive_shell == 0
interactive_shell == 0Description
TRUEevaluated 1335 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 34 times by 1 test
Evaluated by:
  • Self test
&& (
(terminating_s...ghandler_t) 1)Description
TRUEevaluated 81 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 1254 times by 1 test
Evaluated by:
  • Self test
terminating_signals[i].orig_handler) ==
(terminating_s...ghandler_t) 1)Description
TRUEevaluated 81 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 1254 times by 1 test
Evaluated by:
  • Self test
34-1335
273 ((__sighandler_t) 1)
(terminating_s...ghandler_t) 1)Description
TRUEevaluated 81 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 1254 times by 1 test
Evaluated by:
  • Self test
81-1254
274 )-
275 {-
276 sigaction ((terminating_signals[i].signum), &oact, &act);-
277 set_signal_hard_ignored ((terminating_signals[i].signum));-
278 }
executed 81 times by 1 test: end of block
Executed by:
  • Self test
81
279-
280 if ((
(terminating_s....signum) == 27Description
TRUEnever evaluated
FALSEevaluated 1369 times by 1 test
Evaluated by:
  • Self test
terminating_signals[i].signum) ==
(terminating_s....signum) == 27Description
TRUEnever evaluated
FALSEevaluated 1369 times by 1 test
Evaluated by:
  • Self test
0-1369
281 27
(terminating_s....signum) == 27Description
TRUEnever evaluated
FALSEevaluated 1369 times by 1 test
Evaluated by:
  • Self test
0-1369
282 && (
(terminating_s...ghandler_t) 0)Description
TRUEnever evaluated
FALSEnever evaluated
terminating_signals[i].orig_handler) !=
(terminating_s...ghandler_t) 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
283 ((__sighandler_t) 0)
(terminating_s...ghandler_t) 0)Description
TRUEnever evaluated
FALSEnever evaluated
0
284 && (
(terminating_s...ghandler_t) 1)Description
TRUEnever evaluated
FALSEnever evaluated
terminating_signals[i].orig_handler) !=
(terminating_s...ghandler_t) 1)Description
TRUEnever evaluated
FALSEnever evaluated
0
285 ((__sighandler_t) 1)
(terminating_s...ghandler_t) 1)Description
TRUEnever evaluated
FALSEnever evaluated
0
286 )-
287 sigaction ((terminating_signals[i].signum), &oact, (struct sigaction *)
never executed: sigaction ((terminating_signals[i].signum), &oact, (struct sigaction *) ((void *)0) );
0
288 ((void *)0)
never executed: sigaction ((terminating_signals[i].signum), &oact, (struct sigaction *) ((void *)0) );
0
289 );
never executed: sigaction ((terminating_signals[i].signum), &oact, (struct sigaction *) ((void *)0) );
0
290-
291 }
executed 1369 times by 1 test: end of block
Executed by:
  • Self test
1369
292 termsigs_initialized = 1;-
293}
executed 81 times by 1 test: end of block
Executed by:
  • Self test
81
294-
295static void-
296initialize_shell_signals ()-
297{-
298 if (interactive
interactiveDescription
TRUEevaluated 2 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 5446 times by 1 test
Evaluated by:
  • Self test
)
2-5446
299 initialize_terminating_signals ();
executed 2 times by 1 test: initialize_terminating_signals ();
Executed by:
  • Self test
2
300-
301-
302-
303-
304 sigemptyset (&top_level_mask);-
305 sigprocmask (-
306 0-
307 , (sigset_t *)-
308 ((void *)0)-
309 , &top_level_mask);-
310-
311 sigdelset (&top_level_mask, -
312 17-
313 );-
314-
315-
316-
317-
318 set_signal_handler (-
319 3-
320 , -
321 ((__sighandler_t) 1)-
322 );-
323-
324 if (interactive
interactiveDescription
TRUEevaluated 2 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 5446 times by 1 test
Evaluated by:
  • Self test
)
2-5446
325 {-
326 set_signal_handler (-
327 2-
328 , sigint_sighandler);-
329 get_original_signal (-
330 15-
331 );-
332 if (signal_is_hard_ignored (
signal_is_hard...ed ( 15 ) == 0Description
TRUEevaluated 2 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
0-2
333 15
signal_is_hard...ed ( 15 ) == 0Description
TRUEevaluated 2 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
0-2
334 ) == 0
signal_is_hard...ed ( 15 ) == 0Description
TRUEevaluated 2 times by 1 test
Evaluated by:
  • Self test
FALSEnever evaluated
)
0-2
335 set_signal_handler (
executed 2 times by 1 test: set_signal_handler ( 15 , sigterm_sighandler);
Executed by:
  • Self test
2
336 15
executed 2 times by 1 test: set_signal_handler ( 15 , sigterm_sighandler);
Executed by:
  • Self test
2
337 , sigterm_sighandler);
executed 2 times by 1 test: set_signal_handler ( 15 , sigterm_sighandler);
Executed by:
  • Self test
2
338 set_sigwinch_handler ();-
339 }
executed 2 times by 1 test: end of block
Executed by:
  • Self test
2
340}
executed 5448 times by 1 test: end of block
Executed by:
  • Self test
5448
341-
342void-
343reset_terminating_signals ()-
344{-
345 register int i;-
346-
347 struct sigaction act;-
348-
349-
350 if (termsigs_initialized == 0
termsigs_initialized == 0Description
TRUEevaluated 2531 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 26 times by 1 test
Evaluated by:
  • Self test
)
26-2531
351 return;
executed 2531 times by 1 test: return;
Executed by:
  • Self test
2531
352-
353-
354 act.sa_flags = 0;-
355 sigemptyset (&act.sa_mask);-
356 for (i = 0; i < (sizeof (terminating_signals) / sizeof (struct termsig))
i < (sizeof (t...ruct termsig))Description
TRUEevaluated 442 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 26 times by 1 test
Evaluated by:
  • Self test
; i++)
26-442
357 {-
358-
359-
360 if (signal_is_trapped ((terminating_signals[i].signum))
signal_is_trap...ls[i].signum))Description
TRUEevaluated 29 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 413 times by 1 test
Evaluated by:
  • Self test
|| signal_is_special ((terminating_signals[i].signum))
signal_is_spec...ls[i].signum))Description
TRUEevaluated 19 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 394 times by 1 test
Evaluated by:
  • Self test
)
19-413
361 continue;
executed 48 times by 1 test: continue;
Executed by:
  • Self test
48
362-
363 act.-
364 __sigaction_handler.sa_handler -
365 = (terminating_signals[i].orig_handler);-
366 act.sa_flags = (terminating_signals[i].orig_flags);-
367 sigaction ((terminating_signals[i].signum), &act, (struct sigaction *) -
368 ((void *)0)-
369 );-
370 }
executed 394 times by 1 test: end of block
Executed by:
  • Self test
394
371 termsigs_initialized = 0;-
372}
executed 26 times by 1 test: end of block
Executed by:
  • Self test
26
373-
374-
375-
376-
377-
378-
379void-
380top_level_cleanup ()-
381{-
382-
383 while (parse_and_execute_level
parse_and_execute_levelDescription
TRUEnever evaluated
FALSEevaluated 388 times by 1 test
Evaluated by:
  • Self test
)
0-388
384 parse_and_execute_cleanup ();
never executed: parse_and_execute_cleanup ();
0
385-
386-
387 unlink_fifo_list ();-
388-
389-
390 run_unwind_protects ();-
391 loop_level = continuing = breaking = funcnest = 0;-
392 executing_list = comsub_ignore_return = return_catch_flag = wait_intr_flag = 0;-
393}
executed 388 times by 1 test: end of block
Executed by:
  • Self test
388
394-
395-
396void-
397throw_to_top_level ()-
398{-
399 int print_newline = 0;-
400-
401 if (interrupt_state
interrupt_stateDescription
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • Self test
)
0-1
402 {-
403 if (last_command_exit_value < 128
last_command_exit_value < 128Description
TRUEnever evaluated
FALSEnever evaluated
)
0
404 last_command_exit_value = 128 +
never executed: last_command_exit_value = 128 + 2 ;
0
405 2
never executed: last_command_exit_value = 128 + 2 ;
0
406 ;
never executed: last_command_exit_value = 128 + 2 ;
0
407 print_newline = 1;-
408 interrupt_state--;-
409 }
never executed: end of block
0
410-
411 if (interrupt_state
interrupt_stateDescription
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • Self test
)
0-1
412 return;
never executed: return;
0
413-
414 last_command_exit_signal = (
(last_command_...t_value > 128)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • Self test
last_command_exit_value > 128)
(last_command_...t_value > 128)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • Self test
?
0-1
415 (last_command_exit_value - 128) : 0;-
416 last_command_exit_value |= 128;-
417-
418-
419 if (signal_is_trapped (
signal_is_trapped ( 2 )Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • Self test
0-1
420 2
signal_is_trapped ( 2 )Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • Self test
0-1
421 )
signal_is_trapped ( 2 )Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • Self test
)
0-1
422 run_interrupt_trap (1);
never executed: run_interrupt_trap (1);
0
423-
424-
425 while (parse_and_execute_level
parse_and_execute_levelDescription
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • Self test
)
0-1
426 parse_and_execute_cleanup ();
never executed: parse_and_execute_cleanup ();
0
427-
428 if (running_trap > 0
running_trap > 0Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • Self test
)
0-1
429 run_trap_cleanup (running_trap - 1);
never executed: run_trap_cleanup (running_trap - 1);
0
430-
431-
432 give_terminal_to (shell_pgrp, 0);-
433-
434-
435-
436-
437-
438 sigprocmask (-
439 2-
440 , &top_level_mask, (sigset_t *)-
441 ((void *)0)-
442 );-
443-
444-
445 reset_parser ();-
446-
447-
448 if (interactive
interactiveDescription
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • Self test
)
0-1
449 bashline_reset ();
never executed: bashline_reset ();
0
450-
451-
452-
453 unlink_fifo_list ();-
454-
455-
456 run_unwind_protects ();-
457 loop_level = continuing = breaking = funcnest = 0;-
458 executing_list = comsub_ignore_return = return_catch_flag = wait_intr_flag = 0;-
459-
460 if (interactive
interactiveDescription
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • Self test
&& print_newline
print_newlineDescription
TRUEnever evaluated
FALSEnever evaluated
)
0-1
461 {-
462 fflush (-
463 stdout-
464 );-
465 fprintf (-
466 stderr-
467 , "\n");-
468 fflush (-
469 stderr-
470 );-
471 }
never executed: end of block
0
472-
473-
474 if (interactive
interactiveDescription
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • Self test
|| (interactive_shell
interactive_shellDescription
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • Self test
&& !shell_initialized
!shell_initializedDescription
TRUEnever evaluated
FALSEnever evaluated
) ||
0-1
475 (print_newline
print_newlineDescription
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • Self test
&& signal_is_trapped (
signal_is_trapped ( 2 )Description
TRUEnever evaluated
FALSEnever evaluated
0-1
476 2
signal_is_trapped ( 2 )Description
TRUEnever evaluated
FALSEnever evaluated
0
477 )
signal_is_trapped ( 2 )Description
TRUEnever evaluated
FALSEnever evaluated
))
0
478 jump_to_top_level (2);
never executed: jump_to_top_level (2);
0
479 else-
480 jump_to_top_level (3);
executed 1 time by 1 test: jump_to_top_level (3);
Executed by:
  • Self test
1
481}-
482-
483-
484void-
485jump_to_top_level (value)-
486 int value;-
487{-
488 siglongjmp((top_level), (value));-
489}
never executed: end of block
0
490-
491void-
492termsig_sighandler (sig)-
493 int sig;-
494{-
495-
496-
497 if (-
498-
499 sig !=
sig != 1Description
TRUEnever evaluated
FALSEnever evaluated
0
500 1
sig != 1Description
TRUEnever evaluated
FALSEnever evaluated
0
501 &&-
502-
503-
504 sig !=
sig != 2Description
TRUEnever evaluated
FALSEnever evaluated
0
505 2
sig != 2Description
TRUEnever evaluated
FALSEnever evaluated
0
506 &&-
507-
508-
509-
510-
511-
512 sig !=
sig != 13Description
TRUEnever evaluated
FALSEnever evaluated
0
513 13
sig != 13Description
TRUEnever evaluated
FALSEnever evaluated
0
514 &&-
515-
516-
517 sig !=
sig != 14Description
TRUEnever evaluated
FALSEnever evaluated
0
518 14
sig != 14Description
TRUEnever evaluated
FALSEnever evaluated
0
519 &&-
520-
521-
522 sig !=
sig != 15Description
TRUEnever evaluated
FALSEnever evaluated
0
523 15
sig != 15Description
TRUEnever evaluated
FALSEnever evaluated
0
524 &&-
525-
526-
527 sig !=
sig != 24Description
TRUEnever evaluated
FALSEnever evaluated
0
528 24
sig != 24Description
TRUEnever evaluated
FALSEnever evaluated
0
529 &&-
530-
531-
532 sig !=
sig != 25Description
TRUEnever evaluated
FALSEnever evaluated
0
533 25
sig != 25Description
TRUEnever evaluated
FALSEnever evaluated
0
534 &&-
535-
536-
537 sig !=
sig != 26Description
TRUEnever evaluated
FALSEnever evaluated
0
538 26
sig != 26Description
TRUEnever evaluated
FALSEnever evaluated
0
539 &&-
540-
541-
542-
543-
544-
545 sig !=
sig != 10Description
TRUEnever evaluated
FALSEnever evaluated
0
546 10
sig != 10Description
TRUEnever evaluated
FALSEnever evaluated
0
547 &&-
548-
549-
550 sig !=
sig != 12Description
TRUEnever evaluated
FALSEnever evaluated
0
551 12
sig != 12Description
TRUEnever evaluated
FALSEnever evaluated
0
552 &&-
553-
554 sig == terminating_signal
sig == terminating_signalDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
555 terminate_immediately = 1;
never executed: terminate_immediately = 1;
0
556-
557 terminating_signal = sig;-
558-
559-
560 if (terminate_immediately
terminate_immediatelyDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
561 {-
562-
563-
564-
565 if (interactive_shell == 0
interactive_shell == 0Description
TRUEnever evaluated
FALSEnever evaluated
|| interactive == 0
interactive == 0Description
TRUEnever evaluated
FALSEnever evaluated
|| (sig !=
sig != 1Description
TRUEnever evaluated
FALSEnever evaluated
0
566 1
sig != 1Description
TRUEnever evaluated
FALSEnever evaluated
0
567 && sig !=
sig != 15Description
TRUEnever evaluated
FALSEnever evaluated
0
568 15
sig != 15Description
TRUEnever evaluated
FALSEnever evaluated
0
569 ) || no_line_editing
no_line_editingDescription
TRUEnever evaluated
FALSEnever evaluated
|| ((
((rl_readline_...000008)) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
rl_readline_state & (0x0000008)) == 0)
((rl_readline_...000008)) == 0)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
570-
571 history_lines_this_session = 0;
never executed: history_lines_this_session = 0;
0
572-
573 terminate_immediately = 0;-
574 termsig_handler (sig);-
575 }
never executed: end of block
0
576-
577-
578-
579-
580-
581-
582-
583 if ((
(rl_readline_s...& (0x0008000))Description
TRUEnever evaluated
FALSEnever evaluated
rl_readline_state & (0x0008000))
(rl_readline_s...& (0x0008000))Description
TRUEnever evaluated
FALSEnever evaluated
|| (
(rl_readline_s...& (0x0000004))Description
TRUEnever evaluated
FALSEnever evaluated
rl_readline_state & (0x0000004))
(rl_readline_s...& (0x0000004))Description
TRUEnever evaluated
FALSEnever evaluated
)
0
584 bashline_set_event_hook ();
never executed: bashline_set_event_hook ();
0
585-
586-
587 return;
never executed: return;
0
588}-
589-
590void-
591termsig_handler (sig)-
592 int sig;-
593{-
594 static int handling_termsig = 0;-
595-
596-
597-
598-
599 if (handling_termsig
handling_termsigDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
600 return;
never executed: return;
0
601 handling_termsig = 1;-
602 terminating_signal = 0;-
603-
604-
605 if (sig ==
sig == 2Description
TRUEnever evaluated
FALSEnever evaluated
0
606 2
sig == 2Description
TRUEnever evaluated
FALSEnever evaluated
0
607 && signal_is_trapped (
signal_is_trapped ( 2 )Description
TRUEnever evaluated
FALSEnever evaluated
0
608 2
signal_is_trapped ( 2 )Description
TRUEnever evaluated
FALSEnever evaluated
0
609 )
signal_is_trapped ( 2 )Description
TRUEnever evaluated
FALSEnever evaluated
)
0
610 run_interrupt_trap (0);
never executed: run_interrupt_trap (0);
0
611-
612-
613-
614-
615-
616-
617 if (interactive_shell
interactive_shellDescription
TRUEnever evaluated
FALSEnever evaluated
&& interactive
interactiveDescription
TRUEnever evaluated
FALSEnever evaluated
&& (sig ==
sig == 1Description
TRUEnever evaluated
FALSEnever evaluated
0
618 1
sig == 1Description
TRUEnever evaluated
FALSEnever evaluated
0
619 || sig ==
sig == 15Description
TRUEnever evaluated
FALSEnever evaluated
0
620 15
sig == 15Description
TRUEnever evaluated
FALSEnever evaluated
0
621 ) && remember_on_history
remember_on_historyDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
622 maybe_save_shell_history ();
never executed: maybe_save_shell_history ();
0
623-
624-
625 if (this_shell_builtin == read_builtin
this_shell_bui...= read_builtinDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
626 read_tty_cleanup ();
never executed: read_tty_cleanup ();
0
627-
628-
629 if (sig ==
sig == 1Description
TRUEnever evaluated
FALSEnever evaluated
0
630 1
sig == 1Description
TRUEnever evaluated
FALSEnever evaluated
0
631 && (interactive
interactiveDescription
TRUEnever evaluated
FALSEnever evaluated
|| (
(subshell_envi...& (0x04|0x20))Description
TRUEnever evaluated
FALSEnever evaluated
subshell_environment & (0x04|0x20))
(subshell_envi...& (0x04|0x20))Description
TRUEnever evaluated
FALSEnever evaluated
))
0
632 hangup_all_jobs ();
never executed: hangup_all_jobs ();
0
633 if ((
(subshell_envi...04|0x20)) == 0Description
TRUEnever evaluated
FALSEnever evaluated
subshell_environment & (0x04|0x20)) == 0
(subshell_envi...04|0x20)) == 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
634 end_job_control ();
never executed: end_job_control ();
0
635-
636-
637-
638 unlink_fifo_list ();-
639-
640-
641-
642 loop_level = continuing = breaking = funcnest = 0;-
643 executing_list = comsub_ignore_return = return_catch_flag = wait_intr_flag = 0;-
644-
645 run_exit_trap ();-
646 set_signal_handler (sig, -
647 ((__sighandler_t) 0)-
648 );-
649 kill (getpid (), sig);-
650-
651 exit (1);
never executed: exit (1);
0
652}-
653-
654-
655void-
656sigint_sighandler (sig)-
657 int sig;-
658{-
659-
660-
661-
662-
663-
664-
665 if (interrupt_state == 0
interrupt_state == 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
666 interrupt_state++;
never executed: interrupt_state++;
0
667-
668-
669-
670-
671 if (wait_intr_flag
wait_intr_flagDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
672 {-
673 last_command_exit_value = 128 + sig;-
674 wait_signal_received = sig;-
675 return;
never executed: return;
0
676 }-
677-
678 if (interrupt_immediately
interrupt_immediatelyDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
679 {-
680 interrupt_immediately = 0;-
681 last_command_exit_value = 128 + sig;-
682 throw_to_top_level ();-
683 }
never executed: end of block
0
684-
685-
686-
687-
688 else if ((
(rl_readline_s...& (0x0008000))Description
TRUEnever evaluated
FALSEnever evaluated
rl_readline_state & (0x0008000))
(rl_readline_s...& (0x0008000))Description
TRUEnever evaluated
FALSEnever evaluated
)
0
689 bashline_set_event_hook ();
never executed: bashline_set_event_hook ();
0
690-
691-
692 return;
never executed: return;
0
693}-
694-
695-
696void-
697sigwinch_sighandler (sig)-
698 int sig;-
699{-
700-
701-
702-
703 sigwinch_received = 1;-
704 return;
never executed: return;
0
705}-
706-
707-
708void-
709set_sigwinch_handler ()-
710{-
711-
712 old_winch = set_signal_handler (-
713 28-
714 , sigwinch_sighandler);-
715-
716}
executed 2 times by 1 test: end of block
Executed by:
  • Self test
2
717-
718void-
719unset_sigwinch_handler ()-
720{-
721-
722 set_signal_handler (-
723 28-
724 , old_winch);-
725-
726}
never executed: end of block
0
727-
728void-
729sigterm_sighandler (sig)-
730 int sig;-
731{-
732 sigterm_received = 1;-
733 return;
never executed: return;
0
734}-
735SigHandler *-
736set_signal_handler (sig, handler)-
737 int sig;-
738 SigHandler *handler;-
739{-
740 struct sigaction act, oact;-
741-
742 act.-
743 __sigaction_handler.sa_handler -
744 = handler;-
745 act.sa_flags = 0;-
746-
747-
748-
749-
750-
751 if (sig ==
sig == 17Description
TRUEevaluated 3960800 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 6696639 times by 1 test
Evaluated by:
  • Self test
3960800-6696639
752 17
sig == 17Description
TRUEevaluated 3960800 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 6696639 times by 1 test
Evaluated by:
  • Self test
3960800-6696639
753 )-
754 act.sa_flags |=
executed 3960800 times by 1 test: act.sa_flags |= 0x10000000 ;
Executed by:
  • Self test
3960800
755 0x10000000
executed 3960800 times by 1 test: act.sa_flags |= 0x10000000 ;
Executed by:
  • Self test
3960800
756 ;
executed 3960800 times by 1 test: act.sa_flags |= 0x10000000 ;
Executed by:
  • Self test
3960800
757-
758-
759-
760-
761-
762 if (sig ==
sig == 28Description
TRUEevaluated 24 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 10657415 times by 1 test
Evaluated by:
  • Self test
24-10657415
763 28
sig == 28Description
TRUEevaluated 24 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 10657415 times by 1 test
Evaluated by:
  • Self test
24-10657415
764 )-
765 act.sa_flags |=
executed 24 times by 1 test: act.sa_flags |= 0x10000000 ;
Executed by:
  • Self test
24
766 0x10000000
executed 24 times by 1 test: act.sa_flags |= 0x10000000 ;
Executed by:
  • Self test
24
767 ;
executed 24 times by 1 test: act.sa_flags |= 0x10000000 ;
Executed by:
  • Self test
24
768-
769-
770-
771 if (sig ==
sig == 15Description
TRUEevaluated 67 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 10657372 times by 1 test
Evaluated by:
  • Self test
67-10657372
772 15
sig == 15Description
TRUEevaluated 67 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 10657372 times by 1 test
Evaluated by:
  • Self test
67-10657372
773 && handler == sigterm_sighandler
handler == sigterm_sighandlerDescription
TRUEevaluated 2 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 65 times by 1 test
Evaluated by:
  • Self test
)
2-65
774 act.sa_flags |=
executed 2 times by 1 test: act.sa_flags |= 0x10000000 ;
Executed by:
  • Self test
2
775 0x10000000
executed 2 times by 1 test: act.sa_flags |= 0x10000000 ;
Executed by:
  • Self test
2
776 ;
executed 2 times by 1 test: act.sa_flags |= 0x10000000 ;
Executed by:
  • Self test
2
777-
778 sigemptyset (&act.sa_mask);-
779 sigemptyset (&oact.sa_mask);-
780 if (sigaction (sig, &act, &oact) == 0
sigaction (sig...t, &oact) == 0Description
TRUEevaluated 10657351 times by 1 test
Evaluated by:
  • Self test
FALSEevaluated 88 times by 1 test
Evaluated by:
  • Self test
)
88-10657351
781 return
executed 10657351 times by 1 test: return (oact. __sigaction_handler.sa_handler );
Executed by:
  • Self test
(oact.
executed 10657351 times by 1 test: return (oact. __sigaction_handler.sa_handler );
Executed by:
  • Self test
10657351
782 __sigaction_handler.sa_handler
executed 10657351 times by 1 test: return (oact. __sigaction_handler.sa_handler );
Executed by:
  • Self test
10657351
783 );
executed 10657351 times by 1 test: return (oact. __sigaction_handler.sa_handler );
Executed by:
  • Self test
10657351
784 else-
785 return
executed 88 times by 1 test: return ( ((__sighandler_t) 0) );
Executed by:
  • Self test
(
executed 88 times by 1 test: return ( ((__sighandler_t) 0) );
Executed by:
  • Self test
88
786 ((__sighandler_t) 0)
executed 88 times by 1 test: return ( ((__sighandler_t) 0) );
Executed by:
  • Self test
88
787 );
executed 88 times by 1 test: return ( ((__sighandler_t) 0) );
Executed by:
  • Self test
88
788}-
Switch to Source codePreprocessed file

Generated by Squish Coco 4.1.2