--- /dev/null
+diff -ur mod_mono-2.10/configure.in mod_mono-2.10-apache24/configure.in
+--- mod_mono-2.10/configure.in 2013-05-05 21:17:12.794820781 +0200
++++ mod_mono-2.10-apache24/configure.in 2013-05-05 21:14:23.924822003 +0200
+@@ -330,7 +330,7 @@
+ #include <ap_release.h>
+ int main ()
+ {
+- return (AP_SERVER_MAJORVERSION_NUMBER == 2 && AP_SERVER_MINORVERSION_NUMBER == 2) ? 0 : 1;
++ return (AP_SERVER_MAJORVERSION_NUMBER == 2 && AP_SERVER_MINORVERSION_NUMBER >= 2) ? 0 : 1;
+ }
+ ], [
+ APACHE_VER=2.2
+diff -ur mod_mono-2.10/src/mod_mono.c mod_mono-2.10-apache24/src/mod_mono.c
+--- mod_mono-2.10/src/mod_mono.c 2011-01-13 23:32:35.000000000 +0100
++++ mod_mono-2.10-apache24/src/mod_mono.c 2013-05-05 21:16:46.081487640 +0200
+@@ -386,7 +386,7 @@
+ apache_get_userid ()
+ {
+ #ifdef HAVE_UNIXD
+- return unixd_config.user_id;
++ return ap_unixd_config.user_id;
+ #else
+ return ap_user_id;
+ #endif
+@@ -396,7 +396,7 @@
+ apache_get_groupid ()
+ {
+ #ifdef HAVE_UNIXD
+- return unixd_config.group_id;
++ return ap_unixd_config.group_id;
+ #else
+ return ap_group_id;
+ #endif
+@@ -406,7 +406,7 @@
+ apache_get_username ()
+ {
+ #ifdef HAVE_UNIXD
+- return unixd_config.user_name;
++ return ap_unixd_config.user_name;
+ #else
+ return ap_user_name;
+ #endif
+@@ -485,7 +485,7 @@
+
+ #if defined (AP_NEED_SET_MUTEX_PERMS) && defined (HAVE_UNIXD)
+ DEBUG_PRINT (1, "Setting mutex permissions for %s", xsp->dashboard_lock_file);
+- rv = unixd_set_global_mutex_perms (xsp->dashboard_mutex);
++ rv = ap_unixd_set_global_mutex_perms (xsp->dashboard_mutex);
+ if (rv != APR_SUCCESS) {
+ ap_log_error (APLOG_MARK, APLOG_CRIT, STATCODE_AND_SERVER (rv),
+ "Failed to set mutex permissions for %s",
+@@ -845,10 +845,10 @@
+ }
+
+ static int
+-connection_get_remote_port (conn_rec *c)
++connection_get_remote_port (request_rec *r)
+ {
+ #if defined(APACHE22)
+- return c->remote_addr->port;
++ return r->useragent_addr->port;
+ #else
+ apr_port_t port;
+ apr_sockaddr_port_get (&port, c->remote_addr);
+@@ -1978,7 +1978,7 @@
+
+ size += sizeof (int32_t);
+
+- info.remote_ip_len = strlen (r->connection->remote_ip);
++ info.remote_ip_len = strlen (r->connection->client_ip);
+ size += info.remote_ip_len + sizeof (int32_t);
+
+ size += sizeof (int32_t);
+@@ -2026,8 +2026,8 @@
+ i = LE_FROM_INT (i);
+ memcpy (ptr, &i, sizeof (i));
+ ptr += sizeof (int32_t);
+- ptr += write_string_to_buffer (ptr, 0, r->connection->remote_ip, info.remote_ip_len);
+- i = connection_get_remote_port (r->connection);
++ ptr += write_string_to_buffer (ptr, 0, r->connection->client_ip, info.remote_ip_len);
++ i = connection_get_remote_port (r);
+ i = LE_FROM_INT (i);
+ memcpy (ptr, &i, sizeof (i));
+ ptr += sizeof (int32_t);