Skip to Content.
Sympa Menu

freetds - RE: [freetds] OpenSSL support

freetds AT lists.ibiblio.org

Subject: FreeTDS Development Group

List archive

Chronological Thread  
  • From: "ZIGLIO, Frediano, VF-IT" <Frediano.Ziglio AT vodafone.com>
  • To: "FreeTDS Development Group" <freetds AT lists.ibiblio.org>
  • Subject: RE: [freetds] OpenSSL support
  • Date: Thu, 26 May 2005 11:35:08 +0200

>
> > It seems that even OpenSSL has a library leak similar to
> GnuTLS one so
> > every time you load/use/unload openssl library a leak occur
> (the same
> > happen to all libraries that use openssl).
> > See http://freetds.sourceforge.net/out/test2/out.html for details.
>
> I think the problem might be with the global data loaded when openssl
> starts up. You can use ERR_free_strings and EVP_cleanup to
> axe the global
> structures at shutdown.
>
> Have Fun!
> Peter

Nice shoot!
However this solution is good for an application but not for a
library... calling ERR_free_strings and/or EVP_cleanup while another
library can use openssl is not that good. strings and evp are global so
every library that use openssl in your application will not see
error/digest/cipher registered... I'm trying to patch openssl to free
its data while unloading library using gcc (not very portable but there
seems no way to handle this portably)...

A note about GnuTLS and OpenSSL. Beside license I found that OpenSSL is
more mature, thread safe but huge and complex... every part (error, hash
and others) can be overridden and follow the flow is very difficult.
GnuTLS is cleaner however it do not support some cipher suite (it do not
support any cipher I need for FreeTDS...). Using OpenSSL as a system
library (linked to many application/libraries) seems not that fine (it
contains leaks and global states which every application/library should
pay attention).

freddy77




Archive powered by MHonArc 2.6.24.

Top of Page