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 "Damitha Kumarage (JIRA)" <ji...@apache.org> on 2007/09/28 23:42:50 UTC

[jira] Created: (AXIS2C-708) in conf_init.c whether service is loaded not checked

in conf_init.c whether service is loaded not checked
----------------------------------------------------

                 Key: AXIS2C-708
                 URL: https://issues.apache.org/jira/browse/AXIS2C-708
             Project: Axis2-C
          Issue Type: Bug
            Reporter: Damitha Kumarage


In conf_init.c 
impl_class = axutil_class_loader_create_dll(env, impl_info_param);
                        axis2_svc_set_impl_class(svc_desc, env, impl_class);
                        AXIS2_SVC_SKELETON_INIT_WITH_CONF(
                            (axis2_svc_skeleton_t *)impl_class, env, conf);

it can be seen that impl_class is not NULL checked before used. This could lead to seg faults in startup services if it is not
loaded for some reason.
Fixed this as
                        impl_class = axutil_class_loader_create_dll(env, impl_info_param);
                        if(!impl_class)
                        {
                            AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI,
                                "Service %s could not be loaded",
                                axis2_svc_get_name(svc_desc, env));
                            axutil_allocator_switch_to_local_pool(env->allocator);
                            return AXIS2_FAILURE;
                        }
                        axis2_svc_set_impl_class(svc_desc, env, impl_class);
                        AXIS2_SVC_SKELETON_INIT_WITH_CONF(
                            (axis2_svc_skeleton_t *)impl_class, env, conf);
                        axutil_allocator_switch_to_local_pool(env->allocator);

-- 
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-708) in conf_init.c whether service is loaded not checked

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

Dinesh Premalal resolved AXIS2C-708.
------------------------------------

       Resolution: Fixed
    Fix Version/s: Current (Nightly)
         Assignee: Damitha Kumarage

This issue is already fixed

> in conf_init.c whether service is loaded not checked
> ----------------------------------------------------
>
>                 Key: AXIS2C-708
>                 URL: https://issues.apache.org/jira/browse/AXIS2C-708
>             Project: Axis2-C
>          Issue Type: Bug
>            Reporter: Damitha Kumarage
>            Assignee: Damitha Kumarage
>             Fix For: Current (Nightly)
>
>
> In conf_init.c 
> impl_class = axutil_class_loader_create_dll(env, impl_info_param);
>                         axis2_svc_set_impl_class(svc_desc, env, impl_class);
>                         AXIS2_SVC_SKELETON_INIT_WITH_CONF(
>                             (axis2_svc_skeleton_t *)impl_class, env, conf);
> it can be seen that impl_class is not NULL checked before used. This could lead to seg faults in startup services if it is not
> loaded for some reason.
> Fixed this as
>                         impl_class = axutil_class_loader_create_dll(env, impl_info_param);
>                         if(!impl_class)
>                         {
>                             AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI,
>                                 "Service %s could not be loaded",
>                                 axis2_svc_get_name(svc_desc, env));
>                             axutil_allocator_switch_to_local_pool(env->allocator);
>                             return AXIS2_FAILURE;
>                         }
>                         axis2_svc_set_impl_class(svc_desc, env, impl_class);
>                         AXIS2_SVC_SKELETON_INIT_WITH_CONF(
>                             (axis2_svc_skeleton_t *)impl_class, env, conf);
>                         axutil_allocator_switch_to_local_pool(env->allocator);

-- 
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