[core] use TCP_FASTOPEN on listening sockets if available

personal/stbuehler/wip
Stefan Bühler 10 years ago
parent bf6470375a
commit 31e581456d

@ -438,6 +438,10 @@ static int do_listen(liServer *srv, liSocketAddress *addr, GString *str) {
ERROR(srv, "Couldn't bind socket to '%s': %s", str->str, g_strerror(errno));
return -1;
}
#ifdef TCP_FASTOPEN
v = 1000;
setsockopt(s, SOL_TCP, TCP_FASTOPEN, &v, sizeof(v));
#endif
if (-1 == listen(s, 1000)) {
close(s);
ERROR(srv, "Couldn't listen on '%s': %s", str->str, g_strerror(errno));
@ -474,6 +478,10 @@ static int do_listen(liServer *srv, liSocketAddress *addr, GString *str) {
g_string_free(ipv6_str, TRUE);
return -1;
}
#ifdef TCP_FASTOPEN
v = 1000;
setsockopt(s, SOL_TCP, TCP_FASTOPEN, &v, sizeof(v));
#endif
if (-1 == listen(s, 1000)) {
close(s);
ERROR(srv, "Couldn't listen on '%s': %s", ipv6_str->str, g_strerror(errno));

@ -79,6 +79,10 @@ int li_angel_fake_listen(liServer *srv, GString *str) {
ERROR(srv, "Couldn't bind socket to '%s': %s", inet_ntoa(addr.sin_addr), g_strerror(errno));
return -1;
}
#ifdef TCP_FASTOPEN
v = 1000;
setsockopt(s, SOL_TCP, TCP_FASTOPEN, &v, sizeof(v));
#endif
if (-1 == listen(s, 1000)) {
close(s);
ERROR(srv, "Couldn't listen on '%s': %s", inet_ntoa(addr.sin_addr), g_strerror(errno));
@ -122,6 +126,10 @@ int li_angel_fake_listen(liServer *srv, GString *str) {
g_string_free(ipv6_str, TRUE);
return -1;
}
#ifdef TCP_FASTOPEN
v = 1000;
setsockopt(s, SOL_TCP, TCP_FASTOPEN, &v, sizeof(v));
#endif
if (-1 == listen(s, 1000)) {
close(s);
ERROR(srv, "Couldn't listen on '%s': %s", ipv6_str->str, g_strerror(errno));

Loading…
Cancel
Save