This is a backup commit, it may be less functional than the last revision!
Contents:
Some work towards SCGI support. This was partly abandoned to work on FastCGI support (which is merely a copy of the scgi directory + modifications).
FastCGI support has begun to be added. On linux, with apache (mod_fastcgi or mod_fcgid) it can accept multiple connections and read/parse packets. PARAM packets can be parsed correctly, as can STDIN and BEGIN_REQUEST packets. They lack proper handling because I'm not sure if introducing a circular dependency is absolutely necessary - ie. the basic_client<> reads/parses packets but in order to do so must have access to the basic_request<> associated with it (to store variables in). The basic_request<> *has* a basic_client<> so that dependency exists too. There are several ways around it, not sure which is best.
FastCGI outputting hasn't been addressed yet, will do that after important uni work is done.
The beginnings of multipart form data handling was added, but only using Boost.Regex. The idea is that 'eventually' this should be a seperate form_parser class that takes a function object for reading more data and a map to store saved data into, so the class is generally useful outside this library. This separation has the advantage of allowing a Boost.Spirit, Boost.Regex and Boost.Xpressive implementation. I'm starting with regex because it won't get done otherwise. It's not finished yet, surprise surprise.
(No files)
Note:
See TracChangeset
for help on using the changeset viewer.