If ssl_dh setting isn't set and ssl-parameters.dat isn't found or there's
some error reading it, memory is leaked for every config request. This
eventually results in config process dying due to reaching vsz_limit.
*/
/* check moved to correct place from here */
*value = NULL;
+ i_stream_unref(&is);
return TRUE;
} else if (is->stream_errno != 0) {
*error_r = t_strdup(i_stream_get_error(is));
+ i_stream_unref(&is);
return FALSE;
}
} else if (is->stream_errno == ENOENT) {
/* check for empty ssl_dh elsewhere */
*value = NULL;
+ i_stream_unref(&is);
return TRUE;
} else {
*error_r = "ssl enabled, but ssl_dh not set";
+ i_stream_unref(&is);
return FALSE;
}
i_stream_unref(&is);