View | Details | Raw Unified | Return to bug 193131 | Differences between
and this patch

Collapse All | Expand All

(-)Makefile (-7 / +29 lines)
Lines 24-40 Link Here
24
		-DCMAKE_LIBRARY_PATH:PATH=lib/event2
24
		-DCMAKE_LIBRARY_PATH:PATH=lib/event2
25
CMAKE_BUILD_TYPE=	Release
25
CMAKE_BUILD_TYPE=	Release
26
26
27
OPTIONS_DEFINE=	EVHTP_DISABLE_SSL EVHTP_DISABLE_EVTHR EVHTP_DISABLE_REGEX \
28
				EVHTP_BUILD_SHARED EVHTP_USE_DEFER_ACCEPT
29
EVHTP_DISABLE_SSL_DESC=		Disable ssl support
30
31
EVHTP_DISABLE_SSL_CMAKE_ON=	-DEVHTP_DISABLE_SSL:STRING=ON
32
EVHTP_DISABLE_SSL_CMAKE_OFF=	-DEVHTP_DISABLE_SSL:STRING=OFF
33
EVHTP_DISABLE_EVTHR_DESC=	Disable evthread support
34
EVHTP_DISABLE_EVTHR_CMAKE_ON=	-DEVHTP_DISABLE_EVTHR:STRING=ON
35
EVHTP_DISABLE_EVTHR_CMAKE_OFF=	-DEVHTP_DISABLE_EVTHR:STRING=OFF
36
EVHTP_DISABLE_REGEX_DESC=	Disable regex support
37
EVHTP_DISABLE_REGEX_CMAKE_ON=	-DEVHTP_DISABLE_REGEX:STRING=ON
38
EVHTP_DISABLE_REGEX_CMAKE_OFF=	-DEVHTP_DISABLE_REGEX:STRING=OFF
39
EVHTP_BUILD_SHARED_DESC=	Build shared library too
40
EVHTP_BUILD_SHARED_CMAKE_ON=	-DEVHTP_BUILD_SHARED:STRING=ON
41
EVHTP_BUILD_SHARED_CMAKE_OFF=	-DEVHTP_BUILD_SHARED:STRING=OFF
42
EVHTP_USE_DEFER_ACCEPT_DESC=	Enable TCP_DEFER_ACCEPT
43
EVHTP_USE_DEFER_ACCEPT_CMAKE_ON=	-DEVHTP_USE_DEFER_ACCEPT:STRING=ON
44
EVHTP_USE_DEFER_ACCEPT_CMAKE_OFF=	-DEVHTP_USE_DEFER_ACCEPT:STRING=OFF
45
46
OPTIONS_DEFAULT=	EVHTP_BUILD_SHARED
47
48
.include <bsd.port.options.mk>
49
27
PLIST_FILES=	include/evhtp.h\
50
PLIST_FILES=	include/evhtp.h\
28
		include/evhtp-config.h \
51
		include/evhtp-config.h \
29
		include/evthr.h \
52
		include/evthr.h \
30
		include/htparse.h \
53
		include/htparse.h \
31
		include/onigposix.h \
54
		include/onigposix.h
32
		lib/libevhtp.a
33
55
34
.include <bsd.port.pre.mk>
56
.if ${PORT_OPTIONS:MEVHTP_BUILD_SHARED}
35
57
PLIST_FILES+=	lib/libevhtp.so
36
.if ${OPSYS} == FreeBSD && ${OSVERSION} < 900000
58
.else
37
BROKEN=		Does not build on FreeBSD 8.x
59
PLIST_FILES+=	lib/libevhtp.a
38
.endif
60
.endif
39
61
40
.include <bsd.port.post.mk>
62
.include <bsd.port.mk>
(-)files/patch-evhtp.c (+28 lines)
Line 0 Link Here
1
--- evhtp.c.orig	2014-03-23 07:50:50.000000000 -0400
2
+++ evhtp.c	2014-08-28 09:08:40.970619326 -0400
3
@@ -6,6 +6,10 @@
4
 #include <signal.h>
5
 #include <strings.h>
6
 #include <inttypes.h>
7
+#ifdef SO_ACCEPTFILTER 
8
+#include <sys/types.h>
9
+#include <sys/socket.h>
10
+#endif
11
 #ifndef WIN32
12
 #include <sys/socket.h>
13
 #include <netinet/in.h>
14
@@ -2740,7 +2744,14 @@
15
 
16
         sock = evconnlistener_get_fd(htp->server);
17
 
18
+#ifdef TCP_DEFER_ACCEPT
19
         setsockopt(sock, IPPROTO_TCP, TCP_DEFER_ACCEPT, &one, (ev_socklen_t)sizeof(one));
20
+#elif SO_ACCEPTFILTER
21
+        struct accept_filter_arg afa;
22
+        bzero(&afa, sizeof(afa));
23
+        strcpy(afa.af_name, "httpready");
24
+        setsockopt(sock, SOL_SOCKET, SO_ACCEPTFILTER, &afa, sizeof(afa));
25
+#endif
26
         setsockopt(sock, IPPROTO_TCP, TCP_NODELAY, &one, (ev_socklen_t)sizeof(one));
27
     }
28
 #endif

Return to bug 193131