httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dirk-Willem van Gulik <di...@webweaving.org>
Subject HTTP Accept filters on freebsd
Date Sun, 31 Jul 2005 15:58:55 GMT

After struggling for hours - and not 'getting' why my ssl authentication
broke :-) would something like the patch below be of use ?

All this does is to check if the kernel has support for
httpready/dataready filtering. Though I guess an even better way may be to
have a config directive and an -error- if the config directive is on and
the kernelmodule fials.

Dw


Index: core.c
===================================================================
--- core.c      (revision 225876)
+++ core.c      (working copy)
@@ -478,9 +478,18 @@
 #endif
 #endif
 #endif
-    apr_table_set(conf->accf_map, "http", ACCEPT_FILTER_NAME);
-    apr_table_set(conf->accf_map, "https", "dataready");
+
+#ifdef __FreeBSD_version
+#ifdef ACCEPT_FILTER_SYSCTL_NAME
+{
+    #define ACCEPT_FILTER_SYSCTL_NAME
"net.inet.accf.http.parsehttpversion"
+    unsigned int version;
+    if ((sysctlbyname(ACCEPT_FILTER_SYSCTL_NAME, (void *)&version,
sizeof(version), NULL, 0)) || (version<1))
+    {
+
+         ap_log_perror(APLOG_MARK, APLOG_STARTUP, 0,
+                         cmd->pool,
+                         "Warning: "Kernel module accf_http not loaded; "
+                          ACCEPT_FILTER_NAME " disabled.");
+    } else {
+ #endif
+ #endif
+    {
+       apr_table_set(conf->accf_map, "http", ACCEPT_FILTER_NAME);
+       apr_table_set(conf->accf_map, "https", "dataready");
+    }
+#endif

     conf->trace_enable = AP_TRACE_UNSET;


Mime
View raw message