You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@axis.apache.org by Selvaratnam Uthaiyashankar <ut...@gmail.com> on 2009/10/01 05:09:26 UTC

Re: crash with arbitrary rest post data

Hi Tamas,

I think it is a bug. Can you create a Jira for this? I'll fix it ASAP.

Regards,
Shankar

2009/9/30 Tamás Martinec <ma...@gmail.com>:
> Hi,
>
> What is the situation with this
>
> http://www.mail-archive.com/axis-c-dev@ws.apache.org/msg16788.html
>
> issue?
>
> I am trying to create a service that receives arbitrary strings as
> HTTP POST data.
>
> The services I created crash very much like echo in the above link.
>
> The echo sample crashes if the post data is empty, or content is not
> according to the
>
> text=sometext
>
> pattern.
>
> Here are the messages:
>
> SENDING DATA..
> /* sending time = 23:57:14*/
> /* message uuid = eb01af8d-4d6b-45a3-8bbf-2f80f43acbd2*/
> ---------------------
> POST /axis2/services/echo/echoString HTTP/1.0
> Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg,
> application/vnd.ms-excel, application/msword,
> application/vnd.ms-powerpoint, */*
> Accept-Language: en-us
> Accept-Encoding: gzip, deflate
> User-Agent: Mozilla/4.0
> Content-Length: 6
> Host: LOCALHOST
> Content-Type: application/x-www-form-urlencoded
>
> text
>
> RETRIEVING DATA..
> /* retrieving time = 23:57:14*/
> /* time throughput = 0 sec(s)*/
> ---------------------
> HTTP/1.0 500 Internal Server Error
> Date: Thu Sep 24 23:57:14 2009 GMT
> Server: Axis2C/1.6.0 (Simple Axis2 HTTP Server)
> Content-Type: text/html
> Content-Length: 210
>
> <html><head><title>500 Internal Server
> Error</title></head><body><h2>Internal Server Error</h2><p>The server
> encountered an unexpected condition which prevented it from fulfilling
> the request.</p></body></html>
>
>
> And the call stack for the crash:
>
>    axis2_engine.dll!axis2_http_status_line_free(axis2_http_status_line
> * status_line=0xdddddddd, const axutil_env * env=0x006dd498)  Line 143
> + 0x3 bytes    C
>     axis2_engine.dll!axis2_http_simple_response_free(axis2_http_simple_response
> * simple_response=0x006df500, const axutil_env * env=0x006dd498)  Line
> 117    C
>     axis2_engine.dll!axis2_http_out_transport_info_impl_free(axis2_http_out_transport_info
> * http_out_transport_info=0x006de700, const axutil_env *
> env=0x006dd498)  Line 158    C
>     axis2_engine.dll!axis2_http_out_transport_info_free(axis2_http_out_transport_info
> * http_out_transport_info=0x006de700, const axutil_env *
> env=0x006dd498)  Line 206 + 0x12 bytes    C
>     axis2_engine.dll!axis2_out_transport_info_impl_free(axis2_out_transport_info
> * out_transport_info=0x006de700, const axutil_env * env=0x006dd498)
> Line 61    C
>     axis2_engine.dll!axis2_msg_ctx_free(axis2_msg_ctx *
> msg_ctx=0x006dfa38, const axutil_env * env=0x006dd498)  Line 444 +
> 0x20 bytes    C
>     axis2_engine.dll!axis2_http_worker_process_request(axis2_http_worker
> * http_worker=0x006dc350, const axutil_env * env=0x006dd498,
> axis2_simple_http_svr_conn * svr_conn=0x006dd4e0,
> axis2_http_simple_request * simple_request=0x006e0b18)  Line 2009    C
>     axis2_http_receiver.dll!axis2_svr_thread_worker_func(axutil_thread_t
> * thd=0x006df870, void * data=0x006dc608)  Line 260 + 0x18 bytes    C
>     axutil.dll!dummy_worker(void * opaque=0x006df870)  Line 88 + 0x15
> bytes    C
>     kernel32.dll!7c80b729()
>     [Frames below may be incorrect and/or missing, no symbols loaded
> for kernel32.dll]
>
> Seems like axis2_http_status_line_free wants to free something already freed..
>
> And this is the end of the log:
>
> [Thu Sep 24 23:57:14 2009] [debug]
> c:\axis2c-repo\src\core\transport\http\common\http_worker.c(200)
> Client HTTP version HTTP/1.0
> [Thu Sep 24 23:57:14 2009] [debug]
> c:\axis2c-repo\src\core\engine\rest_disp.c(114) Checking for service
> using target endpoint address :
> http://127.0.0.1:9090/axis2/services/echo/echoString
>
>
> [Thu Sep 24 23:57:14 2009] [debug]
> c:\axis2c-repo\src\core\engine\rest_disp.c(135) Service found using
> target endpoint address
> [Thu Sep 24 23:57:14 2009] [debug]
> c:\axis2c-repo\src\core\util\core_utils.c(772) Checking for operation
> using REST HTTP Location fragment : /echoString
> [Thu Sep 24 23:57:14 2009] [debug]
> c:\axis2c-repo\src\core\util\core_utils.c(834) Operation found using
> target endpoint uri fragment
> [Thu Sep 24 23:57:14 2009] [debug]
> c:\axis2c-repo\src\core\engine\phase.c(210) Invoke the handler
> request_uri_based_dispatcher within the phase Transport
> [Thu Sep 24 23:57:14 2009] [debug]
> c:\axis2c-repo\src\core\engine\phase.c(210) Invoke the handler
> AddressingInHandler within the phase Transport
> [Thu Sep 24 23:57:14 2009] [info]  Starting addressing in handler
> [Thu Sep 24 23:57:14 2009] [info]
> c:\axis2c-repo\src\modules\mod_addr\addr_in_handler.c
> [Thu Sep 24 23:57:14 2009] [debug]
> c:\axis2c-repo\src\core\engine\phase.c(210) Invoke the handler
> addressing_based_dispatcher within the phase Transport
> [Thu Sep 24 23:57:14 2009] [debug]
> c:\axis2c-repo\src\core\engine\phase.c(210) Invoke the handler
> rest_dispatcher within the phase Dispatch
> [Thu Sep 24 23:57:14 2009] [debug]
> c:\axis2c-repo\src\core\engine\phase.c(210) Invoke the handler
> soap_message_body_based_dispatcher within the phase Dispatch
> [Thu Sep 24 23:57:14 2009] [debug]
> c:\axis2c-repo\src\core\engine\phase.c(210) Invoke the handler
> soap_action_based_dispatcher within the phase Dispatch
> [Thu Sep 24 23:57:14 2009] [debug]
> c:\axis2c-repo\src\core\engine\phase.c(210) Invoke the handler
> dispatch_post_conditions_evaluator within the phase PostDispatch
> [Thu Sep 24 23:57:14 2009] [debug]
> c:\axis2c-repo\src\core\engine\phase.c(210) Invoke the handler
> context_handler within the phase PostDispatch
> [Thu Sep 24 23:57:14 2009] [debug]
> c:\axis2c-repo\src\core\receivers\raw_xml_in_out_msg_recv.c(382)
> fault_detail:<Detail></Detail>
>
> I used the 1.6.0 version on win XP. I tried the binary distribution
> first and then compiled it from source as well to see the details.
>
> By the way, is the Content-Type relevant in this case? (The link above
> had the content type right, text/xml)
>
> I have seen some related bugs in jira but not exactly this one..
>
> br,
>
> Tamas
>



