network plugin: Fix initialization of the gcrypt library.
authorLuke Heberling <collectd@c-ware.com>
Mon, 31 Aug 2009 17:31:30 +0000 (10:31 -0700)
committerFlorian Forster <octo@huhu.verplant.org>
Mon, 31 Aug 2009 18:24:46 +0000 (20:24 +0200)
commit5899493b4434ba40638f8a5ffe4cb2e58bead3d4
tree90bd72c9983c538d643cc628607a5ef5ce0bd6ad
parent2f23f605cb74588854b67b6a50850dbaa4d8d93d
network plugin: Fix initialization of the gcrypt library.

Subject: Ohhhh jeeee, libgcrypt 1.4.1 + collectd 4.7.2

On Monday 31 August 2009 09:03:37 Sebastian Harl wrote:
> Hrm … from a quick look at the libcrypt documentation I suppose we need
> to call gcry_control() using the 'GCRYCTL_INIT_SECMEM' command to
> explicitly initialize the secure memory. Sounds like this was required
> in libgcrypt 1.4.1 but is handled automatically in later versions.
>

also looks like there's some special initialization necessary for threads. I
doubt that this is handled by the new default behavior in 1.4.4. Don't know
that it's truly necessary if the network plugin is the only plugin using
gcrypt.

Here's a patch that works for me with 1.4.1.
I followed an example for pthread initialization and  initialized gcry to 32k,
only since that's apparently the default that's used in 1.4.3. I did it in
network.c's module_register function. Kind of an abuse, I know.

Luke Heberling

Signed-off-by: Florian Forster <octo@huhu.verplant.org>
src/network.c