 +NGHTTP2_VER=1.29.0
 +APR_VER=1.6.3
 +APR_UTIL_VER=1.6.1
-+CFLAGS_SAN="-fsanitize=address"
++CFLAGS_SAN="-fsanitize=address -O3 -ggdb"
 +# Another viable option: few
 +APACHE_MODULES=most
 +

+		--with-mpm=event \
+		--enable-unixd \
+		--disable-pie \
+		--enable-mods-static=$APACHE_MODULES \
+		--with-apr="$APR_PATH" \
+		--with-apr-util="$APR_UTIL_PATH"
+make clean
+make -j$(nproc)
+make install
diff -Nur httpd/configure.in httpd.new/configure.in
--- httpd/configure.in	2017-11-02 23:48:27.717470876 +0100
+++ httpd.new/configure.in	2017-11-02 23:48:05.053844712 +0100
@@ -721,7 +721,7 @@
 if test "x$PKGCONFIG" != "x" && `$PKGCONFIG --atleast-version='0.9.12' check`; then
   UNITTEST_CFLAGS=`$PKGCONFIG --cflags check`
   UNITTEST_LIBS=`$PKGCONFIG --libs check`
-  other_targets="$other_targets test/httpdunit"
+  other_targets="$other_targets"
 
   AC_MSG_RESULT([yes])
 else
diff -Nur httpd/server/main.c httpd.new/server/main.c
--- httpd/server/main.c	2017-11-02 23:48:27.913467639 +0100
+++ httpd.new/server/main.c	2017-11-02 23:48:05.053844712 +0100
@@ -484,8 +484,84 @@
     destroy_and_exit_process(process, 1);
 }
 
-int main(int argc, const char * const argv[])
-{
+#include <libhfuzz/libhfuzz.h>
+
+static void GETDATA(void *unused) {
+  usleep(100000);
+
+  for (;;) {
+    size_t len;
+    const uint8_t *buf;
+
+    HF_ITER(&buf, &len);
+
+    int myfd = socket(AF_INET, SOCK_STREAM, IPPROTO_IP);
+    if (myfd == -1) {
+      perror("socket");
+      _exit(1);
+    }
+
+    int sz = (1024 * 1024);
+    if (setsockopt(myfd, SOL_SOCKET, SO_SNDBUF, &sz, sizeof(sz)) == -1) {
+      perror("setsockopt");
+      exit(1);
+    }
+
+    struct sockaddr_in saddr;
+    saddr.sin_family = AF_INET;
+    saddr.sin_port = htons(8080);
+    saddr.sin_addr.s_addr = htonl(INADDR_LOOPBACK);
+    if (connect(myfd, &saddr, sizeof(saddr)) == -1) {
+      perror("connect");
+      close(myfd);
+      continue;
+    }
+
+    if (send(myfd, buf, len, MSG_NOSIGNAL) != len) {
+      perror("send() failed 1");
+      exit(1);
+    }
+
+    if (shutdown(myfd, SHUT_WR) == -1) {
+      perror("shutdown");
+      exit(1);
+    }
+
+    char b[1024 * 1024];
+    while (recv(myfd, b, sizeof(b), MSG_WAITALL) > 0) {} ;
+
+    close(myfd);
+  }
+}
+
+static void LAUNCHTHR() {
+  if (linuxEnterNs(CLONE_NEWUSER|CLONE_NEWNET|CLONE_NEWNS|CLONE_NEWIPC|CLONE_NEWUTS) == false) {
+    exit(1);
+  }
+  if (linuxIfaceUp("lo") == false) {
+    exit(1);
+  }
+  if (linuxMountTmpfs("/tmp") == false) {
+    exit(1);
+  }
+
+  pthread_t t;
+  pthread_attr_t attr;
+
+  pthread_attr_init(&attr);
+  pthread_attr_setstacksize(&attr, 1024 * 1024 * 8);
+  pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
+
+  pthread_create(&t, &attr, GETDATA,  NULL);
+}
+
+ int main(int argc, const char * const argv[])
+ {
+
+  if (getenv("NO_FUZZ") == NULL) {
+        LAUNCHTHR();
+  }
+
     char c;
     int showcompile = 0, showdirectives = 0;
     const char *confname = SERVER_CONFIG_FILE;

+./buildconf --with-apr="$APR_PATH" --with-apr-util="$APR_UTIL_PATH"
+
+echo "Compiling HTTPD"
+CFLAGS="-I$NGHTTP2_PATH/lib/includes $CFLAGS_SAN -ggdb -O3" LDFLAGS="-L$NGHTTP2_PATH/lib -lpthread" \
+./configure \
+		--prefix="$INSTALL_PREFIX" \
+		--with-nghttp2="$NGHTTP2_PATH/" \
