Need help in Apache"s Request reading processes

Need help in Apache"s Request reading processes

am 18.01.2010 07:40:48 von Pravesh Rai

Hi,

Those who are aware of inner working flow of Apache, may please try to
give some clue on the issue / observation made below:

With reference to the protocol.c, here is a functional flow for
'recieving' HTTP request:

ap_read_request()
{
...
read_request_line();
...
ap_get_mime_headers_core();
...
}


read_request_line()
{
...
ap_rgetline_core();
...
ap_parse_uri();
}


ap_get_mime_headers_core()
{
...
// By this time REQUEST header gets corrupted
ap_rgetline_core();
...
}

ap_rgetline_core();
{
...
// Print Request fields
...
}

In our case, we are trying to caught Request information in
ap_rgetline_core(). During 1st attempt, all information / fields seems
to be okay:


POST /proxy/ssllogin HTTP/1.1\r\n
Accept: image/gif, image/jpeg, image/pjpeg, image/pjpeg,
application/vnd.ms-excel, application/vnd.ms-powerpoint,
application/msword, application/x-ms-application,
application/xaml+xml, application/vnd.ms-xpsdocument,
application/x-ms-xbap, application/x-shockwave-flash, */*\r\n
Referer: \r\n
Accept-Language: en-us\r\n
User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1;
Trident/4.0; GTB6.3; .NET CLR 1.0.3705; .NET CLR 1.1.4322; .NET CLR
2.0.50727; InfoPath.2; .NET CLR 3.0.4506.2152; .NET CLR .5.30729)\r\n
Content-Type: application/x-www-form-urlencoded\r\n
Accept-Encoding: gzip, deflate\r\n
Host: \r\n
Content-Length: 73\r\n
Connection: Keep-Alive\r\n
Cache-Control: no-cache\r\n
Cookie: Compaq-HMMD=0001-9ca7e717-7ce4-fe4c-9f93-90ec0d2388fe-126337 5426720000\r\n


But during 2nd attempts onwards, there are some or other problems,
such as 'User-Agent' field in the Request fields printed below:


Accept: image/gif, image/jpeg, image/pjpeg, image/pjpeg,
application/vnd.ms-excel, application/vnd.ms-powerpoint,
application/msword, application/x-ms-application,
application/xaml+xml, application/vnd.ms-xpsdocument,
application/x-ms-xbap, application/x-shockwave-flash, */*\r\n
Referer: \r\n
Accept-Language: en-us\r\n
User-Agent: Mozilla/4.0 (compatible; Mt/4.0; GTB6.3; .NET CLR
1.0.370t/4.0; GTB6.3; .NET CLR 1.0.3705; .NET CLR 1.1.4322; .NET CLR
2.0.50727; InfoPath.2; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)\r\n
Content-Type: application/x-www-form-urlencoded\r\n
Accept-Encoding: gzip, deflate\r\n
Host: \r\n
Content-Length: 73\r\n
Connection: Keep-Alive\r\n
Cache-Control: no-cache\r\n
Cookie: Compaq-HMMD=0001-9ca7e717-7ce4-fe4c-9f93-90ec0d2388fe-126337 5426720000\r\n


What might be the reason behind getting this information / field,
getting corrupted after some reading attempts ?

Thanks,
Pravesh

------------------------------------------------------------ ---------
The official User-To-User support forum of the Apache HTTP Server Project.
See for more info.
To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org
" from the digest: users-digest-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-help@httpd.apache.org

Re: Need help in Apache"s Request reading processes

am 18.01.2010 13:46:15 von Eric Covener

On Mon, Jan 18, 2010 at 1:40 AM, Pravesh Rai wrote:
> User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1;
> Trident/4.0; GTB6.3; .NET CLR 1.0.3705; .NET CLR 1.1.4322; .NET CLR
> 2.0.50727; InfoPath.2; .NET CLR 3.0.4506.2152; .NET CLR .5.30729)\r\n

> User-Agent: Mozilla/4.0 (compatible; Mt/4.0; GTB6.3; .NET CLR
> 1.0.370t/4.0; GTB6.3; .NET CLR 1.0.3705; .NET CLR 1.1.4322; .NET CLR
> 2.0.50727; InfoPath.2; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)\r\n

> What might be the reason behind getting this information / field,
> getting corrupted after some reading attempts ?

What's corrupted about it? If it only happens when you modify the core
apache code, you're probably just misusing memory.

You might want to pose your development question to
modules-dev@httpd.apache.org and get out of the business of patching
the code and using your own module.

--
Eric Covener
covener@gmail.com

------------------------------------------------------------ ---------
The official User-To-User support forum of the Apache HTTP Server Project.
See for more info.
To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org
" from the digest: users-digest-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-help@httpd.apache.org