From: Alexander Couzens Date: Sun, 1 Apr 2012 10:36:52 +0000 (+0300) Subject: Fix potential double free and use of freed memory in RADIUS client X-Git-Tag: hostap_2_0~778 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=a4e73a0e470cde6fcf3983aca277f01540bb37fa;p=thirdparty%2Fhostap.git Fix potential double free and use of freed memory in RADIUS client ieee802_1x_encapsulate_radius() frees the RADIUS message if radius_client_send() returns error. This could have resulted in use of freed memory and double freeing of the RADIUS message if send() fails since the message is also left in the retransmit list. Avoid this by not returning error to the caller in such a case. Signed-off-by: Alexander Couzens --- diff --git a/src/radius/radius_client.c b/src/radius/radius_client.c index bcd471b7e..cdaeae9b8 100644 --- a/src/radius/radius_client.c +++ b/src/radius/radius_client.c @@ -678,7 +678,7 @@ int radius_client_send(struct radius_client_data *radius, radius_client_list_add(radius, msg, msg_type, shared_secret, shared_secret_len, addr); - return res; + return 0; }