[dpdk-dev] vhost: fix use after free issue
Commit Message
Fix the coverity USE_AFTER_FREE issue.
Fixes: a277c7159876 ("vhost: refactor code structure")
Coverity issue: 137884
Reported-by: John McNamara <john.mcnamara@intel.com>
Signed-off-by: Yuanhan Liu <yuanhan.liu@linux.intel.com>
---
lib/librte_vhost/socket.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Comments
On Tue, Oct 18, 2016 at 10:38:06PM +0800, Yuanhan Liu wrote:
> Fix the coverity USE_AFTER_FREE issue.
>
> Fixes: a277c7159876 ("vhost: refactor code structure")
> Coverity issue: 137884
>
> Reported-by: John McNamara <john.mcnamara@intel.com>
> Signed-off-by: Yuanhan Liu <yuanhan.liu@linux.intel.com>
Applied to dpdk-next-virtio.
--yliu
> ---
> lib/librte_vhost/socket.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/lib/librte_vhost/socket.c b/lib/librte_vhost/socket.c
> index 967cb65..aaa9c27 100644
> --- a/lib/librte_vhost/socket.c
> +++ b/lib/librte_vhost/socket.c
> @@ -250,8 +250,8 @@ vhost_user_read_cb(int connfd, void *dat, int *remove)
> vsocket->connfd = -1;
> close(connfd);
> *remove = 1;
> - free(conn);
> vhost_destroy_device(conn->vid);
> + free(conn);
>
> if (vsocket->reconnect)
> vhost_user_create_client(vsocket);
> --
> 1.9.0
@@ -250,8 +250,8 @@ vhost_user_read_cb(int connfd, void *dat, int *remove)
vsocket->connfd = -1;
close(connfd);
*remove = 1;
- free(conn);
vhost_destroy_device(conn->vid);
+ free(conn);
if (vsocket->reconnect)
vhost_user_create_client(vsocket);