apps/rehash.c:231: 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:200:1: Array declaration
198.    * This can be -1 if bad filename, or an error count.
199.    */
200. > static int handle_symlink(const char *filename, const char *fullpath)
201.   {
202.       unsigned int hash = 0;

apps/rehash.c:231:12: Call
229.       linktarget[n] = 0;
230.   
231.       return add_entry(type, hash, linktarget, NULL, 0, id);
                  ^
232.   }
233.   

apps/rehash.c:132:1: Parameter `filename->strlen`
  130.    * Process an entry; return number of errors.
  131.    */
  132. > static int add_entry(enum Type type, unsigned int hash, const char *filename,
  133.                         const unsigned char *digest, int need_symlink,
  134.                         unsigned short old_id)

apps/rehash.c:178:24: Call
  176.           *ep = nilhentry;
  177.           ep->old_id = ~0;
  178.           ep->filename = OPENSSL_strdup(filename);
                                ^
  179.           if (bp->last_entry)
  180.               bp->last_entry->next = ep;

crypto/o_str.c:121:1: <Offset trace>
119.   }
120.   
121. > char *CRYPTO_strdup(const char *str, const char* file, int line)
122.   {
123.       char *ret;

crypto/o_str.c:121:1: Parameter `str->strlen`
    119.   }
    120.   
    121. > char *CRYPTO_strdup(const char *str, const char* file, int line)
    122.   {
    123.       char *ret;

crypto/o_str.c:121:1: <Length trace>
119.   }
120.   
121. > char *CRYPTO_strdup(const char *str, const char* file, int line)
122.   {
123.       char *ret;

crypto/o_str.c:121:1: Parameter `str->strlen`
    119.   }
    120.   
    121. > char *CRYPTO_strdup(const char *str, const char* file, int line)
    122.   {
    123.       char *ret;

crypto/o_str.c:127:11: Call
    125.       if (str == NULL)
    126.           return NULL;
    127.       ret = CRYPTO_malloc(strlen(str) + 1, file, line);
                     ^
    128.       if (ret != NULL)
    129.           strcpy(ret, str);

crypto/mem.c:125:9: Assignment
      123.   
      124.       if (num <= 0)
      125.           return NULL;
                     ^
      126.   
      127.       allow_customize = 0;

crypto/o_str.c:127:5: Assignment
    125.       if (str == NULL)
    126.           return NULL;
    127.       ret = CRYPTO_malloc(strlen(str) + 1, file, line);
               ^
    128.       if (ret != NULL)
    129.           strcpy(ret, str);

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