net/tap: fix file descriptor leak on error
If netlink socket setup fails the file descriptor was leaked. Coverity issue: 257040 Fixes: 7c25284e30c2 ("net/tap: add netlink back-end for flow API") Cc: stable@dpdk.org Signed-off-by: Stephen Hemminger <stephen@networkplumber.org> Acked-by: Keith Wiles <keith.wiles@intel.com>
This commit is contained in:
parent
6521c9a2f7
commit
cc02c97718
@ -51,14 +51,17 @@ tap_nl_init(uint32_t nl_groups)
|
||||
}
|
||||
if (setsockopt(fd, SOL_SOCKET, SO_SNDBUF, &sndbuf_size, sizeof(int))) {
|
||||
TAP_LOG(ERR, "Unable to set socket buffer send size");
|
||||
close(fd);
|
||||
return -1;
|
||||
}
|
||||
if (setsockopt(fd, SOL_SOCKET, SO_RCVBUF, &rcvbuf_size, sizeof(int))) {
|
||||
TAP_LOG(ERR, "Unable to set socket buffer receive size");
|
||||
close(fd);
|
||||
return -1;
|
||||
}
|
||||
if (bind(fd, (struct sockaddr *)&local, sizeof(local)) < 0) {
|
||||
TAP_LOG(ERR, "Unable to bind to the netlink socket");
|
||||
close(fd);
|
||||
return -1;
|
||||
}
|
||||
return fd;
|
||||
|
Loading…
x
Reference in New Issue
Block a user