frosix

Multiparty signature service (experimental)
Log | Files | Refs | README | LICENSE

commit 21d2d9c00cac024b56a6b0d6d20371fe41444d1d
parent 814c04fdadab4248bbdb6018fe422282b2af33a5
Author: Joel Urech <joeltobias.urech@students.bfh.ch>
Date:   Sun,  2 Jul 2023 16:24:55 +0200

fix double free bug

Diffstat:
Msrc/libfrosix/frosix_api_request-challenge.c | 28+++++-----------------------
1 file changed, 5 insertions(+), 23 deletions(-)

diff --git a/src/libfrosix/frosix_api_request-challenge.c b/src/libfrosix/frosix_api_request-challenge.c @@ -144,20 +144,6 @@ free_provider_struct (struct FROSIX_Provider *fp) /** - * Function to free all initialized memory of a provider from a - * `struct FROSIX_SignatureData` - * - * @param dd the struct to clean up -*/ -static void -free_challenge_request_data_struct (struct FROSIX_ChallengeRequestData *cd) -{ - free_provider_struct (&cd->provider); - GNUNET_free (cd); -} - - -/** * Function called when challenge-request process is being aborted. * Frees all initialized memory! * @@ -169,11 +155,10 @@ challenge_request_cancel_cb (void *cls) struct FROSIX_ChallengeRequestState *cs = cls; if (NULL != cs->challenge_data) - free_challenge_request_data_struct (cs->challenge_data); - - /* free operations */ - if (NULL != cs->ao) - GNUNET_free (cs->ao); + { + free_provider_struct (&cs->challenge_data->provider); + GNUNET_free (cs->challenge_data); + } GNUNET_free (cs); } @@ -185,9 +170,6 @@ challenge_request_cancel_cb (void *cls) static void return_feedback (struct FROSIX_ChallengeRequestState *cs) { - /* free all initialized data*/ - free_challenge_request_data_struct (cs->challenge_data); - /* return empty */ cs->cb (cs->cb_cls, cs->error_code, @@ -368,7 +350,7 @@ FROSIX_redux_challenge_request_start (const json_t *arguments, arguments, input)) { - free_challenge_request_data_struct (challenge_data); + // free_challenge_request_data_struct (challenge_data); // FIXME: Return some useful error message return NULL;