From: Ben Pfaff Date: Thu, 24 Jan 2013 21:22:30 +0000 (-0800) Subject: netdev-linux: Check return value of set_nonblocking(). X-Git-Tag: v1.10.0~123 X-Git-Url: http://git.cascardo.eti.br/?a=commitdiff_plain;h=8450059ee8c1564f5d3be2e5d9c303360d1226e4;p=cascardo%2Fovs.git netdev-linux: Check return value of set_nonblocking(). It's unlikely to fail but checking it can't hurt. Found by Coverity. Signed-off-by: Ben Pfaff Acked-by: Ethan Jackson --- diff --git a/lib/netdev-linux.c b/lib/netdev-linux.c index 5de4fa23c..4ea7a3667 100644 --- a/lib/netdev-linux.c +++ b/lib/netdev-linux.c @@ -4639,7 +4639,11 @@ af_packet_sock(void) if (sock == INT_MIN) { sock = socket(AF_PACKET, SOCK_RAW, 0); if (sock >= 0) { - set_nonblocking(sock); + int error = set_nonblocking(sock); + if (error) { + close(sock); + sock = -error; + } } else { sock = -errno; VLOG_ERR("failed to create packet socket: %s", strerror(errno));