> > there is a *=* case which resets the parameter list in sh-httpd, it
> > disables constructs like
> >
> > foo=bar&baz=foo
> >
> > I guess parameters without a value would pass fine
>
> Thanks for the detail...I'll see if I can remember why this was
> specifically added when reviewing the code (hopefully sometime in the
> near future).

OK, I dug out my CGI references, and what I have indicates the command
line arguments should only be parsed and provided to scripts if the GET
or HEAD request does *NOT* contain an unencoded equals sign, which is
why the arguments are cleared if there's an equal sign present.

My understanding is cgi scripts recieving data like the above example
via a GET or HEAD request are supposed to refer to the QUERY_STRING
variable, which should be properly exported by sh-httpd.  If using the
POST method, the cgi script will recieve the data on stdin (won't work
with sh-httpd w/o the POST patch).  See the NCSA section on handling
form data with cgi scripts: http://hoohoo.ncsa.uiuc.edu/cgi/forms.html

What cgi programs were you having problems with?  Did they work properly
under another web server (like apache or thttpd), or did you only test
with sh-httpd?

BTW:  The references I'm using for CGI implementations are the NCSA:
http://hoohoo.ncsa.uiuc.edu/cgi/

...and the latest CGI 1.1 internet draft standard I could find:
http://cgi-spec.golux.com/draft-coar-cgi-v11-03.txt

Note there are several more CGI doucments available from the above site,
but I think the 1.1 draft is the most applicable, even though it expired
in Dec, 1999:
http://cgi-spec.golux.com/

Charles Steinkuehler
http://lrp.steinkuehler.net
http://c0wz.steinkuehler.net (lrp.c0wz.com mirror)



-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf

_______________________________________________
Leaf-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/leaf-devel

Reply via email to