On 2010-03-10 12:42, Simon Josefsson wrote:
> Lars Nordin<Lars.Nordin_at_SDlabs.se>  writes:
>
>    
>> Please find attached patch to make libssh2 have a clean way of
>> initialize the library.
>>      
> Hi.  Great, I agree libssh2 should have proper global init/exit
> functions.
>
>    
>> The patch adds a new file, global.c. The makefile.in is changes, but
>> not the WIN32 files.
>>      
> The Makefile.in file is automatically generated, the file to modify is
> Makefile.inc.
>
>    
Can you modify or should a resend the patch?
> You forgot to attach the new globals.c?
>    
Attached...
>    
>> + * LIBSSH2_INIT_ALL:               Initialize everything
>>      
> Maybe we could remove this one?  I think it will restrict us too much in
> the future, we could conceivable have init-flags that are not related to
> disable some initialization, and then this flag becomes confusing.  Just
> document that callers should pass 0 if they don't want to use any flag.
>
>    
libssh2_init() needs a parameter and I think it should be a name rather 
then just 0. Maybe change the name or just accept that libssh2_init(0); 
is what normally will be done (if you don't handle the init of te used 
cryptolibrary yourself)
>> +        ERR_load_crypto_strings();
>> +        OpenSSL_add_all_algorithms();
>> +        ENGINE_load_builtin_engines();
>>      
> Are the first and last calls really needed?
>
>    
The first call is needed to get errormessages from OpenSSL with names 
instead of numbers for error-funtions, but can be removed until vi 
display OpenSSL error-messages for DEBUG-reasons.
The last one should be removed, usage of OpenSSL-engines can now be 
handled outside libssh2 (and then call libssh2_init with 
LIBSSH2_INIT_NO_CRYPTO_INIT) The same for entropy-handling, can be 
handled before libssh2_init is called (ie load/update of .rnd as openssh 
does it to improve random-generation
> /Simon
> _______________________________________________
> libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel
>
>    
/Lars
_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel