[dpdk-dev] examples/ip_pipeline: fix resource leak
Checks
Commit Message
Closing the fd_server file descriptor on error to fix the resource leak.
Coverity issue: 272587
Fixes: 4bbf8e30aa5e ("examples/ip_pipeline: add CLI interface")
Cc: jasvinder.singh@intel.com
Signed-off-by: Kevin Laatz <kevin.laatz@intel.com>
---
examples/ip_pipeline/conn.c | 3 +++
1 file changed, 3 insertions(+)
Comments
> -----Original Message-----
> From: Laatz, Kevin
> Sent: Thursday, April 19, 2018 12:04 PM
> To: dev@dpdk.org
> Cc: Dumitrescu, Cristian <cristian.dumitrescu@intel.com>; Laatz, Kevin
> <kevin.laatz@intel.com>; Singh, Jasvinder <jasvinder.singh@intel.com>
> Subject: [PATCH] examples/ip_pipeline: fix resource leak
>
> Closing the fd_server file descriptor on error to fix the resource leak.
>
> Coverity issue: 272587
> Fixes: 4bbf8e30aa5e ("examples/ip_pipeline: add CLI interface")
> Cc: jasvinder.singh@intel.com
>
> Signed-off-by: Kevin Laatz <kevin.laatz@intel.com>
> ---
> examples/ip_pipeline/conn.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/examples/ip_pipeline/conn.c b/examples/ip_pipeline/conn.c index
> 9338942..6b08e9e 100644
> --- a/examples/ip_pipeline/conn.c
> +++ b/examples/ip_pipeline/conn.c
> @@ -96,12 +96,14 @@ conn_init(struct conn_params *p)
> sizeof(server_address));
> if (status == -1) {
> conn_free(conn);
> + close(fd_server);
> return NULL;
> }
>
> status = listen(fd_server, 16);
> if (status == -1) {
> conn_free(conn);
> + close(fd_server);
> return NULL;
> }
>
> @@ -109,6 +111,7 @@ conn_init(struct conn_params *p)
> fd_client_group = epoll_create(1);
> if (fd_client_group == -1) {
> conn_free(conn);
> + close(fd_server);
> return NULL;
> }
>
> --
> 2.9.5
Reviewed-by: Jasvinder Singh <jasvinder.singh@intel.com>
@@ -96,12 +96,14 @@ conn_init(struct conn_params *p)
sizeof(server_address));
if (status == -1) {
conn_free(conn);
+ close(fd_server);
return NULL;
}
status = listen(fd_server, 16);
if (status == -1) {
conn_free(conn);
+ close(fd_server);
return NULL;
}
@@ -109,6 +111,7 @@ conn_init(struct conn_params *p)
fd_client_group = epoll_create(1);
if (fd_client_group == -1) {
conn_free(conn);
+ close(fd_server);
return NULL;
}