int ApacheRequest_parse_urlencoded()

in src/request/apache_request.c [431:462]


int ApacheRequest_parse_urlencoded(ApacheRequest *req)
{
    request_rec *r = req->r;
    int rc = OK;

    if (r->method_number == M_POST || r->method_number == M_PUT || r->method_number == M_DELETE) {
    	const char *data = NULL;
	int length = 0;

    /*
        const char *type;
    	type = apr_table_get(r->headers_in, "Content-Type");

    	if (!strncaseEQ(type, DEFAULT_ENCTYPE, DEFAULT_ENCTYPE_LENGTH) &&
    	    !strncaseEQ(type, TEXT_XML_ENCTYPE, TEXT_XML_ENCTYPE_LENGTH)) {
    	    return DECLINED;
    	}
    */

    	if ((rc = util_read(req, &data, &length)) != OK) {
    	    return rc;
    	}

    	if (data) {
    	    req->raw_post = (char*) data; /* Give people a way of getting at the raw data. */
    	    req->raw_length = length;
    	    split_to_parms(req, data);
    	}
    }

    return OK;
}