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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]