From: Volker Lendecke Date: Tue, 22 May 2018 15:10:07 +0000 (+0200) Subject: ldap_server: Fix CID 1435721 Unchecked return value X-Git-Url: http://git.samba.org/?a=commitdiff_plain;h=291630126d3358c22bc88d98e5e35c274e6af29d;p=kai%2Fsamba.git ldap_server: Fix CID 1435721 Unchecked return value Signed-off-by: Volker Lendecke Reviewed-by: Jeremy Allison Autobuild-User(master): Jeremy Allison Autobuild-Date(master): Thu May 24 03:35:00 CEST 2018 on sn-devel-144 --- diff --git a/source4/ldap_server/ldap_server.c b/source4/ldap_server/ldap_server.c index 49e03ef8c6f..b5251e3623e 100644 --- a/source4/ldap_server/ldap_server.c +++ b/source4/ldap_server/ldap_server.c @@ -104,6 +104,7 @@ static void ldapsrv_terminate_connection_done(struct tevent_req *subreq) tevent_req_callback_data(subreq, struct ldapsrv_connection); int sys_errno; + bool ok; tstream_disconnect_recv(subreq, &sys_errno); TALLOC_FREE(subreq); @@ -130,9 +131,15 @@ static void ldapsrv_terminate_connection_done(struct tevent_req *subreq) conn->limits.reason); return; } - tevent_req_set_endtime(subreq, - conn->connection->event.ctx, - conn->limits.endtime); + ok = tevent_req_set_endtime(subreq, + conn->connection->event.ctx, + conn->limits.endtime); + if (!ok) { + TALLOC_FREE(conn->sockets.raw); + stream_terminate_connection(conn->connection, + conn->limits.reason); + return; + } tevent_req_set_callback(subreq, ldapsrv_terminate_connection_done, conn); }