OpenCoverage

renameat2.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/coreutils/src/gnulib/lib/renameat2.c
Switch to Source codePreprocessed file
LineSourceCount
1-
2-
3-
4-
5-
6-
7-
8static int-
9errno_fail (int e)-
10{-
11 -
12 (*__errno_location ()) -
13 = e;-
14 return
never executed: return -1;
-1;
never executed: return -1;
0
15}-
16-
17-
18-
19-
20int-
21renameat2 (int fd1, char const *src, int fd2, char const *dst,-
22 unsigned int flags)-
23{-
24 int ret_val = -1;-
25 int err = -
26 22-
27 ;-
28-
29-
30 ret_val = syscall (-
31 316-
32 , fd1, src, fd2, dst, flags);-
33 err = -
34 (*__errno_location ())-
35 ;-
36 if (! (ret_val < 0
ret_val < 0Description
TRUEevaluated 8513 times by 2 tests
Evaluated by:
  • mv
  • shred
FALSEevaluated 168 times by 4 tests
Evaluated by:
  • cp
  • ginstall
  • mv
  • shred
&& (err ==
err == 22Description
TRUEevaluated 4 times by 1 test
Evaluated by:
  • mv
FALSEevaluated 8509 times by 2 tests
Evaluated by:
  • mv
  • shred
4-8513
37 22
err == 22Description
TRUEevaluated 4 times by 1 test
Evaluated by:
  • mv
FALSEevaluated 8509 times by 2 tests
Evaluated by:
  • mv
  • shred
4-8509
38 || err ==
err == 38Description
TRUEnever evaluated
FALSEevaluated 8509 times by 2 tests
Evaluated by:
  • mv
  • shred
0-8509
39 38
err == 38Description
TRUEnever evaluated
FALSEevaluated 8509 times by 2 tests
Evaluated by:
  • mv
  • shred
0-8509
40 || err ==
err == 95Description
TRUEnever evaluated
FALSEevaluated 8509 times by 2 tests
Evaluated by:
  • mv
  • shred
0-8509
41 95
err == 95Description
TRUEnever evaluated
FALSEevaluated 8509 times by 2 tests
Evaluated by:
  • mv
  • shred
0-8509
42 )))-
43 return
executed 8677 times by 4 tests: return ret_val;
Executed by:
  • cp
  • ginstall
  • mv
  • shred
ret_val;
executed 8677 times by 4 tests: return ret_val;
Executed by:
  • cp
  • ginstall
  • mv
  • shred
8677
44-
45-
46 {-
47 size_t src_len;-
48 size_t dst_len;-
49 char *src_temp = (char *) src;-
50 char *dst_temp = (char *) dst;-
51 -
52 _Bool -
53 src_slash;-
54 -
55 _Bool -
56 dst_slash;-
57 int rename_errno = -
58 20-
59 ;-
60 struct stat src_st;-
61 struct stat dst_st;-
62 -
63 _Bool -
64 dst_found_nonexistent = -
65 0-
66 ;-
67-
68 if (flags != 0
flags != 0Description
TRUEevaluated 4 times by 1 test
Evaluated by:
  • mv
FALSEnever evaluated
)
0-4
69 {-
70-
71 if (flags & ~
flags & ~ (1 << 0)Description
TRUEnever evaluated
FALSEevaluated 4 times by 1 test
Evaluated by:
  • mv
0-4
72 (1 << 0)
flags & ~ (1 << 0)Description
TRUEnever evaluated
FALSEevaluated 4 times by 1 test
Evaluated by:
  • mv
0-4
73 )-
74 return
never executed: return errno_fail ( 95 );
errno_fail (
never executed: return errno_fail ( 95 );
0
75 95
never executed: return errno_fail ( 95 );
0
76 );
never executed: return errno_fail ( 95 );
0
77 else-
78 {-
79-
80-
81 if (lstatat (fd2, dst, &dst_st) == 0
lstatat (fd2, ... &dst_st) == 0Description
TRUEnever evaluated
FALSEevaluated 4 times by 1 test
Evaluated by:
  • mv
||
0-4
82 (*
(*__errno_location ()) == 75Description
TRUEnever evaluated
FALSEevaluated 4 times by 1 test
Evaluated by:
  • mv
__errno_location ())
(*__errno_location ()) == 75Description
TRUEnever evaluated
FALSEevaluated 4 times by 1 test
Evaluated by:
  • mv
0-4
83 ==
(*__errno_location ()) == 75Description
TRUEnever evaluated
FALSEevaluated 4 times by 1 test
Evaluated by:
  • mv
0-4
84 75
(*__errno_location ()) == 75Description
TRUEnever evaluated
FALSEevaluated 4 times by 1 test
Evaluated by:
  • mv
0-4
85 )-
86 return
never executed: return errno_fail ( 17 );
errno_fail (
never executed: return errno_fail ( 17 );
0
87 17
never executed: return errno_fail ( 17 );
0
88 );
never executed: return errno_fail ( 17 );
0
89 if (-
90 (*
(*__errno_location ()) != 2Description
TRUEnever evaluated
FALSEevaluated 4 times by 1 test
Evaluated by:
  • mv
__errno_location ())
(*__errno_location ()) != 2Description
TRUEnever evaluated
FALSEevaluated 4 times by 1 test
Evaluated by:
  • mv
0-4
91 !=
(*__errno_location ()) != 2Description
TRUEnever evaluated
FALSEevaluated 4 times by 1 test
Evaluated by:
  • mv
0-4
92 2
(*__errno_location ()) != 2Description
TRUEnever evaluated
FALSEevaluated 4 times by 1 test
Evaluated by:
  • mv
0-4
93 )-
94 return
never executed: return -1;
-1;
never executed: return -1;
0
95 dst_found_nonexistent = -
96 1-
97 ;-
98 }
executed 4 times by 1 test: end of block
Executed by:
  • mv
4
99 }-
100-
101-
102 src_len = strlen (src);-
103 dst_len = strlen (dst);-
104 if (!src_len
!src_lenDescription
TRUEnever evaluated
FALSEevaluated 4 times by 1 test
Evaluated by:
  • mv
|| !dst_len
!dst_lenDescription
TRUEnever evaluated
FALSEevaluated 4 times by 1 test
Evaluated by:
  • mv
)
0-4
105 return
never executed: return renameat (fd1, src, fd2, dst);
renameat (fd1, src, fd2, dst);
never executed: return renameat (fd1, src, fd2, dst);
0
106-
107 src_slash = src[src_len - 1] == '/';-
108 dst_slash = dst[dst_len - 1] == '/';-
109 if (!src_slash
!src_slashDescription
TRUEevaluated 4 times by 1 test
Evaluated by:
  • mv
FALSEnever evaluated
&& !dst_slash
!dst_slashDescription
TRUEevaluated 4 times by 1 test
Evaluated by:
  • mv
FALSEnever evaluated
)
0-4
110 return
executed 4 times by 1 test: return renameat (fd1, src, fd2, dst);
Executed by:
  • mv
renameat (fd1, src, fd2, dst);
executed 4 times by 1 test: return renameat (fd1, src, fd2, dst);
Executed by:
  • mv
4
111-
112-
113-
114-
115-
116 if (lstatat (fd1, src, &src_st)
lstatat (fd1, src, &src_st)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
117 return
never executed: return -1;
-1;
never executed: return -1;
0
118 if (dst_found_nonexistent
dst_found_nonexistentDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
119 {-
120 if (!
! (((( src_st.... == (0040000))Description
TRUEnever evaluated
FALSEnever evaluated
0
121 ((((
! (((( src_st.... == (0040000))Description
TRUEnever evaluated
FALSEnever evaluated
0
122 src_st.st_mode
! (((( src_st.... == (0040000))Description
TRUEnever evaluated
FALSEnever evaluated
0
123 )) & 0170000) == (0040000))
! (((( src_st.... == (0040000))Description
TRUEnever evaluated
FALSEnever evaluated
0
124 )-
125 return
never executed: return errno_fail ( 2 );
errno_fail (
never executed: return errno_fail ( 2 );
0
126 2
never executed: return errno_fail ( 2 );
0
127 );
never executed: return errno_fail ( 2 );
0
128 }
never executed: end of block
0
129 else if (lstatat (fd2, dst, &dst_st)
lstatat (fd2, dst, &dst_st)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
130 {-
131 if (-
132 (*
(*__errno_location ()) != 2Description
TRUEnever evaluated
FALSEnever evaluated
__errno_location ())
(*__errno_location ()) != 2Description
TRUEnever evaluated
FALSEnever evaluated
0
133 !=
(*__errno_location ()) != 2Description
TRUEnever evaluated
FALSEnever evaluated
0
134 2
(*__errno_location ()) != 2Description
TRUEnever evaluated
FALSEnever evaluated
0
135 || !
! (((( src_st.... == (0040000))Description
TRUEnever evaluated
FALSEnever evaluated
0
136 ((((
! (((( src_st.... == (0040000))Description
TRUEnever evaluated
FALSEnever evaluated
0
137 src_st.st_mode
! (((( src_st.... == (0040000))Description
TRUEnever evaluated
FALSEnever evaluated
0
138 )) & 0170000) == (0040000))
! (((( src_st.... == (0040000))Description
TRUEnever evaluated
FALSEnever evaluated
0
139 )-
140 return
never executed: return -1;
-1;
never executed: return -1;
0
141 }
never executed: end of block
0
142 else if (!
! (((( dst_st.... == (0040000))Description
TRUEnever evaluated
FALSEnever evaluated
0
143 ((((
! (((( dst_st.... == (0040000))Description
TRUEnever evaluated
FALSEnever evaluated
0
144 dst_st.st_mode
! (((( dst_st.... == (0040000))Description
TRUEnever evaluated
FALSEnever evaluated
0
145 )) & 0170000) == (0040000))
! (((( dst_st.... == (0040000))Description
TRUEnever evaluated
FALSEnever evaluated
0
146 )-
147 return
never executed: return errno_fail ( 20 );
errno_fail (
never executed: return errno_fail ( 20 );
0
148 20
never executed: return errno_fail ( 20 );
0
149 );
never executed: return errno_fail ( 20 );
0
150 else if (!
! (((( src_st.... == (0040000))Description
TRUEnever evaluated
FALSEnever evaluated
0
151 ((((
! (((( src_st.... == (0040000))Description
TRUEnever evaluated
FALSEnever evaluated
0
152 src_st.st_mode
! (((( src_st.... == (0040000))Description
TRUEnever evaluated
FALSEnever evaluated
0
153 )) & 0170000) == (0040000))
! (((( src_st.... == (0040000))Description
TRUEnever evaluated
FALSEnever evaluated
0
154 )-
155 return
never executed: return errno_fail ( 21 );
errno_fail (
never executed: return errno_fail ( 21 );
0
156 21
never executed: return errno_fail ( 21 );
0
157 );
never executed: return errno_fail ( 21 );
0
158 ret_val = renameat (fd1, src_temp, fd2, dst_temp);-
159 rename_errno = -
160 (*__errno_location ())-
161 ;-
162 goto
never executed: goto out;
out;
never executed: goto out;
0
163 out:-
164 if (src_temp != src
src_temp != srcDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
165 free (src_temp);
never executed: free (src_temp);
0
166 if (dst_temp != dst
dst_temp != dstDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
167 free (dst_temp);
never executed: free (dst_temp);
0
168 -
169 (*__errno_location ()) -
170 = rename_errno;-
171 return
never executed: return ret_val;
ret_val;
never executed: return ret_val;
0
172 }-
173}-
Switch to Source codePreprocessed file

Generated by Squish Coco 4.1.2