-- 
S.Uthaiyashankar
Software Architect
WSO2 Inc.
http://wso2.com/ - "The Open Source SOA Company"

Re: crash with arbitrary rest post data

Posted by Tamás Martinec <ma...@gmail.com>.
Hi Shankar,

I created the Jira:

https://issues.apache.org/jira/browse/AXIS2C-1400

br,

Tamas

On Thu, Oct 1, 2009 at 6:09 AM, Selvaratnam Uthaiyashankar
<ut...@gmail.com> wrote:
> Hi Tamas,
>
> I think it is a bug. Can you create a Jira for this? I'll fix it ASAP.
>
> Regards,
> Shankar
>
> 2009/9/30 Tamás Martinec <ma...@gmail.com>:
>> Hi,
>>
>> What is the situation with this
>>
>> http://www.mail-archive.com/axis-c-dev@ws.apache.org/msg16788.html
>>
>> issue?
>>
>> I am trying to create a service that receives arbitrary strings as
>> HTTP POST data.
>>
>> The services I created crash very much like echo in the above link.
>>
>> The echo sample crashes if the post data is empty, or content is not
>> according to the
>>
>> text=sometext
>>
>> pattern.
>>
>> Here are the messages:
>>
>> SENDING DATA..
>> /* sending time = 23:57:14*/
>> /* message uuid = eb01af8d-4d6b-45a3-8bbf-2f80f43acbd2*/
>> ---------------------
>> POST /axis2/services/echo/echoString HTTP/1.0
>> Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg,
>> application/vnd.ms-excel, application/msword,
>> application/vnd.ms-powerpoint, */*
>> Accept-Language: en-us
>> Accept-Encoding: gzip, deflate
>> User-Agent: Mozilla/4.0
>> Content-Length: 6
>> Host: LOCALHOST
>> Content-Type: application/x-www-form-urlencoded
>>
>> text
>>
>> RETRIEVING DATA..
>> /* retrieving time = 23:57:14*/
>> /* time throughput = 0 sec(s)*/
>> ---------------------
>> HTTP/1.0 500 Internal Server Error
>> Date: Thu Sep 24 23:57:14 2009 GMT
>> Server: Axis2C/1.6.0 (Simple Axis2 HTTP Server)
>> Content-Type: text/html
>> Content-Length: 210
>>
>> <html><head><title>500 Internal Server
>> Error</title></head><body><h2>Internal Server Error</h2><p>The server
>> encountered an unexpected condition which prevented it from fulfilling
>> the request.</p></body></html>
>>
>>
>> And the call stack for the crash:
>>
>>    axis2_engine.dll!axis2_http_status_line_free(axis2_http_status_line
>> * status_line=0xdddddddd, const axutil_env * env=0x006dd498)  Line 143
>> + 0x3 bytes    C
>>     axis2_engine.dll!axis2_http_simple_response_free(axis2_http_simple_response
>> * simple_response=0x006df500, const axutil_env * env=0x006dd498)  Line
>> 117    C
>>     axis2_engine.dll!axis2_http_out_transport_info_impl_free(axis2_http_out_transport_info
>> * http_out_transport_info=0x006de700, const axutil_env *
>> env=0x006dd498)  Line 158    C
>>     axis2_engine.dll!axis2_http_out_transport_info_free(axis2_http_out_transport_info
>> * http_out_transport_info=0x006de700, const axutil_env *
>> env=0x006dd498)  Line 206 + 0x12 bytes    C
>>     axis2_engine.dll!axis2_out_transport_info_impl_free(axis2_out_transport_info
>> * out_transport_info=0x006de700, const axutil_env * env=0x006dd498)
>> Line 61    C
>>     axis2_engine.dll!axis2_msg_ctx_free(axis2_msg_ctx *
>> msg_ctx=0x006dfa38, const axutil_env * env=0x006dd498)  Line 444 +
>> 0x20 bytes    C
>>     axis2_engine.dll!axis2_http_worker_process_request(axis2_http_worker
>> * http_worker=0x006dc350, const axutil_env * env=0x006dd498,
>> axis2_simple_http_svr_conn * svr_conn=0x006dd4e0,
>> axis2_http_simple_request * simple_request=0x006e0b18)  Line 2009    C
>>     axis2_http_receiver.dll!axis2_svr_thread_worker_func(axutil_thread_t
>> * thd=0x006df870, void * data=0x006dc608)  Line 260 + 0x18 bytes    C
>>     axutil.dll!dummy_worker(void * opaque=0x006df870)  Line 88 + 0x15
>> bytes    C
>>     kernel32.dll!7c80b729()
>>     [Frames below may be incorrect and/or missing, no symbols loaded
>> for kernel32.dll]
>>
>> Seems like axis2_http_status_line_free wants to free something already freed..
>>
>> And this is the end of the log:
>>
>> [Thu Sep 24 23:57:14 2009] [debug]
>> c:\axis2c-repo\src\core\transport\http\common\http_worker.c(200)
>> Client HTTP version HTTP/1.0
>> [Thu Sep 24 23:57:14 2009] [debug]
>> c:\axis2c-repo\src\core\engine\rest_disp.c(114) Checking for service
>> using target endpoint address :
>> http://127.0.0.1:9090/axis2/services/echo/echoString
>>
>>
>> [Thu Sep 24 23:57:14 2009] [debug]
>> c:\axis2c-repo\src\core\engine\rest_disp.c(135) Service found using
>> target endpoint address
>> [Thu Sep 24 23:57:14 2009] [debug]
>> c:\axis2c-repo\src\core\util\core_utils.c(772) Checking for operation
>> using REST HTTP Location fragment : /echoString
>> [Thu Sep 24 23:57:14 2009] [debug]
>> c:\axis2c-repo\src\core\util\core_utils.c(834) Operation found using
>> target endpoint uri fragment
>> [Thu Sep 24 23:57:14 2009] [debug]
>> c:\axis2c-repo\src\core\engine\phase.c(210) Invoke the handler
>> request_uri_based_dispatcher within the phase Transport
>> [Thu Sep 24 23:57:14 2009] [debug]
>> c:\axis2c-repo\src\core\engine\phase.c(210) Invoke the handler
>> AddressingInHandler within the phase Transport
>> [Thu Sep 24 23:57:14 2009] [info]  Starting addressing in handler
>> [Thu Sep 24 23:57:14 2009] [info]
>> c:\axis2c-repo\src\modules\mod_addr\addr_in_handler.c
>> [Thu Sep 24 23:57:14 2009] [debug]
>> c:\axis2c-repo\src\core\engine\phase.c(210) Invoke the handler
>> addressing_based_dispatcher within the phase Transport
>> [Thu Sep 24 23:57:14 2009] [debug]
>> c:\axis2c-repo\src\core\engine\phase.c(210) Invoke the handler
>> rest_dispatcher within the phase Dispatch
>> [Thu Sep 24 23:57:14 2009] [debug]
>> c:\axis2c-repo\src\core\engine\phase.c(210) Invoke the handler
>> soap_message_body_based_dispatcher within the phase Dispatch
>> [Thu Sep 24 23:57:14 2009] [debug]
>> c:\axis2c-repo\src\core\engine\phase.c(210) Invoke the handler
>> soap_action_based_dispatcher within the phase Dispatch
>> [Thu Sep 24 23:57:14 2009] [debug]
>> c:\axis2c-repo\src\core\engine\phase.c(210) Invoke the handler
>> dispatch_post_conditions_evaluator within the phase PostDispatch
>> [Thu Sep 24 23:57:14 2009] [debug]
>> c:\axis2c-repo\src\core\engine\phase.c(210) Invoke the handler
>> context_handler within the phase PostDispatch
>> [Thu Sep 24 23:57:14 2009] [debug]
>> c:\axis2c-repo\src\core\receivers\raw_xml_in_out_msg_recv.c(382)
>> fault_detail:<Detail></Detail>
>>
>> I used the 1.6.0 version on win XP. I tried the binary distribution
>> first and then compiled it from source as well to see the details.
>>
>> By the way, is the Content-Type relevant in this case? (The link above
>> had the content type right, text/xml)
>>
>> I have seen some related bugs in jira but not exactly this one..
>>
>> br,
>>
>> Tamas
>>
>
>
>
> --
> S.Uthaiyashankar
> Software Architect
> WSO2 Inc.
> http://wso2.com/ - "The Open Source SOA Company"
>