Commit c728ad90 authored by Ryan Bloom's avatar Ryan Bloom
Browse files

Modify a couple of calls to ap_log_error with a NULL server to use

ap_log_perror, and pass a pool.  The keeps us from seg faulting if the
error log hasn't been opened yet.


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@87565 13f79535-47bb-0310-9956-ffa450edef68
parent b8939e98
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -1195,7 +1195,7 @@ static const char *set_document_root(cmd_parms *cmd, void *dummy,
    arg = ap_os_canonical_filename(cmd->pool, arg);
    if (/* TODO: ap_configtestonly && ap_docrootcheck && */ !ap_is_directory(arg)) {
	if (cmd->server->is_virtual) {
	    ap_log_error(APLOG_MARK, APLOG_STARTUP | APLOG_NOERRNO, 0, NULL,
	    ap_log_perror(APLOG_MARK, APLOG_STARTUP | APLOG_NOERRNO, 0, cmd->pool,
                         "Warning: DocumentRoot [%s] does not exist",
		         arg);
	}
+6 −5
Original line number Diff line number Diff line
@@ -186,7 +186,8 @@ static apr_status_t unload_module(void *data)

    /* unload the module space itself */
    if ((status = apr_dso_unload(modi->modp->dynamic_load_handle)) != APR_SUCCESS) {
        ap_log_error(APLOG_MARK, APLOG_WARNING|APLOG_NOERRNO, 0, NULL,
        ap_log_perror(APLOG_MARK, APLOG_WARNING|APLOG_NOERRNO, 0, 
                      APR_GET_POOL(modi->modp->dynamic_load_handle),
		      "dso unload failure");
        return status;
    }
@@ -263,7 +264,7 @@ static const char *load_module(cmd_parms *cmd, void *dummy,
			  apr_dso_error(modhandle, my_error, sizeof(my_error)),
			  NULL);
    }
    ap_log_error(APLOG_MARK, APLOG_DEBUG|APLOG_NOERRNO, 0, NULL,
    ap_log_perror(APLOG_MARK, APLOG_DEBUG|APLOG_NOERRNO, 0, cmd->pool,
		 "loaded module %s", modname);

    /*
@@ -347,7 +348,7 @@ static const char *load_file(cmd_parms *cmd, void *dummy, const char *filename)

static const char *load_file(cmd_parms *cmd, void *dummy, const char *filename)
{
    ap_log_error(APLOG_MARK, APLOG_STARTUP | APLOG_NOERRNO, 0, NULL, 
    ap_log_perror(APLOG_MARK, APLOG_STARTUP | APLOG_NOERRNO, 0, cmd->pool, 
                 "WARNING: LoadFile not supported on this platform");
    return NULL;
}
@@ -355,7 +356,7 @@ static const char *load_file(cmd_parms *cmd, void *dummy, const char *filename)
static const char *load_module(cmd_parms *cmd, void *dummy, 
	                       const char *modname, const char *filename)
{
    ap_log_error(APLOG_MARK, APLOG_STARTUP | APLOG_NOERRNO, 0, NULL, 
    ap_log_perror(APLOG_MARK, APLOG_STARTUP | APLOG_NOERRNO, 0, cmd->pool, 
                 "WARNING: LoadModule not supported on this platform");
    return NULL;
}
+7 −7
Original line number Diff line number Diff line
@@ -90,7 +90,7 @@ static apr_status_t make_sock(apr_pool_t *p, ap_listen_rec *server)

    stat = apr_setsocketopt(s, APR_SO_REUSEADDR, one);
    if (stat != APR_SUCCESS && stat != APR_ENOTIMPL) {
	ap_log_error(APLOG_MARK, APLOG_CRIT, stat, NULL,
	ap_log_perror(APLOG_MARK, APLOG_CRIT, stat, p,
		    "make_sock: for address %pI, setsockopt: (SO_REUSEADDR)", 
                     server->bind_addr);
	apr_close_socket(s);
@@ -99,7 +99,7 @@ static apr_status_t make_sock(apr_pool_t *p, ap_listen_rec *server)
    
    stat = apr_setsocketopt(s, APR_SO_KEEPALIVE, one);
    if (stat != APR_SUCCESS && stat != APR_ENOTIMPL) {
	ap_log_error(APLOG_MARK, APLOG_CRIT, stat, NULL,
	ap_log_perror(APLOG_MARK, APLOG_CRIT, stat, p,
		    "make_sock: for address %pI, setsockopt: (SO_KEEPALIVE)", 
                     server->bind_addr);
	apr_close_socket(s);
@@ -128,7 +128,7 @@ static apr_status_t make_sock(apr_pool_t *p, ap_listen_rec *server)
    if (send_buffer_size) {
	stat = apr_setsocketopt(s, APR_SO_SNDBUF,  send_buffer_size);
        if (stat != APR_SUCCESS && stat != APR_ENOTIMPL) {
            ap_log_error(APLOG_MARK, APLOG_WARNING, stat, NULL,
            ap_log_perror(APLOG_MARK, APLOG_WARNING, stat, p,
			"make_sock: failed to set SendBufferSize for "
                         "address %pI, using default", 
                         server->bind_addr);
@@ -141,7 +141,7 @@ static apr_status_t make_sock(apr_pool_t *p, ap_listen_rec *server)
#endif

    if ((stat = apr_bind(s, server->bind_addr)) != APR_SUCCESS) {
	ap_log_error(APLOG_MARK, APLOG_CRIT, stat, NULL,
	ap_log_perror(APLOG_MARK, APLOG_CRIT, stat, p,
                     "make_sock: could not bind to address %pI", 
                     server->bind_addr);
	apr_close_socket(s);
@@ -149,7 +149,7 @@ static apr_status_t make_sock(apr_pool_t *p, ap_listen_rec *server)
    }

    if ((stat = apr_listen(s, ap_listenbacklog)) != APR_SUCCESS) {
	ap_log_error(APLOG_MARK, APLOG_ERR, stat, NULL,
	ap_log_perror(APLOG_MARK, APLOG_ERR, stat, p,
	    "make_sock: unable to listen for connections on address %pI", 
                     server->bind_addr);
	apr_close_socket(s);
@@ -242,13 +242,13 @@ static void alloc_listener(process_rec *process, char *addr, apr_port_t port)
    new->active = 0;
    if ((status = apr_getaddrinfo(&new->bind_addr, addr, APR_UNSPEC, port, 0, 
                                  process->pool)) != APR_SUCCESS) {
        ap_log_error(APLOG_MARK, APLOG_CRIT, status, NULL,
        ap_log_perror(APLOG_MARK, APLOG_CRIT, status, process->pool,
                     "alloc_listener: failed to set up sockaddr for %s", addr);
        return;
    }
    if ((status = apr_create_socket(&new->sd, new->bind_addr->sa.sin.sin_family, 
                                    SOCK_STREAM, process->pool)) != APR_SUCCESS) {
        ap_log_error(APLOG_MARK, APLOG_CRIT, status, NULL,
        ap_log_perror(APLOG_MARK, APLOG_CRIT, status, process->pool,
                     "alloc_listener: failed to get a socket for %s", addr);
        return;
    }