| Absolute File Name: | /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/compat/recallocarray.c |
| Switch to Source code | Preprocessed file |
| Line | Source | Count | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | - | |||||||||||||
| 2 | - | |||||||||||||
| 3 | - | |||||||||||||
| 4 | - | |||||||||||||
| 5 | - | |||||||||||||
| 6 | - | |||||||||||||
| 7 | - | |||||||||||||
| 8 | - | |||||||||||||
| 9 | void * | - | ||||||||||||
| 10 | recallocarray(void *ptr, size_t oldnmemb, size_t newnmemb, size_t size) | - | ||||||||||||
| 11 | { | - | ||||||||||||
| 12 | size_t oldsize, newsize; | - | ||||||||||||
| 13 | void *newptr; | - | ||||||||||||
| 14 | - | |||||||||||||
| 15 | if (ptr ==
| 1446-1958 | ||||||||||||
| 16 | ((void *)0)
| 1446-1958 | ||||||||||||
| 17 | ) | - | ||||||||||||
| 18 | return executed 1958 times by 10 tests: calloc(newnmemb, size);return calloc(newnmemb, size);Executed by:
executed 1958 times by 10 tests: return calloc(newnmemb, size);Executed by:
| 1958 | ||||||||||||
| 19 | - | |||||||||||||
| 20 | if ((newnmemb >= ((size_t)1 << (sizeof(size_t) * 4))
| 0-1446 | ||||||||||||
| 21 | newnmemb > 0
| 0 | ||||||||||||
| 22 | (
| 0 | ||||||||||||
| 23 | / newnmemb < size
| 0 | ||||||||||||
| 24 | - | |||||||||||||
| 25 | (*__errno_location ()) | - | ||||||||||||
| 26 | = | - | ||||||||||||
| 27 | 12 | - | ||||||||||||
| 28 | ; | - | ||||||||||||
| 29 | return never executed: return ((void *)0) ;never executed: return ((void *)0) ; | 0 | ||||||||||||
| 30 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||||||||
| 31 | ; never executed: return ((void *)0) ; | 0 | ||||||||||||
| 32 | } | - | ||||||||||||
| 33 | newsize = newnmemb * size; | - | ||||||||||||
| 34 | - | |||||||||||||
| 35 | if ((oldnmemb >= ((size_t)1 << (sizeof(size_t) * 4))
| 0-1446 | ||||||||||||
| 36 | oldnmemb > 0
| 0 | ||||||||||||
| 37 | (
| 0 | ||||||||||||
| 38 | / oldnmemb < size
| 0 | ||||||||||||
| 39 | - | |||||||||||||
| 40 | (*__errno_location ()) | - | ||||||||||||
| 41 | = | - | ||||||||||||
| 42 | 22 | - | ||||||||||||
| 43 | ; | - | ||||||||||||
| 44 | return never executed: return ((void *)0) ;never executed: return ((void *)0) ; | 0 | ||||||||||||
| 45 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||||||||
| 46 | ; never executed: return ((void *)0) ; | 0 | ||||||||||||
| 47 | } | - | ||||||||||||
| 48 | oldsize = oldnmemb * size; | - | ||||||||||||
| 49 | - | |||||||||||||
| 50 | - | |||||||||||||
| 51 | - | |||||||||||||
| 52 | - | |||||||||||||
| 53 | - | |||||||||||||
| 54 | if (newsize <= oldsize
| 0-1446 | ||||||||||||
| 55 | size_t d = oldsize - newsize; | - | ||||||||||||
| 56 | - | |||||||||||||
| 57 | if (d < oldsize / 2
| 0 | ||||||||||||
| 58 | memset((char *)ptr + newsize, 0, d); | - | ||||||||||||
| 59 | return never executed: ptr;return ptr;never executed: return ptr; | 0 | ||||||||||||
| 60 | } | - | ||||||||||||
| 61 | } never executed: end of block | 0 | ||||||||||||
| 62 | - | |||||||||||||
| 63 | newptr = malloc(newsize); | - | ||||||||||||
| 64 | if (newptr ==
| 0-1446 | ||||||||||||
| 65 | ((void *)0)
| 0-1446 | ||||||||||||
| 66 | ) | - | ||||||||||||
| 67 | return never executed: return ((void *)0) ;never executed: return ((void *)0) ; | 0 | ||||||||||||
| 68 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||||||||
| 69 | ; never executed: return ((void *)0) ; | 0 | ||||||||||||
| 70 | - | |||||||||||||
| 71 | if (newsize > oldsize
| 0-1446 | ||||||||||||
| 72 | memcpy(newptr, ptr, oldsize); | - | ||||||||||||
| 73 | memset((char *)newptr + oldsize, 0, newsize - oldsize); | - | ||||||||||||
| 74 | } executed 1446 times by 9 tests: elseend of blockExecuted by:
| 1446 | ||||||||||||
| 75 | memcpy(newptr, ptr, newsize); never executed: memcpy(newptr, ptr, newsize); | 0 | ||||||||||||
| 76 | - | |||||||||||||
| 77 | explicit_bzero(ptr, oldsize); | - | ||||||||||||
| 78 | free(ptr); | - | ||||||||||||
| 79 | - | |||||||||||||
| 80 | return executed 1446 times by 9 tests: newptr;return newptr;Executed by:
executed 1446 times by 9 tests: return newptr;Executed by:
| 1446 | ||||||||||||
| 81 | } | - | ||||||||||||
| Switch to Source code | Preprocessed file |