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 "Lahiru Gunathilake (JIRA)" <ji...@apache.org> on 2008/01/04 05:17:34 UTC

[jira] Created: (AXIS2C-879) Function axis2_svc_client_send_receive_non_blocking

Function axis2_svc_client_send_receive_non_blocking
---------------------------------------------------

                 Key: AXIS2C-879
                 URL: https://issues.apache.org/jira/browse/AXIS2C-879
             Project: Axis2-C
          Issue Type: Bug
          Components: samples
    Affects Versions: Current (Nightly)
         Environment: Ubuntu
            Reporter: Lahiru Gunathilake
             Fix For: Current (Nightly)


<snippet>
AXIS2_EXTERN
void axis2_svc_client_send_receive_non_blocking(
      axis2_svc_client_t*       svc_client,
      const axutil_env_t*     env,
      const axiom_node_t*     payload,
      axis2_callback_t*     callback)
</snippet>

Problem: This function takes responsibility for the memory allocated for the parameter payload (assumed due to access violations for free-ing), as well as the custom headers that have been added to the parameter svc_client (again, assumed because of access violations on free-ing). This function also takes responsibility for the memory allocated at callback, through the following call tree:

    axis2_svc_client_send_receive_non_blocking
    axis2_svc_client_send_receive_non_blocking_with_op_qname
    axis2_op_client_set_callback

The memory is free-ed with a call to axis2_op_client_free (it is assumed that someone calls this)

Solution: Document memory ownership for parameters and return value. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-c-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-c-dev-help@ws.apache.org


[jira] Updated: (AXIS2C-879) Function axis2_svc_client_send_receive_non_blocking[Alastair FETTES]

Posted by "Senaka Fernando (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2C-879?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Senaka Fernando updated AXIS2C-879:
-----------------------------------

    Attachment: diff.txt

Hi Alastair and Lahiru,

The service client frees the op client and no one has to call it. You can't explicitly create an op_client for the svc_client AFAIK. The ownership of the payload is a well known fact. However, this is a violation in terms of the use of the const prefix. This I believe needs some attention.

But, as in hello.c (on the axis2/c manual), The user has the option to free the payload before the service client frees it, and assume that he still has control over the payload until the service client is in scope.

Therefore, there is a need to document this.

Regards,
Senaka

> Function axis2_svc_client_send_receive_non_blocking[Alastair FETTES]
> --------------------------------------------------------------------
>
>                 Key: AXIS2C-879
>                 URL: https://issues.apache.org/jira/browse/AXIS2C-879
>             Project: Axis2-C
>          Issue Type: Bug
>          Components: samples
>    Affects Versions: Current (Nightly)
>         Environment: Ubuntu
>            Reporter: Lahiru Gunathilake
>             Fix For: Current (Nightly)
>
>         Attachments: diff.txt
>
>
> <snippet>
> AXIS2_EXTERN
> void axis2_svc_client_send_receive_non_blocking(
>       axis2_svc_client_t*       svc_client,
>       const axutil_env_t*     env,
>       const axiom_node_t*     payload,
>       axis2_callback_t*     callback)
> </snippet>
> Problem: This function takes responsibility for the memory allocated for the parameter payload (assumed due to access violations for free-ing), as well as the custom headers that have been added to the parameter svc_client (again, assumed because of access violations on free-ing). This function also takes responsibility for the memory allocated at callback, through the following call tree:
>     axis2_svc_client_send_receive_non_blocking
>     axis2_svc_client_send_receive_non_blocking_with_op_qname
>     axis2_op_client_set_callback
> The memory is free-ed with a call to axis2_op_client_free (it is assumed that someone calls this)
> Solution: Document memory ownership for parameters and return value. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-c-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-c-dev-help@ws.apache.org


[jira] Resolved: (AXIS2C-879) Function axis2_svc_client_send_receive_non_blocking[Alastair FETTES]

Posted by "Dushshantha Chandradasa (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2C-879?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Dushshantha Chandradasa resolved AXIS2C-879.
--------------------------------------------

    Resolution: Fixed

> Function axis2_svc_client_send_receive_non_blocking[Alastair FETTES]
> --------------------------------------------------------------------
>
>                 Key: AXIS2C-879
>                 URL: https://issues.apache.org/jira/browse/AXIS2C-879
>             Project: Axis2-C
>          Issue Type: Bug
>          Components: samples
>    Affects Versions: Current (Nightly)
>         Environment: Ubuntu
>            Reporter: Lahiru Gunathilake
>             Fix For: Current (Nightly)
>
>         Attachments: diff.txt
>
>
> <snippet>
> AXIS2_EXTERN
> void axis2_svc_client_send_receive_non_blocking(
>       axis2_svc_client_t*       svc_client,
>       const axutil_env_t*     env,
>       const axiom_node_t*     payload,
>       axis2_callback_t*     callback)
> </snippet>
> Problem: This function takes responsibility for the memory allocated for the parameter payload (assumed due to access violations for free-ing), as well as the custom headers that have been added to the parameter svc_client (again, assumed because of access violations on free-ing). This function also takes responsibility for the memory allocated at callback, through the following call tree:
>     axis2_svc_client_send_receive_non_blocking
>     axis2_svc_client_send_receive_non_blocking_with_op_qname
>     axis2_op_client_set_callback
> The memory is free-ed with a call to axis2_op_client_free (it is assumed that someone calls this)
> Solution: Document memory ownership for parameters and return value. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-c-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-c-dev-help@ws.apache.org


[jira] Updated: (AXIS2C-879) Function axis2_svc_client_send_receive_non_blocking[Alastair FETTES]

Posted by "Lahiru Gunathilake (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2C-879?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Lahiru Gunathilake updated AXIS2C-879:
--------------------------------------

    Summary: Function axis2_svc_client_send_receive_non_blocking[Alastair FETTES]  (was: Function axis2_svc_client_send_receive_non_blocking)

> Function axis2_svc_client_send_receive_non_blocking[Alastair FETTES]
> --------------------------------------------------------------------
>
>                 Key: AXIS2C-879
>                 URL: https://issues.apache.org/jira/browse/AXIS2C-879
>             Project: Axis2-C
>          Issue Type: Bug
>          Components: samples
>    Affects Versions: Current (Nightly)
>         Environment: Ubuntu
>            Reporter: Lahiru Gunathilake
>             Fix For: Current (Nightly)
>
>
> <snippet>
> AXIS2_EXTERN
> void axis2_svc_client_send_receive_non_blocking(
>       axis2_svc_client_t*       svc_client,
>       const axutil_env_t*     env,
>       const axiom_node_t*     payload,
>       axis2_callback_t*     callback)
> </snippet>
> Problem: This function takes responsibility for the memory allocated for the parameter payload (assumed due to access violations for free-ing), as well as the custom headers that have been added to the parameter svc_client (again, assumed because of access violations on free-ing). This function also takes responsibility for the memory allocated at callback, through the following call tree:
>     axis2_svc_client_send_receive_non_blocking
>     axis2_svc_client_send_receive_non_blocking_with_op_qname
>     axis2_op_client_set_callback
> The memory is free-ed with a call to axis2_op_client_free (it is assumed that someone calls this)
> Solution: Document memory ownership for parameters and return value. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-c-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-c-dev-help@ws.apache.org