Commit 729edadb authored by Jeff Trawick's avatar Jeff Trawick
Browse files

Get rid of ap_new_apr_connection(). ap_new_connection() now has

fewer parameters: the local and remote socket addresses were removed
from the parameter list because all required information is available
via the APR socket.

I haven't tested the most important part -- the WinNT MPM changes
-- but it compiles and it looks okay :)  If the WinNT MPM works on
Win98 these days let me know.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@87181 13f79535-47bb-0310-9956-ffa450edef68
parent 294fc14f
Loading
Loading
Loading
Loading
+1 −16
Original line number Diff line number Diff line
@@ -72,25 +72,10 @@ extern "C" {
 * @param p Pool to allocate data structures out of
 * @param server The server to create the connection for
 * @param inout The socket to use for all communication with the client
 * @param remaddr The remote address
 * @param addr The server's local address
 * @param id ID of this connection; unique at any point in time.
 */
conn_rec *ap_new_connection(apr_pool_t *p, server_rec *server, 
                            apr_socket_t *inout,
			    const struct sockaddr_in *remaddr,
			    const struct sockaddr_in *saddr, long id);

/**
 * Create a new connection using APR primitives.  This is basically a
 * wrapper around ap_new_connection
 * @param p Pool to allocate data structures out of.
 * @param server The server to create the connection for
 * @param conn_socket The socket we are creating the connection on.
 * @param id ID of this connection; unique at any point in time.
 */
conn_rec *ap_new_apr_connection(apr_pool_t *p, server_rec *server, 
                                apr_socket_t *conn_socket, long id);
                            apr_socket_t *inout, long id);

/**
 * This is the protocol module driver.  This calls all of the
+1 −1
Original line number Diff line number Diff line
@@ -276,7 +276,7 @@ int ap_proxy_http_handler(request_rec *r, char *url,
				desthost, NULL));
    }

    origin = ap_new_apr_connection(r->pool, r->server, sock, 0);
    origin = ap_new_connection(r->pool, r->server, sock, 0);
    ap_add_output_filter("CORE", NULL, NULL, origin);

    clear_connection(r->pool, r->headers_in);	/* Strip connection-based headers */
+3 −18
Original line number Diff line number Diff line
@@ -269,9 +269,7 @@ int ap_process_http_connection(conn_rec *c)
*/

conn_rec *ap_new_connection(apr_pool_t *p, server_rec *server, 
                            apr_socket_t *inout,
			    const struct sockaddr_in *remaddr,
			    const struct sockaddr_in *saddr, long id)
                            apr_socket_t *inout, long id)
{
    conn_rec *conn = (conn_rec *) apr_pcalloc(p, sizeof(conn_rec));
    apr_sockaddr_t *sa;
@@ -284,29 +282,16 @@ conn_rec *ap_new_connection(apr_pool_t *p, server_rec *server,
    conn->notes = apr_make_table(p, 5);

    conn->pool = p;
    conn->local_addr = *saddr;
    apr_get_sockaddr(&sa, APR_LOCAL, inout);
    conn->local_addr = sa->sa.sin;
    apr_get_ipaddr(&conn->local_ip, sa);
    conn->base_server = server;
    conn->client_socket = inout;

    conn->remote_addr = *remaddr;
    apr_get_sockaddr(&sa, APR_REMOTE, inout);
    conn->remote_addr = sa->sa.sin;
    apr_get_ipaddr(&conn->remote_ip, sa);   
    conn->id = id;

    return conn;
}



conn_rec *ap_new_apr_connection(apr_pool_t *p, server_rec *server, 
                                apr_socket_t *conn_socket, long id)
{
    apr_sockaddr_t *sa_local, *sa_remote;

    apr_get_sockaddr(&sa_local, APR_LOCAL, conn_socket);
    apr_get_sockaddr(&sa_remote, APR_REMOTE, conn_socket);
    return ap_new_connection(p, server, conn_socket, 
                             &sa_remote->sa.sin, &sa_local->sa.sin, id);
}
+1 −2
Original line number Diff line number Diff line
@@ -320,8 +320,7 @@ static void process_socket(apr_pool_t *p, apr_socket_t *sock, int my_child_num)
	    return;
    }
    
    current_conn = ap_new_apr_connection(p, ap_server_conf, sock, 
                                         conn_id);
    current_conn = ap_new_connection(p, ap_server_conf, sock, conn_id);

    ap_process_connection(current_conn);
    ap_lingering_close(current_conn);
+1 −2
Original line number Diff line number Diff line
@@ -414,8 +414,7 @@ static void process_socket(apr_pool_t *p, apr_socket_t *sock, long conn_id)

    ap_sock_disable_nagle(sock);

    current_conn = ap_new_apr_connection(p, ap_server_conf, sock,
                                         conn_id);
    current_conn = ap_new_connection(p, ap_server_conf, sock, conn_id);

    ap_process_connection(current_conn);
    ap_lingering_close(current_conn);
Loading