See bugzilla id #8464 for details, but currently in 2.0.36 you cannot specify command-line arguments to an external rewrite program, thus:
RewriteMap "prg:/path/to/my/engine -arg1 -arg2" This was valid in 1.3.24, as it exec'd a shell with the "-c /path/to/my/engine -arg1 -arg2" arguments. Hopefully this patch should enable us to be able to supply command-line arguments to our external program again, negating the need for a shell script wrapper and meaning the configuration is all in httpd.conf. Cheers, JT -- +------------------------------------+------------------------------------+ | James Tait | ICQ# 17834893 | | MUD programmer and Linux advocate | http://www.wyrddreams.demon.co.uk/ | +------------------------------------+------------------------------------+ ________________________________________________________________________ This email has been scanned for all viruses by the MessageLabs SkyScan service. For more information on a proactive anti-virus service working around the clock, around the globe, visit http://www.messagelabs.com ________________________________________________________________________
--- ../httpd-2.0.36-unmodified/modules/mappers/mod_rewrite.c Mon Apr 22 11:27:01 2002 +++ modules/mappers/mod_rewrite.c Thu May 23 17:21:26 2002 @@ -3370,6 +3370,24 @@ apr_status_t rc; apr_procattr_t *procattr; apr_proc_t *procnew; + char *arg; + char *datafile; + const char **args; + int nargs; + + procnew = apr_pcalloc(p, sizeof(*procnew)); + datafile = apr_pstrdup(p, progname); + nargs = 0; + while (*datafile && ap_getword_white_nc(p, &datafile)) { + nargs++; + } + args = (const char **)apr_pcalloc(p, sizeof(char *) * (nargs + 1)); + datafile = apr_pstrdup(p, progname); + nargs = 0; + while (*datafile && (arg = ap_getword_white_nc(p, &datafile))) { + args[nargs++] = apr_pstrdup(p, arg); + } + args[nargs] = NULL; if (((rc = apr_procattr_create(&procattr, p)) != APR_SUCCESS) || ((rc = apr_procattr_io_set(procattr, APR_FULL_BLOCK,