crypto/conf/conf_lib.c:361: error: NULL_DEREFERENCE
  pointer `ret` last assigned on line 357 could be null and is dereferenced at line 361, column 5.
Showing all 4 steps of the trace


crypto/conf/conf_lib.c:355:1: start of procedure OPENSSL_INIT_new()
353.    * OpenSSL function pointers before the library is initialized.
354.    */
355. > OPENSSL_INIT_SETTINGS *OPENSSL_INIT_new(void)
356.   {
357.       OPENSSL_INIT_SETTINGS *ret = malloc(sizeof(*ret));

crypto/conf/conf_lib.c:357:5: 
355.   OPENSSL_INIT_SETTINGS *OPENSSL_INIT_new(void)
356.   {
357. >     OPENSSL_INIT_SETTINGS *ret = malloc(sizeof(*ret));
358.   
359.       if (ret != NULL)

crypto/conf/conf_lib.c:359:9: Taking false branch
357.       OPENSSL_INIT_SETTINGS *ret = malloc(sizeof(*ret));
358.   
359.       if (ret != NULL)
               ^
360.           memset(ret, 0, sizeof(*ret));
361.       ret->flags = DEFAULT_CONF_MFLAGS;

crypto/conf/conf_lib.c:361:5: 
359.       if (ret != NULL)
360.           memset(ret, 0, sizeof(*ret));
361. >     ret->flags = DEFAULT_CONF_MFLAGS;
362.   
363.       return ret;

OPENSSL_INIT_SETTINGS *OPENSSL_INIT_new(void)
{
    OPENSSL_INIT_SETTINGS *ret = malloc(sizeof(*ret));
    if (ret != NULL)
        memset(ret, 0, sizeof(*ret));
    ret->flags = DEFAULT_CONF_MFLAGS;
    return ret;
}
['OPENSSL_INIT_SETTINGS *OPENSSL_INIT_new(void)\n{\n    OPENSSL_INIT_SETTINGS *ret = malloc(sizeof(*ret));\n    if (ret != NULL)\n        memset(ret, 0, sizeof(*ret));\n    ret->flags = DEFAULT_CONF_MFLAGS;\n    return ret;\n}']