diff -r dddec13add5d apache2/mod_scgi.c
--- a/apache2/mod_scgi.c	Tue Jan 06 13:05:13 2009 +0900
+++ b/apache2/mod_scgi.c	Tue Jan 06 14:36:00 2009 +0900
@@ -246,7 +246,7 @@
     apr_size_t n;
     while (len > 0) {
         n = len;
-        if ((rv = apr_send(sock, buf, &n))) return rv;
+        if ((rv = apr_socket_send(sock, buf, &n))) return rv;
         buf += n;
         len -= n;
     }
@@ -308,7 +308,7 @@
     int i;
     apr_status_t rv = 0;
     apr_port_t  port = 0;
-    apr_sockaddr_port_get(&port, r->connection->remote_addr);
+    port = r->connection->remote_addr->port;
 
     log_debug(APLOG_MARK,r, "sending headers");
     t = apr_table_make(r->pool, 40);
@@ -441,7 +441,7 @@
 
  restart:
     *sock = NULL;
-    rv = apr_socket_create(sock, sockaddr->family, SOCK_STREAM, r->pool);
+    rv = apr_socket_create(sock, sockaddr->family, SOCK_STREAM, APR_PROTO_TCP, r->pool);
     if (rv) {
         log_err(APLOG_MARK, r, rv, "apr_socket_create() error");
         return rv;
