mirror of
https://github.com/checkpoint-restore/criu
synced 2025-08-30 22:05:36 +00:00
sockets: free all allocated objected in case of any error
Signed-off-by: Andrey Vagin <avagin@openvz.org> Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
This commit is contained in:
committed by
Pavel Emelyanov
parent
06d8c36c56
commit
d1787c84a0
@@ -193,12 +193,15 @@ static int dump_socket_filter(int sk, SkOptsEntry *soe)
|
||||
ret = getsockopt(sk, SOL_SOCKET, SO_GET_FILTER, flt, &len);
|
||||
if (ret) {
|
||||
pr_perror("Can't get socket filter\n");
|
||||
xfree(flt);
|
||||
return ret;
|
||||
}
|
||||
|
||||
soe->so_filter = xmalloc(len * sizeof(*soe->so_filter));
|
||||
if (!soe->so_filter)
|
||||
if (!soe->so_filter) {
|
||||
xfree(flt);
|
||||
return -1;
|
||||
}
|
||||
|
||||
encode_filter(flt, soe->so_filter, len);
|
||||
soe->n_so_filter = len;
|
||||
|
Reference in New Issue
Block a user