Storing the policy include as parameter in service. This code has been earlier commented out because of memeory corruption. 

diff --git a/src/util/sandesha2_utils.c b/src/util/sandesha2_utils.c
index 2e540a6..16c015d 100644
--- a/src/util/sandesha2_utils.c
+++ b/src/util/sandesha2_utils.c
@@ -225,8 +225,8 @@
 
     AXIS2_PARAM_CHECK(env->error, svc, NULL);
 
-    /*axutil_allocator_switch_to_global_pool(env->allocator);*/
-    /*param = axis2_svc_get_param(svc, env, SANDESHA2_SANDESHA_PROPERTY_BEAN);*/
+    axutil_allocator_switch_to_global_pool(env->allocator);
+    param = axis2_svc_get_param(svc, env, SANDESHA2_SANDESHA_PROPERTY_BEAN);
     if(!param)
     {
         axis2_rm_assertion_t *rm_assertion = NULL;
@@ -234,7 +234,6 @@
         rm_assertion = sandesha2_util_get_rm_assertion(env, svc); 
         if(rm_assertion)
         {
-            axutil_allocator_switch_to_global_pool(env->allocator);
             property_bean = sandesha2_property_mgr_load_properties_from_policy(
                 env, rm_assertion);
             if(property_bean)
@@ -254,7 +253,7 @@
         else
         {
             AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[sandesha2] Cannot Retreive RM assertion");
-            /*axutil_allocator_switch_to_local_pool(env->allocator);*/
+            axutil_allocator_switch_to_local_pool(env->allocator);
             return NULL;
         }
     }
@@ -263,7 +262,7 @@
         property_bean = (sandesha2_property_bean_t*) axutil_param_get_value(param, env);
     }
 
-    /*axutil_allocator_switch_to_local_pool(env->allocator);*/
+    axutil_allocator_switch_to_local_pool(env->allocator);
     if(!property_bean)
     {
         AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI,