From: Sepherosa Ziehau Date: Fri, 30 Oct 2015 07:01:51 +0000 (+0800) Subject: tools/kq_connect_client: Use SOCK_NONBLOCK if it's available X-Git-Tag: v4.5.0~263 X-Git-Url: https://gitweb.dragonflybsd.org/~tuxillo/dragonfly.git/commitdiff_plain/bb610bea6c56fbdf191f01d3e6123d74bb34d634 tools/kq_connect_client: Use SOCK_NONBLOCK if it's available --- diff --git a/tools/tools/netrate/accept_connect/kq_connect_client/kq_connect_client.c b/tools/tools/netrate/accept_connect/kq_connect_client/kq_connect_client.c index ec0593a99a..6b1957c4ae 100644 --- a/tools/tools/netrate/accept_connect/kq_connect_client/kq_connect_client.c +++ b/tools/tools/netrate/accept_connect/kq_connect_client/kq_connect_client.c @@ -201,7 +201,9 @@ mainloop(const struct sockaddr_in *in, int in_cnt, int nconn_max, u_long count = 0; double time_us; u_int in_idx = 0; +#ifndef SOCK_NONBLOCK int nblock = 1; +#endif if (bindcpu) { int cpu = inst % cpucnt; @@ -242,12 +244,18 @@ mainloop(const struct sockaddr_in *in, int in_cnt, int nconn_max, if (do_udp) udp_send(tmp); +#ifndef SOCK_NONBLOCK s = socket(AF_INET, SOCK_STREAM, 0); if (s < 0) err(1, "socket failed"); if (ioctl(s, FIONBIO, &nblock, sizeof(nblock)) < 0) err(1, "ioctl failed"); +#else + s = socket(AF_INET, SOCK_STREAM | SOCK_NONBLOCK, 0); + if (s < 0) + err(1, "socket failed"); +#endif n = connect(s, (const struct sockaddr *)tmp, sizeof(*tmp));