[lttng-dev] [PATCH lttng-tools] Fix: FD leak in accept error handling
David Goulet
dgoulet at efficios.com
Sat Oct 4 09:27:39 EDT 2014
That has been fix.
commit 475cd9fa36ab2ad108f94bb8292bdcdbbbc6e38f
This was a coverity issue fixed on sept. 30th.
David
On 04 Oct (13:24:02), Mathieu Desnoyers wrote:
> Bump.
>
> ----- Original Message -----
> > From: "Mathieu Desnoyers" <mathieu.desnoyers at efficios.com>
> > To: dgoulet at efficios.com
> > Cc: lttng-dev at lists.lttng.org, "Mathieu Desnoyers" <mathieu.desnoyers at efficios.com>
> > Sent: Saturday, September 27, 2014 7:49:22 PM
> > Subject: [PATCH lttng-tools] Fix: FD leak in accept error handling
> >
> > *** CID 1241799: Resource leak (RESOURCE_LEAK)
> > /src/common/sessiond-comm/inet.c: 324 in lttcomm_accept_inet_sock()
> > 318
> > 319 end:
> > 320 return new_sock;
> > 321
> > 322 error:
> > 323 free(new_sock);
> > >>> CID 1241799: Resource leak (RESOURCE_LEAK)
> > >>> Handle variable "new_fd" going out of scope leaks the handle.
> > 324 return NULL;
> > 325 }
> > 326
> > 327 /*
> > 328 * Make the socket listen using LTTNG_SESSIOND_COMM_MAX_LISTEN.
> > 329 */
> >
> > Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers at efficios.com>
> > ---
> > src/common/sessiond-comm/inet.c | 10 +++++++++-
> > 1 file changed, 9 insertions(+), 1 deletion(-)
> >
> > diff --git a/src/common/sessiond-comm/inet.c
> > b/src/common/sessiond-comm/inet.c
> > index cf06ecb..4e34ad0 100644
> > --- a/src/common/sessiond-comm/inet.c
> > +++ b/src/common/sessiond-comm/inet.c
> > @@ -272,7 +272,7 @@ error_connect:
> > LTTNG_HIDDEN
> > struct lttcomm_sock *lttcomm_accept_inet_sock(struct lttcomm_sock *sock)
> > {
> > - int new_fd;
> > + int new_fd, closeret;
> > socklen_t len;
> > struct lttcomm_sock *new_sock;
> > unsigned long timeout;
> > @@ -305,10 +305,18 @@ struct lttcomm_sock *lttcomm_accept_inet_sock(struct
> > lttcomm_sock *sock)
> >
> > ret = lttcomm_setsockopt_rcv_timeout(new_fd, timeout);
> > if (ret) {
> > + closeret = close(new_fd);
> > + if (closeret) {
> > + PERROR("close");
> > + }
> > goto error;
> > }
> > ret = lttcomm_setsockopt_snd_timeout(new_fd, timeout);
> > if (ret) {
> > + closeret = close(new_fd);
> > + if (closeret) {
> > + PERROR("close");
> > + }
> > goto error;
> > }
> > }
> > --
> > 2.1.0
> >
> >
>
> --
> Mathieu Desnoyers
> EfficiOS Inc.
> http://www.efficios.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 603 bytes
Desc: Digital signature
URL: <http://lists.lttng.org/pipermail/lttng-dev/attachments/20141004/60333054/attachment.sig>
More information about the lttng-dev
mailing list