From: Bradley Nicholes Date: Sat, 20 Mar 2004 04:17:26 +0000 (+0000) Subject: The code was truncating the parameters for all NLM level commands. Needed to make... X-Git-Tag: pre_ajp_proxy~490 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=61f52655fd1634f110f492ab619a3268ea218cd8;p=apache The code was truncating the parameters for all NLM level commands. Needed to make sure that all of the parameters are being passed to the argv parser. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@103052 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/modules/arch/netware/mod_netware.c b/modules/arch/netware/mod_netware.c index 1440457745..56f105a109 100644 --- a/modules/arch/netware/mod_netware.c +++ b/modules/arch/netware/mod_netware.c @@ -98,6 +98,7 @@ static apr_status_t ap_cgi_build_command(const char **cmd, const char ***argv, { char *ext = NULL; char *cmd_only, *ptr; + const char *new_cmd; const char *detached = NULL; netware_dir_config *d; apr_file_t *fh; @@ -140,20 +141,16 @@ static apr_status_t ap_cgi_build_command(const char **cmd, const char ***argv, ++ext; /* check if we have a registered command for the extension*/ - *cmd = apr_table_get(d->file_type_handlers, ext); - if (*cmd == NULL) { + new_cmd = apr_table_get(d->file_type_handlers, ext); + if (new_cmd == NULL) { ap_log_rerror(APLOG_MARK, APLOG_ERR, 0, r, "Could not find a command associated with the %s extension", ext); return APR_EBADF; } - if (!stricmp(*cmd, "OS")) { - /* If it is an NLM then restore *cmd and just execute it */ - *cmd = cmd_only; - } - else { + if (stricmp(new_cmd, "OS")) { /* If we have a registered command then add the file that was passed in as a parameter to the registered command. */ - *cmd = apr_pstrcat (p, *cmd, " ", cmd_only, NULL); + *cmd = apr_pstrcat (p, new_cmd, " ", cmd_only, NULL); /* Run in its own address space if specified */ detached = apr_table_get(d->file_handler_mode, ext);