apps/rehash.c:226: error: BUFFER_OVERRUN_L3
  Offset: [0, 4095] Size: [1, 4096] by call to `add_entry`.
Showing all 12 steps of the trace


apps/rehash.c:193:1: Array declaration
191.    * This can be -1 if bad filename, or an error count.
192.    */
193. > static int handle_symlink(const char *filename, const char *fullpath)
194.   {
195.       unsigned int hash = 0;

apps/rehash.c:226:12: Call
224.       linktarget[n] = 0;
225.   
226.       return add_entry(type, hash, linktarget, NULL, 0, id);
                  ^
227.   }
228.   

apps/rehash.c:124:1: Parameter `filename->strlen`
  122.    * Process an entry; return number of errors.
  123.    */
  124. > static int add_entry(enum Type type, unsigned int hash, const char *filename,
  125.                         const unsigned char *digest, int need_symlink,
  126.                         unsigned short old_id)

apps/rehash.c:171:24: Call
  169.           *ep = nilhentry;
  170.           ep->old_id = ~0;
  171.           ep->filename = OPENSSL_strdup(filename);
                                ^
  172.           if (bp->last_entry)
  173.               bp->last_entry->next = ep;

crypto/o_str.c:15:1: <Offset trace>
13.   #include "internal/cryptlib.h"
14.   
15. > char *CRYPTO_strdup(const char *str, const char* file, int line)
16.   {
17.       char *ret;

crypto/o_str.c:15:1: Parameter `str->strlen`
    13.   #include "internal/cryptlib.h"
    14.   
    15. > char *CRYPTO_strdup(const char *str, const char* file, int line)
    16.   {
    17.       char *ret;

crypto/o_str.c:15:1: <Length trace>
13.   #include "internal/cryptlib.h"
14.   
15. > char *CRYPTO_strdup(const char *str, const char* file, int line)
16.   {
17.       char *ret;

crypto/o_str.c:15:1: Parameter `str->strlen`
    13.   #include "internal/cryptlib.h"
    14.   
    15. > char *CRYPTO_strdup(const char *str, const char* file, int line)
    16.   {
    17.       char *ret;

crypto/o_str.c:21:11: Call
    19.       if (str == NULL)
    20.           return NULL;
    21.       ret = CRYPTO_malloc(strlen(str) + 1, file, line);
                    ^
    22.       if (ret != NULL)
    23.           strcpy(ret, str);

crypto/mem.c:201:9: Assignment
      199.   
      200.       if (num == 0)
      201.           return NULL;
                     ^
      202.   
      203.       FAILTEST();

crypto/o_str.c:21:5: Assignment
    19.       if (str == NULL)
    20.           return NULL;
    21.       ret = CRYPTO_malloc(strlen(str) + 1, file, line);
              ^
    22.       if (ret != NULL)
    23.           strcpy(ret, str);

crypto/o_str.c:23:9: Array access: Offset: [0, 4095] Size: [1, 4096] by call to `add_entry` 
    21.       ret = CRYPTO_malloc(strlen(str) + 1, file, line);
    22.       if (ret != NULL)
    23.           strcpy(ret, str);
                  ^
    24.       return ret;
    25.   }
