CONTRIB: tcploop: make it build on FreeBSD

A few changes :
- SOL_TCP must be replaced with IPPROTO_TCP
- TCP_NOQUICKACK is not defined
- MSG_MORE can be ignored and replaced with 0
This commit is contained in:
Willy Tarreau 2017-03-14 14:36:26 +01:00
parent 544d481516
commit 0c0c0a6c26
1 changed files with 11 additions and 0 deletions

View File

@ -50,6 +50,13 @@
#include <time.h> #include <time.h>
#include <unistd.h> #include <unistd.h>
#ifndef SOL_TCP
#define SOL_TCP IPPROTO_TCP
#endif
#ifndef MSG_MORE
#define MSG_MORE 0
#endif
struct err_msg { struct err_msg {
int size; int size;
@ -309,8 +316,12 @@ int tcp_set_nolinger(int sock, const char *arg)
int tcp_set_noquickack(int sock, const char *arg) int tcp_set_noquickack(int sock, const char *arg)
{ {
#ifdef TCP_QUICKACK
/* warning: do not use during connect if nothing is to be sent! */ /* warning: do not use during connect if nothing is to be sent! */
return setsockopt(sock, SOL_TCP, TCP_QUICKACK, &zero, sizeof(zero)); return setsockopt(sock, SOL_TCP, TCP_QUICKACK, &zero, sizeof(zero));
#else
return 0;
#endif
} }
/* Try to listen to address <sa>. Return the fd or -1 in case of error */ /* Try to listen to address <sa>. Return the fd or -1 in case of error */