From: Christian Grothoff Date: Thu, 29 Oct 2009 23:23:41 +0000 (+0000) Subject: dup to prevent access after free: X-Git-Tag: initial-import-from-subversion-38251~23205 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=2ad42b2804d3178a06dc626a224890d163be2c00;p=oweals%2Fgnunet.git dup to prevent access after free: --- diff --git a/src/arm/arm_api.c b/src/arm/arm_api.c index 810f2ebe6..f2d2b293a 100644 --- a/src/arm/arm_api.c +++ b/src/arm/arm_api.c @@ -54,7 +54,7 @@ struct GNUNET_ARM_Handle /** * The configuration that we are using. */ - const struct GNUNET_CONFIGURATION_Handle *cfg; + struct GNUNET_CONFIGURATION_Handle *cfg; /** * Scheduler to use. @@ -87,7 +87,7 @@ GNUNET_ARM_connect (const struct GNUNET_CONFIGURATION_Handle *cfg, if (client == NULL) return NULL; ret = GNUNET_malloc (sizeof (struct GNUNET_ARM_Handle)); - ret->cfg = cfg; + ret->cfg = GNUNET_CONFIGURATION_dup (cfg); ret->sched = sched; ret->client = client; return ret; @@ -104,6 +104,7 @@ GNUNET_ARM_disconnect (struct GNUNET_ARM_Handle *h) { if (h->client != NULL) GNUNET_CLIENT_disconnect (h->client); + GNUNET_CONFIGURATION_destroy (h->cfg); GNUNET_free (h); }