Line | Source | Count |
1 | | - |
2 | | - |
3 | | - |
4 | | - |
5 | | - |
6 | | - |
7 | | - |
8 | | - |
9 | | - |
10 | | - |
11 | | - |
12 | | - |
13 | | - |
14 | | - |
15 | | - |
16 | | - |
17 | | - |
18 | | - |
19 | | - |
20 | #include <config.h> | - |
21 | | - |
22 | #include "stdio-safer.h" | - |
23 | | - |
24 | #include <errno.h> | - |
25 | #include <unistd.h> | - |
26 | #include "unistd-safer.h" | - |
27 | | - |
28 | | - |
29 | | - |
30 | FILE * | - |
31 | fopen_safer (char const *file, char const *mode) | - |
32 | { | - |
33 | FILE *fp = fopen (file, mode); | - |
34 | | - |
35 | if (fp)TRUE | evaluated 3586 times by 14 testsEvaluated by:- b2sum
- comm
- csplit
- join
- md5sum
- pr
- sha1sum
- sha224sum
- sha256sum
- sha384sum
- sha512sum
- shred
- sort
- tee
| FALSE | evaluated 8 times by 2 tests |
| 8-3586 |
36 | { | - |
37 | int fd = fileno (fp); | - |
38 | | - |
39 | if (0 <= fd && fd <= STDERR_FILENO)TRUE | evaluated 3586 times by 14 testsEvaluated by:- b2sum
- comm
- csplit
- join
- md5sum
- pr
- sha1sum
- sha224sum
- sha256sum
- sha384sum
- sha512sum
- shred
- sort
- tee
| FALSE | never evaluated |
TRUE | never evaluated | FALSE | evaluated 3586 times by 14 testsEvaluated by:- b2sum
- comm
- csplit
- join
- md5sum
- pr
- sha1sum
- sha224sum
- sha256sum
- sha384sum
- sha512sum
- shred
- sort
- tee
|
| 0-3586 |
40 | { | - |
41 | int f = dup_safer (fd); | - |
42 | | - |
43 | if (f < 0)TRUE | never evaluated | FALSE | never evaluated |
| 0 |
44 | { | - |
45 | int e = errno; | - |
46 | fclose (fp); | - |
47 | errno = e; | - |
48 | return NULL; never executed: return ((void *)0) ; | 0 |
49 | } | - |
50 | | - |
51 | if (fclose (fp) != 0TRUE | never evaluated | FALSE | never evaluated |
| 0 |
52 | || ! (fp = fdopen (f, mode)))TRUE | never evaluated | FALSE | never evaluated |
| 0 |
53 | { | - |
54 | int e = errno; | - |
55 | close (f); | - |
56 | errno = e; | - |
57 | return NULL; never executed: return ((void *)0) ; | 0 |
58 | } | - |
59 | } never executed: end of block | 0 |
60 | }executed 3586 times by 14 tests: end of block Executed by:- b2sum
- comm
- csplit
- join
- md5sum
- pr
- sha1sum
- sha224sum
- sha256sum
- sha384sum
- sha512sum
- shred
- sort
- tee
| 3586 |
61 | | - |
62 | return fp;executed 3594 times by 14 tests: return fp; Executed by:- b2sum
- comm
- csplit
- join
- md5sum
- pr
- sha1sum
- sha224sum
- sha256sum
- sha384sum
- sha512sum
- shred
- sort
- tee
| 3594 |
63 | } | - |
| | |