Module Name: src Committed By: christos Date: Thu Oct 17 12:53:28 UTC 2013
Modified Files: src/tests/net/net: t_tcp.c Log Message: CID 1107548: resource leak To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 src/tests/net/net/t_tcp.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/tests/net/net/t_tcp.c diff -u src/tests/net/net/t_tcp.c:1.2 src/tests/net/net/t_tcp.c:1.3 --- src/tests/net/net/t_tcp.c:1.2 Sat Oct 12 13:26:32 2013 +++ src/tests/net/net/t_tcp.c Thu Oct 17 08:53:28 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: t_tcp.c,v 1.2 2013/10/12 17:26:32 christos Exp $ */ +/* $NetBSD: t_tcp.c,v 1.3 2013/10/17 12:53:28 christos Exp $ */ /*- * Copyright (c) 2013 The NetBSD Foundation, Inc. @@ -35,7 +35,7 @@ #include <sys/cdefs.h> #ifdef __RCSID -__RCSID("$Id: t_tcp.c,v 1.2 2013/10/12 17:26:32 christos Exp $"); +__RCSID("$Id: t_tcp.c,v 1.3 2013/10/17 12:53:28 christos Exp $"); #endif /* Example code. Should block; does with accept not paccept. */ @@ -58,7 +58,7 @@ __RCSID("$Id: t_tcp.c,v 1.2 2013/10/12 1 #define FAIL(msg, ...) err(EXIT_FAILURE, msg, ## __VA_ARGS__) #else #include <atf-c.h> -#define FAIL(msg, ...) ATF_CHECK_MSG(0, msg, ## __VA_ARGS__) +#define FAIL(msg, ...) ATF_CHECK_MSG(0, msg, ## __VA_ARGS__); goto fail #endif static void @@ -69,7 +69,7 @@ ding(int al) static void paccept_block(bool pacceptblock, bool fcntlblock) { - int srvr, clnt, as; + int srvr = -1, clnt = -1, as = -1; int ok, fl, n; char buf[10]; struct sockaddr_in sin, ba; @@ -153,6 +153,11 @@ paccept_block(bool pacceptblock, bool fc if (n != -1 || errno != EWOULDBLOCK) FAIL("read"); } + return; +fail: + close(srvr); + close(clnt); + close(as); } #ifndef TEST