[Help-gnutls] gnutls multi-threaded

Daniel Stenberg daniel at haxx.se
Wed Apr 13 11:06:12 CEST 2005


(CC'ed to the libcurl mailing list for info)

Reading another thread in the gnutls list, it came to my attention that using 
GnuTLS in a multi-threaded environment requires some locking functions to be 
set for the underlying crypto lib (libgcrypt).

Is there a descriptive web page anywhere that explains this that I can point 
libcurl users to? Many libcurl users run multi-threaded programs and this is 
bound to hit the fan as soon as people start trying the GnuTLS-version of 
libcurl more. (Which I expect will happen once we release a version with this 
ability included.)

I'm considering providing this locking/mutex ability in an API to libcurl, so 
that libcurl-using apps can be agnostic to which secure layer libcurl has been 
built to use. But I don't know yet if that is feasable.

Is there a good reason why GnuTLS doesn't export such methods by itself? I 
mean, isn't it rather ugly to force lib-users to have to assume that GnuTLS 
uses libgcrypt?

Or have I misunderstood things?

          -=- Daniel Stenberg -=- http://daniel.haxx.se -=-
   ech`echo xiun|tr nu oc|sed 'sx\([sx]\)\([xoi]\)xo un\2\1 is xg'`ol

More information about the Gnutls-help mailing list