[PATCH 3/3] selftests: mptcp: Clean up resources properly in main_loop

From: Cong Liu
Date: Mon Jan 13 2025 - 03:54:17 EST


Add proper cleanup of resources (file descriptors and address info)
in error paths to prevent resource leaks.

Signed-off-by: Cong Liu <liucong2@xxxxxxxxxx>
---
tools/testing/selftests/net/mptcp/mptcp_connect.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/tools/testing/selftests/net/mptcp/mptcp_connect.c b/tools/testing/selftests/net/mptcp/mptcp_connect.c
index 4d4ea4627daa..e82fde0411b2 100644
--- a/tools/testing/selftests/net/mptcp/mptcp_connect.c
+++ b/tools/testing/selftests/net/mptcp/mptcp_connect.c
@@ -1271,8 +1271,13 @@ int main_loop(void)
}

ret = copyfd_io(fd_in, fd, 1, 0, &winfo);
- if (ret)
+ if (ret) {
+ close(fd);
+ if (cfg_input)
+ close(fd_in);
+ freeaddrinfo(peer);
return ret;
+ }

if (cfg_truncate > 0) {
xdisconnect(fd, peer->ai_addrlen);
@@ -1291,6 +1296,7 @@ int main_loop(void)
goto again;
} else {
close(fd);
+ freeaddrinfo(peer);
}

return 0;
--
2.43.0