X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=apache-mod_fastcgi-apr1.patch;h=6c15d6cd31f65d014703782aee63cc3556453e52;hb=ebb9c1bc5be2d87fff97527524b097fd42e83337;hp=bcbc5cc5e21d9292d992e4b69f5b797c0f3336c9;hpb=be58b6e3bdb4c52a6ffd22606689c3bb55ccd895;p=packages%2Fapache-mod_fastcgi.git diff --git a/apache-mod_fastcgi-apr1.patch b/apache-mod_fastcgi-apr1.patch index bcbc5cc..6c15d6c 100644 --- a/apache-mod_fastcgi-apr1.patch +++ b/apache-mod_fastcgi-apr1.patch @@ -1,24 +1,1252 @@ +diff -urN mod_fastcgi-2.4.2.org/fcgi_buf.c mod_fastcgi-2.4.2/fcgi_buf.c +--- mod_fastcgi-2.4.2.org/fcgi_buf.c 2004-10-06 20:30:46.335894544 +0200 ++++ mod_fastcgi-2.4.2/fcgi_buf.c 2004-10-06 21:53:04.248062670 +0200 +@@ -50,7 +50,7 @@ + { + Buffer *buf; + +- buf = (Buffer *)ap_pcalloc(p, sizeof(Buffer) + size); ++ buf = (Buffer *)apr_pcalloc(p, sizeof(Buffer) + size); + buf->size = size; + fcgi_buf_reset(buf); + return buf; +@@ -487,7 +487,7 @@ + char *new_elts; + int new_nalloc = (arr->nalloc <= 0) ? n : arr->nelts + n; + +- new_elts = ap_pcalloc(arr->pool, arr->elt_size * new_nalloc); ++ new_elts = apr_pcalloc(arr->pool, arr->elt_size * new_nalloc); + memcpy(new_elts, arr->elts, arr->nelts * arr->elt_size); + + arr->elts = new_elts; +diff -urN mod_fastcgi-2.4.2.org/fcgi_config.c mod_fastcgi-2.4.2/fcgi_config.c +--- mod_fastcgi-2.4.2.org/fcgi_config.c 2004-10-06 20:30:46.336894330 +0200 ++++ mod_fastcgi-2.4.2/fcgi_config.c 2004-10-06 21:53:04.253061599 +0200 +@@ -50,7 +50,7 @@ + /* Convert port number */ + tmp = (u_short) strtol(portStr, &cvptr, 10); + if (*cvptr != '\0' || tmp < 1 || tmp > USHRT_MAX) +- return ap_pstrcat(p, "bad port number \"", portStr, "\"", NULL); ++ return apr_pstrcat(p, "bad port number \"", portStr, "\"", NULL); + + *port = (unsigned short) tmp; + +@@ -75,11 +75,11 @@ + tmp = strtol(txt, &ptr, 10); + + if (*ptr != '\0') { +- return ap_pstrcat(p, "\"", txt, "\" must be a positive integer", NULL); ++ return apr_pstrcat(p, "\"", txt, "\" must be a positive integer", NULL); + } + + if (tmp < min || tmp > USHRT_MAX) { +- return ap_psprintf(p, "\"%u\" must be >= %u and < %u", *num, min, USHRT_MAX); ++ return apr_psprintf(p, "\"%u\" must be >= %u and < %u", *num, min, USHRT_MAX); + } + + *num = (u_short) tmp; +@@ -101,11 +101,11 @@ + + if (*cp != '\0') + { +- return ap_pstrcat(p, "can't parse ", "\"", val, "\"", NULL); ++ return apr_pstrcat(p, "can't parse ", "\"", val, "\"", NULL); + } + else if (*num < min) + { +- return ap_psprintf(p, "\"%d\" must be >= %d", *num, min); ++ return apr_psprintf(p, "\"%d\" must be >= %d", *num, min); + } + + return NULL; +@@ -126,9 +126,9 @@ + *num = (u_int)strtol(val, &ptr, 10); + + if (*ptr != '\0') +- return ap_pstrcat(p, "\"", val, "\" must be a positive integer", NULL); ++ return apr_pstrcat(p, "\"", val, "\" must be a positive integer", NULL); + else if (*num < min) +- return ap_psprintf(p, "\"%u\" must be >= %u", *num, min); ++ return apr_psprintf(p, "\"%u\" must be >= %u", *num, min); + return NULL; + } + +@@ -147,9 +147,9 @@ + *num = (float) strtod(val, &ptr); + + if (*ptr != '\0') +- return ap_pstrcat(p, "\"", val, "\" is not a floating point number", NULL); ++ return apr_pstrcat(p, "\"", val, "\" is not a floating point number", NULL); + if (*num < min || *num > max) +- return ap_psprintf(p, "\"%f\" is not between %f and %f", *num, min, max); ++ return apr_psprintf(p, "\"%f\" is not between %f and %f", *num, min, max); + return NULL; + } + +@@ -160,7 +160,7 @@ + } + + if (strchr(var, '=') == NULL) { +- *(envp + *envc) = ap_pstrcat(p, var, "=", getenv(var), NULL); ++ *(envp + *envc) = apr_pstrcat(p, var, "=", getenv(var), NULL); + } + else { + *(envp + *envc) = var; +@@ -191,10 +191,10 @@ + const char **header; + + if (!*array) { +- *array = ap_make_array(p, 10, sizeof(char*)); ++ *array = apr_array_make(p, 10, sizeof(char*)); + } + +- header = (const char **)ap_push_array(*array); ++ header = (const char **)apr_array_push(*array); + *header = ap_getword_conf(p, arg); + + return header ? NULL : "\"\""; +@@ -206,7 +206,7 @@ + static const char *invalid_value(pool *p, const char *cmd, const char *id, + const char *opt, const char *err) + { +- return ap_psprintf(p, "%s%s%s: invalid value for %s: %s", ++ return apr_psprintf(p, "%s%s%s: invalid value for %s: %s", + cmd, id ? " " : "", id ? id : "", opt, err); + } + +@@ -334,7 +334,7 @@ + if (mkdir(path, S_IRWXU) != 0) + #endif + { +- return ap_psprintf(tp, ++ return apr_psprintf(tp, + "doesn't exist and can't be created: %s", + strerror(errno)); + } +@@ -342,7 +342,7 @@ + #ifndef WIN32 + /* If we're root, we're gonna setuid/setgid so we need to chown */ + if (geteuid() == 0 && chown(path, ap_user_id, ap_group_id) != 0) { +- return ap_psprintf(tp, ++ return apr_psprintf(tp, + "can't chown() to the server (uid %ld, gid %ld): %s", + (long)ap_user_id, (long)ap_group_id, strerror(errno)); + } +@@ -361,7 +361,7 @@ + fcgi_user_id, fcgi_group_id); + #endif + if (err != NULL) { +- return ap_psprintf(tp, ++ return apr_psprintf(tp, + "access for server (uid %ld, gid %ld) failed: %s", + (long)fcgi_user_id, (long)fcgi_group_id, err); + } +@@ -379,10 +379,10 @@ + const char *err; + pool *tp; + +- fcgi_dynamic_dir = ap_pstrcat(p, fcgi_socket_dir, "/dynamic", NULL); ++ fcgi_dynamic_dir = apr_pstrcat(p, fcgi_socket_dir, "/dynamic", NULL); + + if ((err = fcgi_config_make_dir(p, fcgi_dynamic_dir))) +- return ap_psprintf(p, "can't create dynamic directory \"%s\": %s", fcgi_dynamic_dir, err); ++ return apr_psprintf(p, "can't create dynamic directory \"%s\": %s", fcgi_dynamic_dir, err); + + /* Don't step on a running server unless its OK. */ + if (!wax) +@@ -419,8 +419,8 @@ + + dp = ap_popendir(tp, fcgi_dynamic_dir); + if (dp == NULL) { +- ap_destroy_pool(tp); +- return ap_psprintf(p, "can't open dynamic directory \"%s\": %s", ++ apr_pool_destroy(tp); ++ return apr_psprintf(p, "can't open dynamic directory \"%s\": %s", + fcgi_dynamic_dir, strerror(errno)); + } + +@@ -431,13 +431,13 @@ + if (strcmp(dirp->d_name, ".") == 0 || strcmp(dirp->d_name, "..") == 0) + continue; + +- unlink(ap_pstrcat(tp, fcgi_dynamic_dir, "/", dirp->d_name, NULL)); ++ unlink(apr_pstrcat(tp, fcgi_dynamic_dir, "/", dirp->d_name, NULL)); + } + } + + #endif /* !APACHE2 */ + +- ap_destroy_pool(tp); ++ apr_pool_destroy(tp); + + return NULL; + } +@@ -461,27 +461,27 @@ + } + + if (fcgi_socket_dir) { +- return ap_psprintf(tp, "%s %s: already defined as \"%s\"", ++ return apr_psprintf(tp, "%s %s: already defined as \"%s\"", + name, arg, fcgi_socket_dir); + } + + err = fcgi_config_set_fcgi_uid_n_gid(1); + if (err != NULL) +- return ap_psprintf(tp, "%s %s: %s", name, arg, err); ++ return apr_psprintf(tp, "%s %s: %s", name, arg, err); + + if (fcgi_servers != NULL) { +- return ap_psprintf(tp, ++ return apr_psprintf(tp, + "The %s command must preceed static FastCGI server definitions", + name); + } + +- arg_nc = ap_pstrdup(cmd->pool, arg); ++ arg_nc = apr_pstrdup(cmd->pool, arg); + + #ifndef WIN32 + + #ifdef APACHE2 + if (apr_filepath_merge(&arg_nc, "", arg, 0, cmd->pool)) +- return ap_psprintf(tp, "%s %s: invalid filepath", name, arg); ++ return apr_psprintf(tp, "%s %s: invalid filepath", name, arg); + #else + arg_nc = ap_os_canonical_filename(cmd->pool, arg_nc); + #endif +@@ -491,22 +491,22 @@ + #else /* WIN32 */ + + if (strncmp(arg_nc, "\\\\.\\pipe\\", 9) != 0) +- return ap_psprintf(tp, "%s %s is invalid format",name, arg_nc); ++ return apr_psprintf(tp, "%s %s is invalid format",name, arg_nc); + + #endif + + fcgi_socket_dir = arg_nc; + + #ifdef WIN32 +- fcgi_dynamic_dir = ap_pstrcat(cmd->pool, fcgi_socket_dir, "dynamic", NULL); ++ fcgi_dynamic_dir = apr_pstrcat(cmd->pool, fcgi_socket_dir, "dynamic", NULL); + #else + err = fcgi_config_make_dir(tp, fcgi_socket_dir); + if (err != NULL) +- return ap_psprintf(tp, "%s %s: %s", name, arg_nc, err); ++ return apr_psprintf(tp, "%s %s: %s", name, arg_nc, err); + + err = fcgi_config_make_dynamic_dir(cmd->pool, 0); + if (err != NULL) +- return ap_psprintf(tp, "%s %s: %s", name, arg_nc, err); ++ return apr_psprintf(tp, "%s %s: %s", name, arg_nc, err); + #endif + + return NULL; +@@ -519,7 +519,7 @@ + const char *fcgi_config_set_wrapper(cmd_parms *cmd, void *dummy, const char *arg) + { + #ifdef WIN32 +- return ap_psprintf(cmd->temp_pool, ++ return apr_psprintf(cmd->temp_pool, + "the %s directive is not supported on WIN", cmd->cmd->name); + #else + +@@ -536,16 +536,16 @@ + + if (fcgi_wrapper) + { +- return ap_psprintf(tp, "%s was already set to \"%s\"", ++ return apr_psprintf(tp, "%s was already set to \"%s\"", + name, fcgi_wrapper); + } + + err = fcgi_config_set_fcgi_uid_n_gid(1); + if (err != NULL) +- return ap_psprintf(tp, "%s %s: %s", name, arg, err); ++ return apr_psprintf(tp, "%s %s: %s", name, arg, err); + + if (fcgi_servers != NULL) { +- return ap_psprintf(tp, ++ return apr_psprintf(tp, + "The %s command must preceed static FastCGI server definitions", name); + } + +@@ -562,7 +562,7 @@ + { + #ifdef APACHE2 + if (apr_filepath_merge(&wrapper, "", arg, 0, cmd->pool)) +- return ap_psprintf(tp, "%s %s: invalid filepath", name, arg); ++ return apr_psprintf(tp, "%s %s: invalid filepath", name, arg); + #else + wrapper = ap_os_canonical_filename(cmd->pool, (char *) arg); + #endif +@@ -573,7 +573,7 @@ + err = fcgi_util_check_access(tp, wrapper, NULL, X_OK, fcgi_user_id, fcgi_group_id); + if (err) + { +- return ap_psprintf(tp, "%s: \"%s\" execute access for server " ++ return apr_psprintf(tp, "%s: \"%s\" execute access for server " + "(uid %ld, gid %ld) failed: %s", name, wrapper, + (long) fcgi_user_id, (long) fcgi_group_id, err); + } +@@ -596,7 +596,7 @@ + const char *option, *err; + + /* Allocate temp storage for the array of initial environment variables */ +- char **envp = ap_pcalloc(tp, sizeof(char *) * (MAX_INIT_ENV_VARS + 3)); ++ char **envp = apr_pcalloc(tp, sizeof(char *) * (MAX_INIT_ENV_VARS + 3)); + unsigned int envc = 0; + + #ifdef WIN32 +@@ -613,11 +613,11 @@ + return "AppClass requires a pathname!?"; + + if ((err = fcgi_config_set_fcgi_uid_n_gid(1)) != NULL) +- return ap_psprintf(tp, "%s %s: %s", name, fs_path, err); ++ return apr_psprintf(tp, "%s %s: %s", name, fs_path, err); + + #ifdef APACHE2 + if (apr_filepath_merge(&fs_path, "", fs_path, 0, p)) +- return ap_psprintf(tp, "%s %s: invalid filepath", name, fs_path); ++ return apr_psprintf(tp, "%s %s: invalid filepath", name, fs_path); + #else + fs_path = ap_os_canonical_filename(p, fs_path); + #endif +@@ -631,14 +631,14 @@ + fcgi_util_get_server_gid(cmd->server)); + if (s != NULL) { + if (fcgi_wrapper) { +- return ap_psprintf(tp, ++ return apr_psprintf(tp, + "%s: redefinition of a previously defined FastCGI " + "server \"%s\" with uid=%ld and gid=%ld", + name, fs_path, (long) fcgi_util_get_server_uid(cmd->server), + (long) fcgi_util_get_server_gid(cmd->server)); + } + else { +- return ap_psprintf(tp, ++ return apr_psprintf(tp, + "%s: redefinition of a previously defined FastCGI server \"%s\"", + name, fs_path); + } +@@ -646,7 +646,7 @@ + + err = fcgi_util_fs_is_path_ok(tp, fs_path, NULL); + if (err != NULL) { +- return ap_psprintf(tp, "%s: \"%s\" %s", name, fs_path, err); ++ return apr_psprintf(tp, "%s: \"%s\" %s", name, fs_path, err); + } + + s = fcgi_util_fs_new(p); +@@ -672,7 +672,7 @@ + + SetHandleInformation(mutex, HANDLE_FLAG_INHERIT, TRUE); + +- s->mutex_env_string = ap_psprintf(p, "_FCGI_MUTEX_=%ld", mutex); ++ s->mutex_env_string = apr_psprintf(p, "_FCGI_MUTEX_=%ld", mutex); + + #endif + +@@ -730,7 +730,7 @@ + } + else if (strcasecmp(option, "-user") == 0) { + #ifdef WIN32 +- return ap_psprintf(tp, ++ return apr_psprintf(tp, + "%s %s: the -user option isn't supported on WIN", name, fs_path); + #else + s->user = ap_getword_conf(tp, &arg); +@@ -740,7 +740,7 @@ + } + else if (strcasecmp(option, "-group") == 0) { + #ifdef WIN32 +- return ap_psprintf(tp, ++ return apr_psprintf(tp, + "%s %s: the -group option isn't supported on WIN", name, fs_path); + #else + s->group = ap_getword_conf(tp, &arg); +@@ -749,7 +749,7 @@ + #endif + } + else { +- return ap_psprintf(tp, "%s %s: invalid option: %s", name, fs_path, option); ++ return apr_psprintf(tp, "%s %s: invalid option: %s", name, fs_path, option); + } + } /* while */ + +@@ -758,12 +758,12 @@ + { + if (s->group == NULL) + { +- s->group = ap_psprintf(tp, "#%ld", fcgi_util_get_server_gid(cmd->server)); ++ s->group = apr_psprintf(tp, "#%ld", fcgi_util_get_server_gid(cmd->server)); + } + + if (s->user == NULL) + { +- s->user = ap_psprintf(p, "#%ld", fcgi_util_get_server_uid(cmd->server)); ++ s->user = apr_psprintf(p, "#%ld", fcgi_util_get_server_uid(cmd->server)); + } + + s->uid = ap_uname2id(s->user); +@@ -777,19 +777,19 @@ + + if ((err = fcgi_util_fs_set_uid_n_gid(p, s, s->uid, s->gid))) + { +- return ap_psprintf(tp, ++ return apr_psprintf(tp, + "%s %s: invalid user or group: %s", name, fs_path, err); + } + #endif /* !WIN32 */ + + if (s->socket_path != NULL && s->port != 0) { +- return ap_psprintf(tp, ++ return apr_psprintf(tp, + "%s %s: -port and -socket are mutually exclusive options", + name, fs_path); + } + + /* Move env array to a surviving pool */ +- s->envp = (char **)ap_pcalloc(p, sizeof(char *) * (envc + 4)); ++ s->envp = (char **)apr_pcalloc(p, sizeof(char *) * (envc + 4)); + memcpy(s->envp, envp, sizeof(char *) * envc); + + /* Initialize process structs */ +@@ -800,12 +800,12 @@ + err = fcgi_util_socket_make_inet_addr(p, (struct sockaddr_in **)&s->socket_addr, + &s->socket_addr_len, NULL, s->port); + if (err != NULL) +- return ap_psprintf(tp, "%s %s: %s", name, fs_path, err); ++ return apr_psprintf(tp, "%s %s: %s", name, fs_path, err); + #ifdef WIN32 + err = fcgi_util_socket_make_inet_addr(p, (struct sockaddr_in **)&s->dest_addr, + &s->socket_addr_len, "localhost", s->port); + if (err != NULL) +- return ap_psprintf(tp, "%s %s: %s", name, fs_path, err); ++ return apr_psprintf(tp, "%s %s: %s", name, fs_path, err); + #endif + } else { + if (s->socket_path == NULL) +@@ -825,7 +825,7 @@ + err = fcgi_util_socket_make_domain_addr(p, (struct sockaddr_un **)&s->socket_addr, + &s->socket_addr_len, s->socket_path); + if (err != NULL) +- return ap_psprintf(tp, "%s %s: %s", name, fs_path, err); ++ return apr_psprintf(tp, "%s %s: %s", name, fs_path, err); + #endif + } + +@@ -853,12 +853,12 @@ + } + + if (!*fs_path) { +- return ap_pstrcat(tp, name, " requires a path and either a -socket or -host option", NULL); ++ return apr_pstrcat(tp, name, " requires a path and either a -socket or -host option", NULL); + } + + #ifdef APACHE2 + if (apr_filepath_merge(&fs_path, "", fs_path, 0, p)) +- return ap_psprintf(tp, "%s %s: invalid filepath", name, fs_path); ++ return apr_psprintf(tp, "%s %s: invalid filepath", name, fs_path); + #else + fs_path = ap_os_canonical_filename(p, fs_path); + #endif +@@ -873,7 +873,7 @@ + fcgi_util_get_server_gid(cmd->server)); + if (s != NULL) { + if (fcgi_wrapper) { +- return ap_psprintf(tp, ++ return apr_psprintf(tp, + "%s: redefinition of a previously defined class \"%s\" " + "with uid=%ld and gid=%ld", + name, fs_path, (long) fcgi_util_get_server_uid(cmd->server), +@@ -881,7 +881,7 @@ + } + else + { +- return ap_psprintf(tp, ++ return apr_psprintf(tp, + "%s: redefinition of previously defined class \"%s\"", name, fs_path); + } + } +@@ -920,7 +920,7 @@ + } + else if (strcasecmp(option, "-user") == 0) { + #ifdef WIN32 +- return ap_psprintf(tp, ++ return apr_psprintf(tp, + "%s %s: the -user option isn't supported on WIN", name, fs_path); + #else + s->user = ap_getword_conf(tp, &arg); +@@ -930,7 +930,7 @@ + } + else if (strcasecmp(option, "-group") == 0) { + #ifdef WIN32 +- return ap_psprintf(tp, ++ return apr_psprintf(tp, + "%s %s: the -group option isn't supported on WIN", name, fs_path); + #else + s->group = ap_getword_conf(tp, &arg); +@@ -939,7 +939,7 @@ + #endif + } + else { +- return ap_psprintf(tp, "%s %s: invalid option: %s", name, fs_path, option); ++ return apr_psprintf(tp, "%s %s: invalid option: %s", name, fs_path, option); + } + } /* while */ + +@@ -949,12 +949,12 @@ + { + if (s->group == NULL) + { +- s->group = ap_psprintf(tp, "#%ld", fcgi_util_get_server_gid(cmd->server)); ++ s->group = apr_psprintf(tp, "#%ld", fcgi_util_get_server_gid(cmd->server)); + } + + if (s->user == NULL) + { +- s->user = ap_psprintf(p, "#%ld", fcgi_util_get_server_uid(cmd->server)); ++ s->user = apr_psprintf(p, "#%ld", fcgi_util_get_server_uid(cmd->server)); + } + + s->uid = ap_uname2id(s->user); +@@ -968,19 +968,19 @@ + + if ((err = fcgi_util_fs_set_uid_n_gid(p, s, s->uid, s->gid))) + { +- return ap_psprintf(tp, ++ return apr_psprintf(tp, + "%s %s: invalid user or group: %s", name, fs_path, err); + } + #endif /* !WIN32 */ + + /* Require one of -socket or -host, but not both */ + if (s->socket_path != NULL && s->port != 0) { +- return ap_psprintf(tp, ++ return apr_psprintf(tp, + "%s %s: -host and -socket are mutually exclusive options", + name, fs_path); + } + if (s->socket_path == NULL && s->port == 0) { +- return ap_psprintf(tp, ++ return apr_psprintf(tp, + "%s %s: -socket or -host option missing", name, fs_path); + } + +@@ -989,7 +989,7 @@ + err = fcgi_util_socket_make_inet_addr(p, (struct sockaddr_in **)&s->socket_addr, + &s->socket_addr_len, s->host, s->port); + if (err != NULL) +- return ap_psprintf(tp, "%s %s: %s", name, fs_path, err); ++ return apr_psprintf(tp, "%s %s: %s", name, fs_path, err); + } else { + + if (fcgi_socket_dir == NULL) +@@ -1006,7 +1006,7 @@ + err = fcgi_util_socket_make_domain_addr(p, (struct sockaddr_un **)&s->socket_addr, + &s->socket_addr_len, s->socket_path); + if (err != NULL) +- return ap_psprintf(tp, "%s %s: %s", name, fs_path, err); ++ return apr_psprintf(tp, "%s %s: %s", name, fs_path, err); + #endif + } + +@@ -1037,7 +1037,7 @@ + + /* Allocate temp storage for an initial environment */ + unsigned int envc = 0; +- char **envp = (char **)ap_pcalloc(tp, sizeof(char *) * (MAX_INIT_ENV_VARS + 3)); ++ char **envp = (char **)apr_pcalloc(tp, sizeof(char *) * (MAX_INIT_ENV_VARS + 3)); + + err = ap_check_cmd_context(cmd, GLOBAL_ONLY); + if (err) +@@ -1131,20 +1131,20 @@ + dynamicFlush = TRUE; + } + else { +- return ap_psprintf(tp, "%s: invalid option: %s", name, option); ++ return apr_psprintf(tp, "%s: invalid option: %s", name, option); + } + } /* while */ + + if (dynamicProcessSlack >= dynamicMaxProcs + 1) { + /* the kill policy would work unexpectedly */ +- return ap_psprintf(tp, ++ return apr_psprintf(tp, + "%s: processSlack (%u) must be less than maxProcesses (%u) + 1", + name, dynamicProcessSlack, dynamicMaxProcs); + } + + /* Move env array to a surviving pool, leave 2 extra slots for + * WIN32 _FCGI_MUTEX_ and _FCGI_SHUTDOWN_EVENT_ */ +- dynamicEnvp = (char **)ap_pcalloc(p, sizeof(char *) * (envc + 4)); ++ dynamicEnvp = (char **)apr_pcalloc(p, sizeof(char *) * (envc + 4)); + memcpy(dynamicEnvp, envp, sizeof(char *) * envc); + + return NULL; +@@ -1152,7 +1152,7 @@ + + void *fcgi_config_create_dir_config(pool *p, char *dummy) + { +- fcgi_dir_config *dir_config = ap_pcalloc(p, sizeof(fcgi_dir_config)); ++ fcgi_dir_config *dir_config = apr_pcalloc(p, sizeof(fcgi_dir_config)); + + dir_config->authenticator_options = FCGI_AUTHORITATIVE; + dir_config->authorizer_options = FCGI_AUTHORITATIVE; +@@ -1171,7 +1171,7 @@ + + #ifdef APACHE2 + if (apr_filepath_merge(&auth_server, "", fs_path, 0, cmd->pool)) +- return ap_psprintf(tp, "%s %s: invalid filepath", cmd->cmd->name, fs_path); ++ return apr_psprintf(tp, "%s %s: invalid filepath", cmd->cmd->name, fs_path); + #else + auth_server = (char *) ap_os_canonical_filename(cmd->pool, fs_path); + #endif +@@ -1184,11 +1184,11 @@ + { + const char *err = fcgi_util_fs_is_path_ok(tp, auth_server, NULL); + if (err) +- return ap_psprintf(tp, "%s: \"%s\" %s", cmd->cmd->name, auth_server, err); ++ return apr_psprintf(tp, "%s: \"%s\" %s", cmd->cmd->name, auth_server, err); + } + + if (compat && strcasecmp(compat, "-compat")) +- return ap_psprintf(cmd->temp_pool, "%s: unknown option: \"%s\"", cmd->cmd->name, compat); ++ return apr_psprintf(cmd->temp_pool, "%s: unknown option: \"%s\"", cmd->cmd->name, compat); + + switch((int)cmd->info) { + case FCGI_AUTH_TYPE_AUTHENTICATOR: +diff -urN mod_fastcgi-2.4.2.org/fcgi_pm.c mod_fastcgi-2.4.2/fcgi_pm.c +--- mod_fastcgi-2.4.2.org/fcgi_pm.c 2004-10-06 20:30:46.337894116 +0200 ++++ mod_fastcgi-2.4.2/fcgi_pm.c 2004-10-06 21:53:04.263059457 +0200 +@@ -225,7 +225,7 @@ + #ifdef WIN32 + errno = WSAGetLastError(); + #endif +- ap_snprintf(port, sizeof(port), "port=%d", ++ apr_snprintf(port, sizeof(port), "port=%d", + ((struct sockaddr_in *)fs->socket_addr)->sin_port); + + ap_log_error(FCGI_LOG_CRIT_ERRNO, fcgi_apache_main_server, +@@ -365,7 +365,7 @@ + if (dnEnd == NULL) { + dirName = "./"; + } else { +- dirName = ap_pcalloc(fcgi_config_pool, dnEnd - fs->fs_path + 1); ++ dirName = apr_pcalloc(fcgi_config_pool, dnEnd - fs->fs_path + 1); + dirName = memcpy(dirName, fs->fs_path, dnEnd - fs->fs_path); + } + if (chdir(dirName) < 0) { +@@ -489,7 +489,7 @@ + + SetHandleInformation(process->terminationEvent, HANDLE_FLAG_INHERIT, TRUE); + +- termination_env_string = ap_psprintf(tp, ++ termination_env_string = apr_psprintf(tp, + "_FCGI_SHUTDOWN_EVENT_=%ld", process->terminationEvent); + + while (fs->envp[i]) i++; +@@ -576,7 +576,7 @@ + fs->envp[i - 1] = NULL; + } + +- ap_destroy_pool(tp); ++ apr_pool_destroy(tp); + + return proc.pid; + +@@ -614,7 +614,7 @@ + } + SetHandleInformation(process->terminationEvent, HANDLE_FLAG_INHERIT, TRUE); + +- termination_env_string = ap_psprintf(tp, ++ termination_env_string = apr_psprintf(tp, + "_FCGI_SHUTDOWN_EVENT_=%ld", process->terminationEvent); + + if (fs->socket_path) +@@ -659,7 +659,7 @@ + "FastCGI: %s is not executable; ensure interpreted scripts have " + "\"#!\" as their first line", + fs->fs_path); +- ap_destroy_pool(tp); ++ apr_pool_destroy(tp); + goto CLEANUP; + } + +@@ -668,9 +668,9 @@ + * the arguments (if there are any). + * Build the command string to pass to CreateProcess. + */ +- quoted_filename = ap_pstrcat(tp, "\"", fs->fs_path, "\"", NULL); ++ quoted_filename = apr_pstrcat(tp, "\"", fs->fs_path, "\"", NULL); + if (interpreter && *interpreter) { +- pCommand = ap_pstrcat(tp, interpreter, " ", quoted_filename, NULL); ++ pCommand = apr_pstrcat(tp, interpreter, " ", quoted_filename, NULL); + } + else { + pCommand = quoted_filename; +@@ -704,7 +704,7 @@ + iEnvBlockLen += strlen(termination_env_string) + 1; + iEnvBlockLen += strlen(fs->mutex_env_string) + 1; + +- pEnvBlock = (char *) ap_pcalloc(tp, iEnvBlockLen); ++ pEnvBlock = (char *) apr_pcalloc(tp, iEnvBlockLen); + + i = 0; + pNext = pEnvBlock; +@@ -744,7 +744,7 @@ + CloseHandle(listen_handle); + } + +- ap_destroy_pool(tp); ++ apr_pool_destroy(tp); + + return pid; + +@@ -1071,10 +1071,10 @@ + s->flush = dynamicFlush; + + #ifdef WIN32 +- s->mutex_env_string = ap_psprintf(sp, "_FCGI_MUTEX_=%ld", mutex); +- s->fs_path = ap_pstrdup(sp, cjob->fs_path); ++ s->mutex_env_string = apr_psprintf(sp, "_FCGI_MUTEX_=%ld", mutex); ++ s->fs_path = apr_pstrdup(sp, cjob->fs_path); + #else +- s->fs_path = ap_pstrdup(sp, execName); ++ s->fs_path = apr_pstrdup(sp, execName); + #endif + ap_getparents(s->fs_path); + ap_no2slash(s->fs_path); +@@ -1094,7 +1094,7 @@ + s->socket_path = fcgi_util_socket_make_path_absolute(sp, s->socket_path, 1); + + /* Create sockaddr, prealloc it so it won't get created in tp */ +- s->socket_addr = ap_pcalloc(sp, sizeof(struct sockaddr_un)); ++ s->socket_addr = apr_pcalloc(sp, sizeof(struct sockaddr_un)); + err = fcgi_util_socket_make_domain_addr(tp, (struct sockaddr_un **)&s->socket_addr, + &s->socket_addr_len, s->socket_path); + if (err) { +@@ -1120,11 +1120,11 @@ + goto BagNewServer; + } + s->uid = pw->pw_uid; +- s->user = ap_pstrdup(sp, user); ++ s->user = apr_pstrdup(sp, user); + s->username = s->user; + + s->gid = pw->pw_gid; +- s->group = ap_psprintf(sp, "%ld", (long)s->gid); ++ s->group = apr_psprintf(sp, "%ld", (long)s->gid); + } + else { + struct passwd *pw; +@@ -1137,11 +1137,11 @@ + execName, (long)s->uid); + goto BagNewServer; + } +- s->user = ap_pstrdup(sp, user); +- s->username = ap_pstrdup(sp, pw->pw_name); ++ s->user = apr_pstrdup(sp, user); ++ s->username = apr_pstrdup(sp, pw->pw_name); + + s->gid = (gid_t)atol(group); +- s->group = ap_pstrdup(sp, group); ++ s->group = apr_pstrdup(sp, group); + } + } + #else +@@ -1340,7 +1340,7 @@ + continue; + + BagNewServer: +- if (sp) ap_destroy_pool(sp); ++ if (sp) apr_pool_destroy(sp); + + #ifdef WIN32 + free(cjob->fs_path); +@@ -1362,7 +1362,7 @@ + } + #endif + +- ap_destroy_pool(tp); ++ apr_pool_destroy(tp); + } + + /* +diff -urN mod_fastcgi-2.4.2.org/fcgi_protocol.c mod_fastcgi-2.4.2/fcgi_protocol.c +--- mod_fastcgi-2.4.2.org/fcgi_protocol.c 2004-10-06 20:30:46.338893902 +0200 ++++ mod_fastcgi-2.4.2/fcgi_protocol.c 2004-10-06 21:53:04.266058814 +0200 +@@ -110,21 +110,21 @@ + char *first, *last; + + if (r->the_request == NULL) +- return (char *) ap_pcalloc(r->pool, 1); ++ return (char *) apr_pcalloc(r->pool, 1); + + first = r->the_request; /* use the request-line */ + +- while (*first && !ap_isspace(*first)) ++ while (*first && !apr_isspace(*first)) + ++first; /* skip over the method */ + +- while (ap_isspace(*first)) ++ while (apr_isspace(*first)) + ++first; /* and the space(s) */ + + last = first; +- while (*last && !ap_isspace(*last)) ++ while (*last && !apr_isspace(*last)) + ++last; /* end at next whitespace */ + +- return ap_pstrndup(r->pool, first, last - first); ++ return apr_pstrndup(r->pool, first, last - first); + } + + /* Based on Apache's ap_add_cgi_vars() in util_script.c. +@@ -135,18 +135,18 @@ + { + table *e = r->subprocess_env; + +- ap_table_setn(e, "GATEWAY_INTERFACE", "CGI/1.1"); +- ap_table_setn(e, "SERVER_PROTOCOL", r->protocol); +- ap_table_setn(e, "REQUEST_METHOD", r->method); +- ap_table_setn(e, "QUERY_STRING", r->args ? r->args : ""); +- ap_table_setn(e, "REQUEST_URI", apache_original_uri(r)); ++ apr_table_setn(e, "GATEWAY_INTERFACE", "CGI/1.1"); ++ apr_table_setn(e, "SERVER_PROTOCOL", r->protocol); ++ apr_table_setn(e, "REQUEST_METHOD", r->method); ++ apr_table_setn(e, "QUERY_STRING", r->args ? r->args : ""); ++ apr_table_setn(e, "REQUEST_URI", apache_original_uri(r)); + + /* The FastCGI spec precludes sending of CONTENT_LENGTH, PATH_INFO, + * PATH_TRANSLATED, and SCRIPT_NAME (for some reason?). PATH_TRANSLATED we + * don't have, its the variable that causes Apache to break trying to set + * up (and thus the reason this fn exists vs. using ap_add_cgi_vars()). */ + if (compat) { +- ap_table_unset(e, "CONTENT_LENGTH"); ++ apr_table_unset(e, "CONTENT_LENGTH"); + return; + } + +@@ -155,17 +155,17 @@ + * args and path_info of the original request, and not any that may have + * come with the script URI in the include command. Ugh. */ + if (!strcmp(r->protocol, "INCLUDED")) { +- ap_table_setn(e, "SCRIPT_NAME", r->uri); ++ apr_table_setn(e, "SCRIPT_NAME", r->uri); + if (r->path_info && *r->path_info) +- ap_table_setn(e, "PATH_INFO", r->path_info); ++ apr_table_setn(e, "PATH_INFO", r->path_info); + } + else if (!r->path_info || !*r->path_info) +- ap_table_setn(e, "SCRIPT_NAME", r->uri); ++ apr_table_setn(e, "SCRIPT_NAME", r->uri); + else { + int path_info_start = ap_find_path_info(r->uri, r->path_info); + +- ap_table_setn(e, "SCRIPT_NAME", ap_pstrndup(r->pool, r->uri, path_info_start)); +- ap_table_setn(e, "PATH_INFO", r->path_info); ++ apr_table_setn(e, "SCRIPT_NAME", apr_pstrndup(r->pool, r->uri, path_info_start)); ++ apr_table_setn(e, "PATH_INFO", r->path_info); + } + } + +@@ -178,9 +178,9 @@ + int i = ph->nelts; + + for ( ; i; --i, ++elt) { +- const char *val = ap_table_get(fr->r->headers_in, *elt); ++ const char *val = apr_table_get(fr->r->headers_in, *elt); + if (val) { +- ap_table_setn(fr->r->subprocess_env, *elt, val); ++ apr_table_setn(fr->r->subprocess_env, *elt, val); + } + } + } +@@ -373,7 +373,7 @@ + + if (fr->fs_stderr == NULL) + { +- fr->fs_stderr = ap_palloc(p, FCGI_SERVER_MAX_STDERR_LINE_LEN + 1); ++ fr->fs_stderr = apr_palloc(p, FCGI_SERVER_MAX_STDERR_LINE_LEN + 1); + } + + /* We're gonna consume all thats here */ +diff -urN mod_fastcgi-2.4.2.org/fcgi_util.c mod_fastcgi-2.4.2/fcgi_util.c +--- mod_fastcgi-2.4.2.org/fcgi_util.c 2004-10-06 20:30:46.339893687 +0200 ++++ mod_fastcgi-2.4.2/fcgi_util.c 2004-10-06 21:53:04.270057958 +0200 +@@ -55,7 +55,7 @@ + fcgi_util_socket_hash_filename(pool *p, const char *path, + const char *user, const char *group) + { +- char *buf = ap_pstrcat(p, path, user, group, NULL); ++ char *buf = apr_pstrcat(p, path, user, group, NULL); + + /* Canonicalize the path (remove "//", ".", "..") */ + ap_getparents(buf); +@@ -77,13 +77,13 @@ + x = strlen(src1); + + if (x == 0) { +- p = ap_pstrcat(a, "\\", src2, NULL); ++ p = apr_pstrcat(a, "\\", src2, NULL); + } + else if (src1[x - 1] != '\\' && src1[x - 1] != '/') { +- p = ap_pstrcat(a, src1, "\\", src2, NULL); ++ p = apr_pstrcat(a, src1, "\\", src2, NULL); + } + else { +- p = ap_pstrcat(a, src1, src2, NULL); ++ p = apr_pstrcat(a, src1, src2, NULL); + } + + q = p ; +@@ -137,12 +137,12 @@ + int socket_pathLen = strlen(socket_path); + + if (socket_pathLen >= sizeof((*socket_addr)->sun_path)) { +- return ap_pstrcat(p, "path \"", socket_path, ++ return apr_pstrcat(p, "path \"", socket_path, + "\" is too long for a Domain socket", NULL); + } + + if (*socket_addr == NULL) +- *socket_addr = ap_pcalloc(p, sizeof(struct sockaddr_un)); ++ *socket_addr = apr_pcalloc(p, sizeof(struct sockaddr_un)); + else + memset(*socket_addr, 0, sizeof(struct sockaddr_un)); + +@@ -194,7 +194,7 @@ + int *socket_addr_len, const char *host, unsigned short port) + { + if (*socket_addr == NULL) +- *socket_addr = ap_pcalloc(p, sizeof(struct sockaddr_in)); ++ *socket_addr = apr_pcalloc(p, sizeof(struct sockaddr_in)); + else + memset(*socket_addr, 0, sizeof(struct sockaddr_in)); + +@@ -204,7 +204,7 @@ + /* Get an in_addr represention of the host */ + if (host != NULL) { + if (convert_string_to_in_addr(host, &(*socket_addr)->sin_addr) != 1) { +- return ap_pstrcat(p, "failed to resolve \"", host, ++ return apr_pstrcat(p, "failed to resolve \"", host, + "\" to exactly one IP address", NULL); + } + } else { +@@ -227,7 +227,7 @@ + + if (statBuf == NULL) { + if (stat(path, &myStatBuf) < 0) +- return ap_psprintf(tp, "stat(%s) failed: %s", path, strerror(errno)); ++ return apr_psprintf(tp, "stat(%s) failed: %s", path, strerror(errno)); + statBuf = &myStatBuf; + } + +@@ -311,7 +311,7 @@ + fcgi_server *s; + + /* @@@ This should now be done in the loop below */ +- ap_cpystrn(path, ePath, FCGI_MAXPATH); ++ apr_cpystrn(path, ePath, FCGI_MAXPATH); + ap_no2slash(path); + + for (s = fcgi_servers; s != NULL; s = s->next) { +@@ -343,7 +343,7 @@ + char path[FCGI_MAXPATH]; + fcgi_server *s; + +- ap_cpystrn(path, ePath, FCGI_MAXPATH); ++ apr_cpystrn(path, ePath, FCGI_MAXPATH); + ap_no2slash(path); + + for (s = fcgi_servers; s != NULL; s = s->next) { +@@ -367,16 +367,16 @@ + const char *err; + + if (finfo == NULL) { +- finfo = (struct stat *)ap_palloc(p, sizeof(struct stat)); ++ finfo = (struct stat *)apr_palloc(p, sizeof(struct stat)); + if (stat(fs_path, finfo) < 0) +- return ap_psprintf(p, "stat(%s) failed: %s", fs_path, strerror(errno)); ++ return apr_psprintf(p, "stat(%s) failed: %s", fs_path, strerror(errno)); + } + + if (finfo->st_mode == 0) +- return ap_psprintf(p, "script not found or unable to stat()"); ++ return apr_psprintf(p, "script not found or unable to stat()"); + + if (S_ISDIR(finfo->st_mode)) +- return ap_psprintf(p, "script is a directory!"); ++ return apr_psprintf(p, "script is a directory!"); + + /* Let the wrapper determine what it can and can't execute */ + if (! fcgi_wrapper) +@@ -392,7 +392,7 @@ + err = fcgi_util_check_access(p, fs_path, finfo, X_OK, fcgi_user_id, fcgi_group_id); + #endif + if (err) { +- return ap_psprintf(p, ++ return apr_psprintf(p, + "access for server (uid %ld, gid %ld) not allowed: %s", + (long)fcgi_user_id, (long)fcgi_group_id, err); + } +@@ -409,7 +409,7 @@ + fcgi_server * + fcgi_util_fs_new(pool *p) + { +- fcgi_server *s = (fcgi_server *) ap_pcalloc(p, sizeof(fcgi_server)); ++ fcgi_server *s = (fcgi_server *) apr_pcalloc(p, sizeof(fcgi_server)); + + /* Initialize anything who's init state is not zeroizzzzed */ + s->listenQueueDepth = FCGI_DEFAULT_LISTEN_Q; +@@ -462,23 +462,23 @@ + s->uid = uid; + pw = getpwuid(uid); + if (pw == NULL) { +- return ap_psprintf(p, ++ return apr_psprintf(p, + "getpwuid() couldn't determine the username for uid '%ld', " + "you probably need to modify the User directive: %s", + (long)uid, strerror(errno)); + } +- s->user = ap_pstrdup(p, pw->pw_name); ++ s->user = apr_pstrdup(p, pw->pw_name); + s->username = s->user; + + s->gid = gid; + gr = getgrgid(gid); + if (gr == NULL) { +- return ap_psprintf(p, ++ return apr_psprintf(p, + "getgrgid() couldn't determine the group name for gid '%ld', " + "you probably need to modify the Group directive: %s", + (long)gid, strerror(errno)); + } +- s->group = ap_pstrdup(p, gr->gr_name); ++ s->group = apr_pstrdup(p, gr->gr_name); + + #endif /* !WIN32 */ + +@@ -492,7 +492,7 @@ + fcgi_util_fs_create_procs(pool *p, int num) + { + int i; +- ServerProcess *proc = (ServerProcess *)ap_pcalloc(p, sizeof(ServerProcess) * num); ++ ServerProcess *proc = (ServerProcess *)apr_pcalloc(p, sizeof(ServerProcess) * num); + + for (i = 0; i < num; i++) { + #ifdef WIN32 diff -urN mod_fastcgi-2.4.2.org/mod_fastcgi.c mod_fastcgi-2.4.2/mod_fastcgi.c --- mod_fastcgi-2.4.2.org/mod_fastcgi.c 2004-10-06 20:30:46.355890260 +0200 -+++ mod_fastcgi-2.4.2/mod_fastcgi.c 2004-10-06 20:38:52.593725208 +0200 ++++ mod_fastcgi-2.4.2/mod_fastcgi.c 2004-10-06 21:53:04.284054959 +0200 @@ -267,7 +267,7 @@ /* Register to reset to default values when the config pool is cleaned */ ap_block_alarms(); - ap_register_cleanup(p, NULL, fcgi_config_reset_globals, ap_null_cleanup); -+ ap_register_cleanup(p, NULL, fcgi_config_reset_globals, apr_pool_cleanup_null); ++ apr_pool_cleanup_register(p, NULL, fcgi_config_reset_globals, apr_pool_cleanup_null); ap_unblock_alarms(); #ifdef APACHE2 +@@ -285,7 +285,7 @@ + #ifdef WIN32 + if (fcgi_socket_dir == NULL) + fcgi_socket_dir = DEFAULT_SOCK_DIR; +- fcgi_dynamic_dir = ap_pstrcat(p, fcgi_socket_dir, "dynamic", NULL); ++ fcgi_dynamic_dir = apr_pstrcat(p, fcgi_socket_dir, "dynamic", NULL); + #else + + if (fcgi_socket_dir == NULL) +@@ -722,11 +722,11 @@ + } + if (statusValue < 0) { + fr->parseHeader = SCAN_CGI_BAD_HEADER; +- return ap_psprintf(r->pool, "invalid Status '%s'", value); ++ return apr_psprintf(r->pool, "invalid Status '%s'", value); + } + hasStatus = TRUE; + r->status = statusValue; +- r->status_line = ap_pstrdup(r->pool, value); ++ r->status_line = apr_pstrdup(r->pool, value); + continue; + } + +@@ -738,7 +738,7 @@ + #ifdef APACHE2 + ap_set_content_type(r, value); + #else +- r->content_type = ap_pstrdup(r->pool, value); ++ r->content_type = apr_pstrdup(r->pool, value); + #endif + continue; + } +@@ -745,16 +745,16 @@ + goto DuplicateNotAllowed; + } + hasLocation = TRUE; +- ap_table_set(r->headers_out, "Location", value); ++ apr_table_set(r->headers_out, "Location", value); + continue; + } + + /* If the script wants them merged, it can do it */ +- ap_table_add(r->err_headers_out, name, value); ++ apr_table_add(r->err_headers_out, name, value); + continue; + } + else { +- ap_table_add(fr->authHeaders, name, value); ++ apr_table_add(fr->authHeaders, name, value); + } + } + +@@ -765,7 +765,7 @@ + * Who responds, this handler or Apache? + */ + if (hasLocation) { +- const char *location = ap_table_get(r->headers_out, "Location"); ++ const char *location = apr_table_get(r->headers_out, "Location"); + /* + * Based on internal redirect handling in mod_cgi.c... + * +@@ -835,11 +835,11 @@ + if ((p = strpbrk(name, "\r\n")) != NULL) + *p = '\0'; + fr->parseHeader = SCAN_CGI_BAD_HEADER; +- return ap_psprintf(r->pool, "malformed header '%s'", name); ++ return apr_psprintf(r->pool, "malformed header '%s'", name); + + DuplicateNotAllowed: + fr->parseHeader = SCAN_CGI_BAD_HEADER; +- return ap_psprintf(r->pool, "duplicate header '%s'", name); ++ return apr_psprintf(r->pool, "duplicate header '%s'", name); + } + + /* +@@ -1019,9 +1019,9 @@ + char *end = strchr(r->uri + 2, '/'); + + if (end) +- *user = memcpy(ap_pcalloc(r->pool, end - r->uri), r->uri + 1, end - r->uri - 1); ++ *user = memcpy(apr_pcalloc(r->pool, end - r->uri), r->uri + 1, end - r->uri - 1); + else +- *user = ap_pstrdup(r->pool, r->uri + 1); ++ *user = apr_pstrdup(r->pool, r->uri + 1); + *group = "-"; + } + else { +@@ -1030,8 +1030,8 @@ + + get_request_identity(r, &uid, &gid); + +- *user = ap_psprintf(r->pool, "%ld", (long) uid); +- *group = ap_psprintf(r->pool, "%ld", (long) gid); ++ *user = apr_psprintf(r->pool, "%ld", (long) uid); ++ *group = apr_psprintf(r->pool, "%ld", (long) gid); + } + } + +@@ -1225,7 +1225,7 @@ + { + /* xxx this handle should live somewhere (see CloseHandle()s below too) */ + char * wait_npipe_mutex_name, * cp; +- wait_npipe_mutex_name = cp = ap_pstrdup(rp, socket_path); ++ wait_npipe_mutex_name = cp = apr_pstrdup(rp, socket_path); + while ((cp = strchr(cp, '\\'))) *cp = '/'; + + wait_npipe_mutex = CreateMutex(NULL, FALSE, wait_npipe_mutex_name); @@ -2318,7 +2318,7 @@ } ap_block_alarms(); - ap_register_cleanup(rp, (void *)fr, cleanup, ap_null_cleanup); -+ ap_register_cleanup(rp, (void *)fr, cleanup, apr_pool_cleanup_null); ++ apr_pool_cleanup_register(rp, (void *)fr, cleanup, apr_pool_cleanup_null); ap_unblock_alarms(); #ifdef WIN32 +@@ -2422,7 +2422,7 @@ + const char *fs_path; + pool * const p = r->pool; + fcgi_server *fs; +- fcgi_request * const fr = (fcgi_request *)ap_pcalloc(p, sizeof(fcgi_request)); ++ fcgi_request * const fr = (fcgi_request *)apr_pcalloc(p, sizeof(fcgi_request)); + uid_t uid; + gid_t gid; + +@@ -2450,7 +2450,7 @@ + else + #endif + { +- my_finfo = (struct stat *) ap_palloc(p, sizeof(struct stat)); ++ my_finfo = (struct stat *) apr_palloc(p, sizeof(struct stat)); + + if (stat(fs_path, my_finfo) < 0) + { +@@ -2476,7 +2476,7 @@ + fr->erBufPtr = fcgi_buf_new(p, sizeof(FCGI_EndRequestBody) + 1); + fr->gotHeader = FALSE; + fr->parseHeader = SCAN_CGI_READING_HEADERS; +- fr->header = ap_make_array(p, 1, 1); ++ fr->header = apr_array_make(p, 1, 1); + fr->fs_stderr = NULL; + fr->r = r; + fr->readingEndRequestBody = FALSE; +@@ -2489,7 +2489,7 @@ + fr->keepReadingFromFcgiApp = TRUE; + fr->fs = fs; + fr->fs_path = fs_path; +- fr->authHeaders = ap_make_table(p, 10); ++ fr->authHeaders = apr_table_make(p, 10); + #ifdef WIN32 + fr->fd = INVALID_SOCKET; + fr->dynamic = ((fs == NULL) || (fs->directive == APP_CLASS_DYNAMIC)) ? TRUE : FALSE; +@@ -2531,7 +2531,7 @@ + */ + static int apache_is_scriptaliased(request_rec *r) + { +- const char *t = ap_table_get(r->notes, "alias-forced-type"); ++ const char *t = apr_table_get(r->notes, "alias-forced-type"); + return t && (!strcasecmp(t, "cgi-script")); + } + +@@ -2554,9 +2554,9 @@ + */ + r->method = "GET"; + r->method_number = M_GET; +- ap_table_unset(r->headers_in, "Content-length"); ++ apr_table_unset(r->headers_in, "Content-length"); + +- ap_internal_redirect_handler(ap_table_get(r->headers_out, "Location"), r); ++ ap_internal_redirect_handler(apr_table_get(r->headers_out, "Location"), r); + return OK; + + case SCAN_CGI_SRV_REDIRECT: +@@ -2612,21 +2612,21 @@ + if (strncasecmp(key, "Variable-", 9) == 0) + key += 9; + +- ap_table_setn(t, key, val); ++ apr_table_setn(t, key, val); + return 1; + } + + static int post_process_auth_passed_compat_header(table *t, const char *key, const char * const val) + { + if (strncasecmp(key, "Variable-", 9) == 0) +- ap_table_setn(t, key + 9, val); ++ apr_table_setn(t, key + 9, val); + + return 1; + } + + static int post_process_auth_failed_header(table * const t, const char * const key, const char * const val) + { +- ap_table_setn(t, key, val); ++ apr_table_setn(t, key, val); + return 1; + } + @@ -2639,16 +2639,16 @@ if (passed) { @@ -39,3 +1267,68 @@ diff -urN mod_fastcgi-2.4.2.org/mod_fastcgi.c mod_fastcgi-2.4.2/mod_fastcgi.c (void *)r->err_headers_out, fr->authHeaders, NULL); } +@@ -2679,10 +2679,10 @@ + } + + /* Save the existing subprocess_env, because we're gonna muddy it up */ +- fr->saved_subprocess_env = ap_copy_table(r->pool, r->subprocess_env); ++ fr->saved_subprocess_env = apr_table_copy(r->pool, r->subprocess_env); + +- ap_table_setn(r->subprocess_env, "REMOTE_PASSWD", password); +- ap_table_setn(r->subprocess_env, "FCGI_APACHE_ROLE", "AUTHENTICATOR"); ++ apr_table_setn(r->subprocess_env, "REMOTE_PASSWD", password); ++ apr_table_setn(r->subprocess_env, "FCGI_APACHE_ROLE", "AUTHENTICATOR"); + + /* The FastCGI Protocol doesn't differentiate authentication */ + fr->role = FCGI_AUTHORIZER; +@@ -2697,7 +2697,7 @@ + post_process_auth(fr, authenticated); + + /* A redirect shouldn't be allowed during the authentication phase */ +- if (ap_table_get(r->headers_out, "Location") != NULL) { ++ if (apr_table_get(r->headers_out, "Location") != NULL) { + ap_log_rerror(FCGI_LOG_ERR_NOERRNO, r, + "FastCGI: FastCgiAuthenticator \"%s\" redirected (not allowed)", + dir_config->authenticator); +@@ -2746,9 +2746,9 @@ + } + + /* Save the existing subprocess_env, because we're gonna muddy it up */ +- fr->saved_subprocess_env = ap_copy_table(r->pool, r->subprocess_env); ++ fr->saved_subprocess_env = apr_table_copy(r->pool, r->subprocess_env); + +- ap_table_setn(r->subprocess_env, "FCGI_APACHE_ROLE", "AUTHORIZER"); ++ apr_table_setn(r->subprocess_env, "FCGI_APACHE_ROLE", "AUTHORIZER"); + + fr->role = FCGI_AUTHORIZER; + +@@ -2762,7 +2762,7 @@ + post_process_auth(fr, authorized); + + /* A redirect shouldn't be allowed during the authorization phase */ +- if (ap_table_get(r->headers_out, "Location") != NULL) { ++ if (apr_table_get(r->headers_out, "Location") != NULL) { + ap_log_rerror(FCGI_LOG_ERR_NOERRNO, r, + "FastCGI: FastCgiAuthorizer \"%s\" redirected (not allowed)", + dir_config->authorizer); +@@ -2806,9 +2806,9 @@ + } + + /* Save the existing subprocess_env, because we're gonna muddy it up */ +- fr->saved_subprocess_env = ap_copy_table(r->pool, r->subprocess_env); ++ fr->saved_subprocess_env = apr_table_copy(r->pool, r->subprocess_env); + +- ap_table_setn(r->subprocess_env, "FCGI_APACHE_ROLE", "ACCESS_CHECKER"); ++ apr_table_setn(r->subprocess_env, "FCGI_APACHE_ROLE", "ACCESS_CHECKER"); + + /* The FastCGI Protocol doesn't differentiate access control */ + fr->role = FCGI_AUTHORIZER; +@@ -2823,7 +2823,7 @@ + post_process_auth(fr, access_allowed); + + /* A redirect shouldn't be allowed during the access check phase */ +- if (ap_table_get(r->headers_out, "Location") != NULL) { ++ if (apr_table_get(r->headers_out, "Location") != NULL) { + ap_log_rerror(FCGI_LOG_ERR_NOERRNO, r, + "FastCGI: FastCgiAccessChecker \"%s\" redirected (not allowed)", + dir_config->access_checker);