OpenCoverage

freopen-safer.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/coreutils/src/gnulib/lib/freopen-safer.c
Switch to Source codePreprocessed file
LineSourceCount
1-
2-
3-
4static -
5 _Bool-
6-
7protect_fd (int fd)-
8{-
9 int value = open ("/dev/null", -
10 00-
11 );-
12 if (value != fd
value != fdDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
13 {-
14 if (0 <= value
0 <= valueDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
15 {-
16 close (value);-
17 -
18 (*__errno_location ()) -
19 = -
20 9-
21 ;-
22 }
never executed: end of block
0
23 return
never executed: return 0 ;
never executed: return 0 ;
0
24 0
never executed: return 0 ;
0
25 ;
never executed: return 0 ;
0
26 }-
27 return
never executed: return 1 ;
never executed: return 1 ;
0
28 1
never executed: return 1 ;
0
29 ;
never executed: return 1 ;
0
30}-
31-
32-
33-
34-
35-
36-
37-
38FILE *-
39freopen_safer (char const *name, char const *mode, FILE *f)-
40{-
41-
42-
43-
44-
45-
46-
47 -
48 _Bool -
49 protect_in = -
50 0-
51 ;-
52 -
53 _Bool -
54 protect_out = -
55 0-
56 ;-
57 -
58 _Bool -
59 protect_err = -
60 0-
61 ;-
62 int saved_errno;-
63-
64 switch (fileno (f))-
65 {-
66 default
never executed: default:
:
never executed: default:
0
67 if (dup2 (
dup2 ( 2 , 2 ) != 2Description
TRUEnever evaluated
FALSEnever evaluated
0
68 2
dup2 ( 2 , 2 ) != 2Description
TRUEnever evaluated
FALSEnever evaluated
0
69 ,
dup2 ( 2 , 2 ) != 2Description
TRUEnever evaluated
FALSEnever evaluated
0
70 2
dup2 ( 2 , 2 ) != 2Description
TRUEnever evaluated
FALSEnever evaluated
0
71 ) !=
dup2 ( 2 , 2 ) != 2Description
TRUEnever evaluated
FALSEnever evaluated
0
72 2
dup2 ( 2 , 2 ) != 2Description
TRUEnever evaluated
FALSEnever evaluated
0
73 )-
74 protect_err =
never executed: protect_err = 1 ;
0
75 1
never executed: protect_err = 1 ;
0
76 ;
never executed: protect_err = 1 ;
0
77 ((void) 0);-
78 case
never executed: case 2 :
never executed: case 2 :
code before this statement never executed: case 2 :
0
79 2
never executed: case 2 :
code before this statement never executed: case 2 :
0
80 :
never executed: case 2 :
code before this statement never executed: case 2 :
0
81 if (dup2 (
dup2 ( 1 , 1 ) != 1Description
TRUEnever evaluated
FALSEnever evaluated
0
82 1
dup2 ( 1 , 1 ) != 1Description
TRUEnever evaluated
FALSEnever evaluated
0
83 ,
dup2 ( 1 , 1 ) != 1Description
TRUEnever evaluated
FALSEnever evaluated
0
84 1
dup2 ( 1 , 1 ) != 1Description
TRUEnever evaluated
FALSEnever evaluated
0
85 ) !=
dup2 ( 1 , 1 ) != 1Description
TRUEnever evaluated
FALSEnever evaluated
0
86 1
dup2 ( 1 , 1 ) != 1Description
TRUEnever evaluated
FALSEnever evaluated
0
87 )-
88 protect_out =
never executed: protect_out = 1 ;
0
89 1
never executed: protect_out = 1 ;
0
90 ;
never executed: protect_out = 1 ;
0
91 ((void) 0);-
92 case
never executed: case 1 :
never executed: case 1 :
code before this statement never executed: case 1 :
0
93 1
never executed: case 1 :
code before this statement never executed: case 1 :
0
94 :
never executed: case 1 :
code before this statement never executed: case 1 :
0
95 if (dup2 (
dup2 ( 0 , 0 ) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
96 0
dup2 ( 0 , 0 ) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
97 ,
dup2 ( 0 , 0 ) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
98 0
dup2 ( 0 , 0 ) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
99 ) !=
dup2 ( 0 , 0 ) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
100 0
dup2 ( 0 , 0 ) != 0Description
TRUEnever evaluated
FALSEnever evaluated
0
101 )-
102 protect_in =
never executed: protect_in = 1 ;
0
103 1
never executed: protect_in = 1 ;
0
104 ;
never executed: protect_in = 1 ;
0
105 ((void) 0);-
106 case
executed 181 times by 5 tests: case 0 :
Executed by:
  • dircolors
  • du
  • shuf
  • tsort
  • uniq
code before this statement never executed: case 0 :
executed 181 times by 5 tests: case 0 :
Executed by:
  • dircolors
  • du
  • shuf
  • tsort
  • uniq
code before this statement never executed: case 0 :
executed 181 times by 5 tests: case 0 :
Executed by:
  • dircolors
  • du
  • shuf
  • tsort
  • uniq
0-181
107 0
executed 181 times by 5 tests: case 0 :
Executed by:
  • dircolors
  • du
  • shuf
  • tsort
  • uniq
code before this statement never executed: case 0 :
0-181
108 :
executed 181 times by 5 tests: case 0 :
Executed by:
  • dircolors
  • du
  • shuf
  • tsort
  • uniq
code before this statement never executed: case 0 :
0-181
109-
110 break;
executed 181 times by 5 tests: break;
Executed by:
  • dircolors
  • du
  • shuf
  • tsort
  • uniq
181
111 }-
112 if (protect_in
protect_inDescription
TRUEnever evaluated
FALSEevaluated 181 times by 5 tests
Evaluated by:
  • dircolors
  • du
  • shuf
  • tsort
  • uniq
&& !protect_fd (
!protect_fd ( 0 )Description
TRUEnever evaluated
FALSEnever evaluated
0-181
113 0
!protect_fd ( 0 )Description
TRUEnever evaluated
FALSEnever evaluated
0
114 )
!protect_fd ( 0 )Description
TRUEnever evaluated
FALSEnever evaluated
)
0
115 f =
never executed: f = ((void *)0) ;
0
116 ((void *)0)
never executed: f = ((void *)0) ;
0
117 ;
never executed: f = ((void *)0) ;
0
118 else if (protect_out
protect_outDescription
TRUEnever evaluated
FALSEevaluated 181 times by 5 tests
Evaluated by:
  • dircolors
  • du
  • shuf
  • tsort
  • uniq
&& !protect_fd (
!protect_fd ( 1 )Description
TRUEnever evaluated
FALSEnever evaluated
0-181
119 1
!protect_fd ( 1 )Description
TRUEnever evaluated
FALSEnever evaluated
0
120 )
!protect_fd ( 1 )Description
TRUEnever evaluated
FALSEnever evaluated
)
0
121 f =
never executed: f = ((void *)0) ;
0
122 ((void *)0)
never executed: f = ((void *)0) ;
0
123 ;
never executed: f = ((void *)0) ;
0
124 else if (protect_err
protect_errDescription
TRUEnever evaluated
FALSEevaluated 181 times by 5 tests
Evaluated by:
  • dircolors
  • du
  • shuf
  • tsort
  • uniq
&& !protect_fd (
!protect_fd ( 2 )Description
TRUEnever evaluated
FALSEnever evaluated
0-181
125 2
!protect_fd ( 2 )Description
TRUEnever evaluated
FALSEnever evaluated
0
126 )
!protect_fd ( 2 )Description
TRUEnever evaluated
FALSEnever evaluated
)
0
127 f =
never executed: f = ((void *)0) ;
0
128 ((void *)0)
never executed: f = ((void *)0) ;
0
129 ;
never executed: f = ((void *)0) ;
0
130 else-
131 f =
executed 181 times by 5 tests: f = rpl_freopen (name, mode, f);
Executed by:
  • dircolors
  • du
  • shuf
  • tsort
  • uniq
181
132 rpl_freopen
executed 181 times by 5 tests: f = rpl_freopen (name, mode, f);
Executed by:
  • dircolors
  • du
  • shuf
  • tsort
  • uniq
181
133 (name, mode, f);
executed 181 times by 5 tests: f = rpl_freopen (name, mode, f);
Executed by:
  • dircolors
  • du
  • shuf
  • tsort
  • uniq
181
134 saved_errno = -
135 (*__errno_location ())-
136 ;-
137 if (protect_err
protect_errDescription
TRUEnever evaluated
FALSEevaluated 181 times by 5 tests
Evaluated by:
  • dircolors
  • du
  • shuf
  • tsort
  • uniq
)
0-181
138 close (
never executed: close ( 2 );
0
139 2
never executed: close ( 2 );
0
140 );
never executed: close ( 2 );
0
141 if (protect_out
protect_outDescription
TRUEnever evaluated
FALSEevaluated 181 times by 5 tests
Evaluated by:
  • dircolors
  • du
  • shuf
  • tsort
  • uniq
)
0-181
142 close (
never executed: close ( 1 );
0
143 1
never executed: close ( 1 );
0
144 );
never executed: close ( 1 );
0
145 if (protect_in
protect_inDescription
TRUEnever evaluated
FALSEevaluated 181 times by 5 tests
Evaluated by:
  • dircolors
  • du
  • shuf
  • tsort
  • uniq
)
0-181
146 close (
never executed: close ( 0 );
0
147 0
never executed: close ( 0 );
0
148 );
never executed: close ( 0 );
0
149 if (!f
!fDescription
TRUEevaluated 2 times by 2 tests
Evaluated by:
  • du
  • shuf
FALSEevaluated 179 times by 5 tests
Evaluated by:
  • dircolors
  • du
  • shuf
  • tsort
  • uniq
)
2-179
150 -
151 (*
executed 2 times by 2 tests: (*__errno_location ()) = saved_errno;
Executed by:
  • du
  • shuf
__errno_location ())
executed 2 times by 2 tests: (*__errno_location ()) = saved_errno;
Executed by:
  • du
  • shuf
2
152 = saved_errno;
executed 2 times by 2 tests: (*__errno_location ()) = saved_errno;
Executed by:
  • du
  • shuf
2
153 return
executed 181 times by 5 tests: return f;
Executed by:
  • dircolors
  • du
  • shuf
  • tsort
  • uniq
f;
executed 181 times by 5 tests: return f;
Executed by:
  • dircolors
  • du
  • shuf
  • tsort
  • uniq
181
154}-
Switch to Source codePreprocessed file

Generated by Squish Coco 4.1.2