The OpenSSL wiki has moved to https://github.com/openssl/openssl/wiki. Information on this page is no longer edited and may be out-of-date.
Difference between revisions of "Talk:Libcrypto API"
(Initialization and engines?) |
(→Best practices for printing errors: new section) |
||
| Line 6: | Line 6: | ||
--[[User:Ppelleti|Ppelleti]] 18:05, 3 March 2013 (UTC) | --[[User:Ppelleti|Ppelleti]] 18:05, 3 March 2013 (UTC) | ||
| + | |||
| + | == Best practices for printing errors == | ||
| + | |||
| + | I'm curious about the recommendation to do this: | ||
| + | |||
| + | <pre> | ||
| + | err: | ||
| + | unsigned long errCode; | ||
| + | while(errCode = ERR_get_error()) | ||
| + | { | ||
| + | char *err = ERR_error_string(errCode, NULL); | ||
| + | printf("%s\n", err); | ||
| + | } | ||
| + | </pre> | ||
| + | |||
| + | Wouldn't it be much simpler to just do: | ||
| + | |||
| + | <pre> | ||
| + | err: | ||
| + | ERR_print_errors_fp(stderr); | ||
| + | </pre> | ||
| + | |||
| + | Or, if one really does want to iterate through each line of the error queue individually, wouldn't it still be better for us to recommend using ERR_error_string_n with an explicit buffer? ERR_error_string with a NULL argument is not thread-safe. | ||
| + | |||
| + | --[[User:Ppelleti|Ppelleti]] 18:12, 3 March 2013 (UTC) | ||
Revision as of 18:12, 3 March 2013
Initialization and engines?
Should the recommended initialization code include a call to ENGINE_load_builtin_engines? (Or to OPENSSL_config, which calls ENGINE_load_builtin_engines.) Otherwise, the RdRand engine for getting better random numbers from newer Intel chips (as one example) won't be used.
(My own thoughts on OpenSSL initialization are here.)
--Ppelleti 18:05, 3 March 2013 (UTC)
Best practices for printing errors
I'm curious about the recommendation to do this:
err:
unsigned long errCode;
while(errCode = ERR_get_error())
{
char *err = ERR_error_string(errCode, NULL);
printf("%s\n", err);
}
Wouldn't it be much simpler to just do:
err: ERR_print_errors_fp(stderr);
Or, if one really does want to iterate through each line of the error queue individually, wouldn't it still be better for us to recommend using ERR_error_string_n with an explicit buffer? ERR_error_string with a NULL argument is not thread-safe.
--Ppelleti 18:12, 3 March 2013 (UTC)