From 5611b0c10afa85df4d0017d36b2198bc610967ae Mon Sep 17 00:00:00 2001 From: rzalamena Date: Mon, 8 Aug 2016 16:52:15 +0000 Subject: [PATCH] Create socket with SOCK_NONBLOCK instead of using fcntl() without the proper flag handling. ok reyk@ --- usr.sbin/switchd/switchd.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/usr.sbin/switchd/switchd.c b/usr.sbin/switchd/switchd.c index 902e9793bef..b3ef9127db5 100644 --- a/usr.sbin/switchd/switchd.c +++ b/usr.sbin/switchd/switchd.c @@ -1,4 +1,4 @@ -/* $OpenBSD: switchd.c,v 1.6 2016/07/22 09:31:33 reyk Exp $ */ +/* $OpenBSD: switchd.c,v 1.7 2016/08/08 16:52:15 rzalamena Exp $ */ /* * Copyright (c) 2013-2016 Reyk Floeter @@ -217,7 +217,8 @@ switchd_socket(struct sockaddr *sock, int reuseport) int s = -1, val; struct linger lng; - if ((s = socket(sock->sa_family, SOCK_STREAM, IPPROTO_TCP)) == -1) + if ((s = socket(sock->sa_family, SOCK_STREAM | SOCK_NONBLOCK, + IPPROTO_TCP)) == -1) goto bad; /* @@ -232,8 +233,6 @@ switchd_socket(struct sockaddr *sock, int reuseport) sizeof(int)) == -1) goto bad; } - if (fcntl(s, F_SETFL, O_NONBLOCK) == -1) - goto bad; /* * TCP options -- 2.20.1