Hi,

You have to create an axutil_property_t* and set the server cert
there. The following snippet is wrong:

<snip>
axis2_options_set_property(options, env, AXIS2_SSL_SERVER_CERT,
server_cert_path)
</snip>

It should be
<snip>
axutil_property_t* property =axutil_property_create_with_args(env, 0,
0, 0, server_cert_path);
axis2_options_set_property(options, env, AXIS2_SSL_SERVER_CERT,property );
</snip>

Regards,
Shankar

On Tue, Sep 1, 2009 at 2:08 AM, Kevin Steves<stev...@pobox.com> wrote:
> haven't figured this out yet, but what I am seeing in tracing with
> gdb, is we get to
> http_sender.c:axis2_http_sender_configure_server_cert().
>
> axis2_msg_ctx_get_property() returns a non-NULL (axutil_property_t*),
> however the value member has a non-NULL but invalid pointer (as
> returned by axutil_property_get_value()).  then
> axis2_http_client_set_server_cert() is called with the pointer
> (server_cert).
>
> #ifndef AXIS2_LIBCURL_ENABLED
> static axis2_status_t
> axis2_http_sender_configure_server_cert (axis2_http_sender_t * sender,
>                                         const axutil_env_t * env,
>                                         axis2_msg_ctx_t * msg_ctx)
> {
>    axutil_property_t *server_cert_property = NULL;
>    axutil_param_t *server_cert_param = NULL;
>    axis2_char_t *server_cert = NULL;
>    axis2_status_t status = AXIS2_FAILURE;
>
>    AXIS2_PARAM_CHECK (env->error, msg_ctx, AXIS2_FAILURE);
>
>    server_cert_property = axis2_msg_ctx_get_property (msg_ctx, env,
>                                                       AXIS2_SSL_SERVER_CERT);
>    if (server_cert_property)
>    {
>        server_cert =
>            (axis2_char_t *) axutil_property_get_value (server_cert_property,
>                                                        env);
>    }
>    else
>    {
>        server_cert_param = axis2_msg_ctx_get_parameter (msg_ctx,
>                                                         env,
>                                                         
> AXIS2_SSL_SERVER_CERT);
>        if (server_cert_param)
>        {
>            server_cert =
>                (axis2_char_t *) axutil_param_get_value (server_cert_param, 
> env);
>        }
>    }
>
>    if (server_cert)
>    {
>        status = axis2_http_client_set_server_cert (sender->client,
>                                                    env, server_cert);
>    }
>
>    return status;
> }
> #endif
>



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

Reply via email to