OpenCoverage

mailstat.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/bash/src/lib/sh/mailstat.c
Switch to Source codePreprocessed file
LineSourceCount
1-
2-
3-
4-
5-
6-
7-
8int-
9mailstat(path, st)-
10 const char *path;-
11 struct stat *st;-
12{-
13 static struct stat st_new_last, st_ret_last;-
14 struct stat st_ret, st_tmp;-
15 DIR *dd;-
16 struct dirent *fn;-
17 char dir[-
18 4096 -
19 * 2], file[-
20 4096 -
21 * 2];-
22 int i, l;-
23 time_t atime, mtime;-
24-
25 atime = mtime = 0;-
26-
27-
28 if ((
(i = stat(path, st)) != 0Description
TRUEnever evaluated
FALSEnever evaluated
i = stat(path, st)) != 0
(i = stat(path, st)) != 0Description
TRUEnever evaluated
FALSEnever evaluated
||
0
29 ((((
(((( st->st_mo...0040000)) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
30 st->st_mode
(((( st->st_mo...0040000)) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
31 )) & 0170000) == (0040000))
(((( st->st_mo...0040000)) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
32 == 0
(((( st->st_mo...0040000)) == 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
33 return
never executed: return i;
i;
never executed: return i;
0
34-
35 if (strlen(path) > sizeof(dir) - 5
strlen(path) > sizeof(dir) - 5Description
TRUEnever evaluated
FALSEnever evaluated
)
0
36 {-
37-
38 -
39 (*__errno_location ()) -
40 = -
41 36-
42 ;-
43-
44-
45-
46 return
never executed: return -1;
-1;
never executed: return -1;
0
47 }-
48-
49 st_ret = *st;-
50 st_ret.st_nlink = 1;-
51 st_ret.st_size = 0;-
52-
53 st_ret.st_blocks = 0;-
54-
55-
56-
57 st_ret.st_mode &= ~-
58 0040000-
59 ;-
60 st_ret.st_mode |= -
61 0100000-
62 ;-
63-
64-
65 sprintf(dir, "%s/cur", path);-
66 if (stat(dir, &st_tmp)
stat(dir, &st_tmp)Description
TRUEnever evaluated
FALSEnever evaluated
||
0
67 ((((
(((( st_tmp.st...0040000)) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
68 st_tmp.st_mode
(((( st_tmp.st...0040000)) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
69 )) & 0170000) == (0040000))
(((( st_tmp.st...0040000)) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
70 == 0
(((( st_tmp.st...0040000)) == 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
71 return
never executed: return 0;
0;
never executed: return 0;
0
72 st_ret.-
73 st_atim.tv_sec -
74 = st_tmp.-
75 st_atim.tv_sec-
76 ;-
77-
78-
79 sprintf(dir, "%s/tmp", path);-
80 if (stat(dir, &st_tmp)
stat(dir, &st_tmp)Description
TRUEnever evaluated
FALSEnever evaluated
||
0
81 ((((
(((( st_tmp.st...0040000)) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
82 st_tmp.st_mode
(((( st_tmp.st...0040000)) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
83 )) & 0170000) == (0040000))
(((( st_tmp.st...0040000)) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
84 == 0
(((( st_tmp.st...0040000)) == 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
85 return
never executed: return 0;
0;
never executed: return 0;
0
86 st_ret.-
87 st_mtim.tv_sec -
88 = st_tmp.-
89 st_mtim.tv_sec-
90 ;-
91-
92-
93 sprintf(dir, "%s/new", path);-
94 if (stat(dir, &st_tmp)
stat(dir, &st_tmp)Description
TRUEnever evaluated
FALSEnever evaluated
||
0
95 ((((
(((( st_tmp.st...0040000)) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
96 st_tmp.st_mode
(((( st_tmp.st...0040000)) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
97 )) & 0170000) == (0040000))
(((( st_tmp.st...0040000)) == 0Description
TRUEnever evaluated
FALSEnever evaluated
0
98 == 0
(((( st_tmp.st...0040000)) == 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
99 return
never executed: return 0;
0;
never executed: return 0;
0
100 st_ret.-
101 st_mtim.tv_sec -
102 = st_tmp.-
103 st_mtim.tv_sec-
104 ;-
105-
106-
107 if (st_tmp.st_dev == st_new_last.st_dev
st_tmp.st_dev ...ew_last.st_devDescription
TRUEnever evaluated
FALSEnever evaluated
&&
0
108 st_tmp.st_ino == st_new_last.st_ino
st_tmp.st_ino ...ew_last.st_inoDescription
TRUEnever evaluated
FALSEnever evaluated
&&
0
109 st_tmp.
st_tmp. st_ati...st_atim.tv_secDescription
TRUEnever evaluated
FALSEnever evaluated
0
110 st_atim.tv_sec
st_tmp. st_ati...st_atim.tv_secDescription
TRUEnever evaluated
FALSEnever evaluated
0
111 == st_new_last.
st_tmp. st_ati...st_atim.tv_secDescription
TRUEnever evaluated
FALSEnever evaluated
0
112 st_atim.tv_sec
st_tmp. st_ati...st_atim.tv_secDescription
TRUEnever evaluated
FALSEnever evaluated
0
113 &&-
114 st_tmp.
st_tmp. st_mti...st_mtim.tv_secDescription
TRUEnever evaluated
FALSEnever evaluated
0
115 st_mtim.tv_sec
st_tmp. st_mti...st_mtim.tv_secDescription
TRUEnever evaluated
FALSEnever evaluated
0
116 == st_new_last.
st_tmp. st_mti...st_mtim.tv_secDescription
TRUEnever evaluated
FALSEnever evaluated
0
117 st_mtim.tv_sec
st_tmp. st_mti...st_mtim.tv_secDescription
TRUEnever evaluated
FALSEnever evaluated
0
118 )-
119 {-
120 *st = st_ret_last;-
121 return
never executed: return 0;
0;
never executed: return 0;
0
122 }-
123 st_new_last = st_tmp;-
124-
125-
126 for (i = 0; i < 2
i < 2Description
TRUEnever evaluated
FALSEnever evaluated
; i++)
0
127 {-
128 sprintf(dir, "%s/%s", path, i ? "cur" : "new");-
129 sprintf(file, "%s/", dir);-
130 l = strlen(file);-
131 if ((
(dd = opendir(...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
dd = opendir(dir)) ==
(dd = opendir(...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
132 ((void *)0)
(dd = opendir(...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
133 )-
134 return
never executed: return 0;
0;
never executed: return 0;
0
135 while ((
(fn = readdir(...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
fn = readdir(dd)) !=
(fn = readdir(...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
136 ((void *)0)
(fn = readdir(...!= ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
137 )-
138 {-
139 if (fn->d_name[0] == '.'
fn->d_name[0] == '.'Description
TRUEnever evaluated
FALSEnever evaluated
|| strlen(fn->d_name) + l >= sizeof(file)
strlen(fn->d_n...= sizeof(file)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
140 continue;
never executed: continue;
0
141 strcpy(file + l, fn->d_name);-
142 if (stat(file, &st_tmp) != 0
stat(file, &st_tmp) != 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
143 continue;
never executed: continue;
0
144 st_ret.st_size += st_tmp.st_size;-
145-
146 st_ret.st_blocks++;-
147-
148-
149-
150 if (st_tmp.
st_tmp. st_ati...st_mtim.tv_secDescription
TRUEnever evaluated
FALSEnever evaluated
0
151 st_atim.tv_sec
st_tmp. st_ati...st_mtim.tv_secDescription
TRUEnever evaluated
FALSEnever evaluated
0
152 != st_tmp.
st_tmp. st_ati...st_mtim.tv_secDescription
TRUEnever evaluated
FALSEnever evaluated
0
153 st_mtim.tv_sec
st_tmp. st_ati...st_mtim.tv_secDescription
TRUEnever evaluated
FALSEnever evaluated
0
154 && st_tmp.
st_tmp. st_atim.tv_sec > atimeDescription
TRUEnever evaluated
FALSEnever evaluated
0
155 st_atim.tv_sec
st_tmp. st_atim.tv_sec > atimeDescription
TRUEnever evaluated
FALSEnever evaluated
0
156 > atime
st_tmp. st_atim.tv_sec > atimeDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
157 atime = st_tmp.
never executed: atime = st_tmp. st_atim.tv_sec ;
0
158 st_atim.tv_sec
never executed: atime = st_tmp. st_atim.tv_sec ;
0
159 ;
never executed: atime = st_tmp. st_atim.tv_sec ;
0
160 if (st_tmp.
st_tmp. st_mtim.tv_sec > mtimeDescription
TRUEnever evaluated
FALSEnever evaluated
0
161 st_mtim.tv_sec
st_tmp. st_mtim.tv_sec > mtimeDescription
TRUEnever evaluated
FALSEnever evaluated
0
162 > mtime
st_tmp. st_mtim.tv_sec > mtimeDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
163 mtime = st_tmp.
never executed: mtime = st_tmp. st_mtim.tv_sec ;
0
164 st_mtim.tv_sec
never executed: mtime = st_tmp. st_mtim.tv_sec ;
0
165 ;
never executed: mtime = st_tmp. st_mtim.tv_sec ;
0
166 }
never executed: end of block
0
167 closedir(dd);-
168 }
never executed: end of block
0
169-
170-
171 st_ret.-
172 st_atim.tv_sec -
173 = atime;-
174 if (mtime
mtimeDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
175 st_ret.
never executed: st_ret. st_mtim.tv_sec = mtime;
0
176 st_mtim.tv_sec
never executed: st_ret. st_mtim.tv_sec = mtime;
0
177 = mtime;
never executed: st_ret. st_mtim.tv_sec = mtime;
0
178-
179 *st = st_ret_last = st_ret;-
180 return
never executed: return 0;
0;
never executed: return 0;
0
181}-
Switch to Source codePreprocessed file

Generated by Squish Coco 4.1.2