From: Alan T. DeKok Date: Fri, 14 Aug 2015 19:42:06 +0000 (+0200) Subject: If we can't encode a packet, delete it from the list X-Git-Tag: release_3_0_10~240 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=eddb3fc2fc68624902c777dfa4cc6944b9357079;p=thirdparty%2Ffreeradius-server.git If we can't encode a packet, delete it from the list --- diff --git a/src/main/radclient.c b/src/main/radclient.c index 33af6647d15..016e5603735 100644 --- a/src/main/radclient.c +++ b/src/main/radclient.c @@ -974,6 +974,9 @@ static int send_one_packet(rc_request_t *request) */ if (rad_send(request->packet, NULL, secret) < 0) { REDEBUG("Failed to send packet for ID %d", request->packet->id); + deallocate_id(request); + request->done = true; + return -1; } fr_packet_header_print(fr_log_fp, request->packet, false); @@ -1541,7 +1544,10 @@ int main(int argc, char **argv) /* * Send the current packet. */ - send_one_packet(this); + if (send_one_packet(this) < 0) { + talloc_free(this); + break; + } /* * Wait a little before sending