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 "Bill Blough (Jira)" <ji...@apache.org> on 2020/04/07 16:00:00 UTC
[jira] [Updated] (AXIS2C-1394) Incorrect SOAP fault handling when
Rampart is engaged
[ https://issues.apache.org/jira/browse/AXIS2C-1394?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Bill Blough updated AXIS2C-1394:
--------------------------------
Fix Version/s: (was: Current (Nightly))
1.7.0
> Incorrect SOAP fault handling when Rampart is engaged
> -----------------------------------------------------
>
> Key: AXIS2C-1394
> URL: https://issues.apache.org/jira/browse/AXIS2C-1394
> Project: Axis2-C
> Issue Type: Bug
> Components: core/engine
> Affects Versions: Current (Nightly)
> Reporter: Francois Mireaux
> Assignee: Korale Gamaralalage Nandika Chandrasiri Jayawardana
> Priority: Major
> Fix For: 1.7.0
>
>
> When axis2_msg_recv_receive_impl detects that response is a SOAP fault, it doesn't send this response but delegates sending to HTTP transport (http_transport_utils.c). But the fault message context created by axis2_engine_create_fault_msg_ctx doesn't copy the base axis2 context contained in input message context, as in axis2_core_utils_create_out_msg_ctx used in normal processing. So Rampart context is not found, Rampart fails to process and SOAP fault is send without security headers.
> Adding this code at the end of axis2_engine_create_fault_msg_ctx seems to correct the problem but I don't enough master Axis2/C to know if it's allways ok :
> if ( 1 == 1 ) { // in order to localize ctx declaration
> axis2_ctx_t *ctx = axis2_msg_ctx_get_base(processing_context, env);
> if (ctx)
> {
> axis2_ctx_t *new_ctx = axis2_msg_ctx_get_base(fault_ctx, env);
> if (new_ctx)
> {
> axis2_ctx_set_property_map(new_ctx, env,
> axis2_ctx_get_property_map(ctx, env));
> }
> }
> Problem was detected with WSO2 WSF/PHP and I haven't simple Rampart-C test to submit.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@axis.apache.org
For additional commands, e-mail: c-dev-help@axis.apache.org