new libgcrypt

Nikos Mavroyanopoulos nmav@gnutls.org
Thu, 7 Aug 2003 14:24:10 +0300


On Thu, Aug 07, 2003 at 08:28:02AM +0200, Werner Koch wrote:

> > Program received signal SIGSEGV, Segmentation fault.
> > _gcry_module_release (module=0x0) at module.c:156
> Fixed in CVS:
[...]
>  /* Release a module.  In case the use-counter reaches zero, destroy
> -   the module.  */
> +   the module.  Passing MODULE as NULL is a dummy operation (similar
> +   to free()). */
>  void
>  _gcry_module_release (gcry_module_t module)
>  {
> -  if (! --module->counter)
> +  if (module && ! --module->counter)
>      _gcry_module_drop (module);
>  }
> It happens in the error handling part of some code.  In general it is
> a good idea to allow release functions to take a NULL argument to make
> cleanup after errors easier.

This fixes the segmentation fault, but the RSA decryption is not
done correctly so gnutls no longer works. The strange thing is that
no gcrypt function returns an error code.

> Thanks,
>   Werner
> 
> -- 
> Werner Koch                                      <wk@gnupg.org>
> The GnuPG Experts                                http://g10code.com
> Free Software Foundation Europe	                 http://fsfeurope.org

-- 
Nikos Mavroyanopoulos