--- httpd-2.3.4-alpha/srclib/apr/include/arch/unix/apr_arch_networkio.h.orig 2006-08-03 03:55:31.000000000 -0700 +++ httpd-2.3.4-alpha/srclib/apr/include/arch/unix/apr_arch_networkio.h 2009-12-09 17:16:19.000000000 -0800 @@ -52,6 +52,9 @@ #if APR_HAVE_NETINET_TCP_H #include #endif +#if APR_HAVE_NETINET_IP_H +#include +#endif #if APR_HAVE_NETINET_SCTP_UIO_H #include #endif --- httpd-2.3.4-alpha/srclib/apr/include/apr_network_io.h.orig 2009-10-16 14:08:15.000000000 -0700 +++ httpd-2.3.4-alpha/srclib/apr/include/apr_network_io.h 2009-12-09 17:01:19.000000000 -0800 @@ -99,6 +99,8 @@ extern "C" { * until data is available. * @see apr_socket_accept_filter */ +#define APR_SO_IPTOS 65536 /**< Set IP ToS markings on traffic. + */ /** @} */ --- httpd-2.3.4-alpha/srclib/apr/network_io/unix/sockopt.c.orig 2006-08-03 03:55:31.000000000 -0700 +++ httpd-2.3.4-alpha/srclib/apr/network_io/unix/sockopt.c 2009-12-09 17:12:39.000000000 -0800 @@ -318,6 +318,19 @@ apr_status_t apr_socket_opt_set(apr_sock return APR_ENOTIMPL; #endif break; + case APR_SO_IPTOS: +#if defined(HAVE_SOL_IP_H) +# if defined(HAVE_SOL_IP) + if (setsockopt(sock->socketdes, SOL_IP, IP_TOS, (void *)&on, sizeof(int)) == -1) { +# else + if (setsockopt(sock->socketdes, IPPROTO_IP, IP_TOS, (void *)&on, sizeof(int)) == -1) { +# endif + return errno; + } +#else + return APR_ENOTIMPL; +#endif + break; default: return APR_EINVAL; }