소스 검색

ims_registrar_scscf: replace STR_PARAM with PARAM_STR

Alekzander Spiridonov 11 년 전
부모
커밋
ef3def8cba
1개의 변경된 파일14개의 추가작업 그리고 26개의 파일을 삭제
  1. 14 26
      modules/ims_registrar_scscf/reg_mod.c

+ 14 - 26
modules/ims_registrar_scscf/reg_mod.c

@@ -88,22 +88,19 @@ usrloc_api_t ul; /*!< Structure containing pointers to usrloc functions*/
 char *scscf_user_data_dtd = 0; /* Path to "CxDataType.dtd" */
 char *scscf_user_data_dtd = 0; /* Path to "CxDataType.dtd" */
 char *scscf_user_data_xsd = 0; /* Path to "CxDataType_Rel6.xsd" or "CxDataType_Rel7.xsd" */
 char *scscf_user_data_xsd = 0; /* Path to "CxDataType_Rel6.xsd" or "CxDataType_Rel7.xsd" */
 int scscf_support_wildcardPSI = 0;
 int scscf_support_wildcardPSI = 0;
-char *scscf_name = "sip:scscf2.ims.smilecoms.com:6060"; /* default scscf_name - actual should be set via parameter*/
 int store_data_on_dereg = 0; /**< should we store SAR data on de-registration  */
 int store_data_on_dereg = 0; /**< should we store SAR data on de-registration  */
 
 
 int ue_unsubscribe_on_dereg = 0;  /*many UEs do not unsubscribe on de reg - therefore we should remove their subscription and not send a notify
 int ue_unsubscribe_on_dereg = 0;  /*many UEs do not unsubscribe on de reg - therefore we should remove their subscription and not send a notify
 				   Some UEs do unsubscribe then everything is fine*/
 				   Some UEs do unsubscribe then everything is fine*/
 
 
 /* parameters storage */
 /* parameters storage */
-char* cxdx_dest_realm_s = "ims.smilecoms.com";
-str cxdx_dest_realm;
+str cxdx_dest_realm = str_init("ims.smilecoms.com");
 
 
 //Only used if we want to force the Rx peer
 //Only used if we want to force the Rx peer
 //Usually this is configured at a stack level and the first request uses realm routing
 //Usually this is configured at a stack level and the first request uses realm routing
-char* cxdx_forced_peer_s = "";
-str cxdx_forced_peer;
+str cxdx_forced_peer = {0,0};
 
 
-str scscf_name_str;
+str scscf_name_str = str_init("sip:scscf2.ims.smilecoms.com:6060"); /* default scscf_name - actual should be set via parameter*/
 str scscf_serviceroute_uri_str; /* Service Route URI */
 str scscf_serviceroute_uri_str; /* Service Route URI */
 
 
 /*! \brief Module init & destroy function */
 /*! \brief Module init & destroy function */
@@ -220,27 +217,27 @@ static param_export_t params[] = {
     {"default_q", INT_PARAM, &default_registrar_cfg.default_q},
     {"default_q", INT_PARAM, &default_registrar_cfg.default_q},
     {"append_branches", INT_PARAM, &default_registrar_cfg.append_branches},
     {"append_branches", INT_PARAM, &default_registrar_cfg.append_branches},
     {"case_sensitive", INT_PARAM, &default_registrar_cfg.case_sensitive},
     {"case_sensitive", INT_PARAM, &default_registrar_cfg.case_sensitive},
-    {"realm_prefix", STR_PARAM, &default_registrar_cfg.realm_pref},
+    {"realm_prefix", PARAM_STRING, &default_registrar_cfg.realm_pref},
 
 
-    {"received_param", STR_PARAM, &rcv_param},
-    {"received_avp", STR_PARAM, &rcv_avp_param},
-    {"aor_avp", STR_PARAM, &aor_avp_param},
-    {"reg_callid_avp", STR_PARAM, &reg_callid_avp_param},
+    {"received_param", PARAM_STR, &rcv_param},
+    {"received_avp", PARAM_STRING, &rcv_avp_param},
+    {"aor_avp", PARAM_STRING, &aor_avp_param},
+    {"reg_callid_avp", PARAM_STRING, &reg_callid_avp_param},
     {"max_contacts", INT_PARAM, &default_registrar_cfg.max_contacts},
     {"max_contacts", INT_PARAM, &default_registrar_cfg.max_contacts},
     {"retry_after", INT_PARAM, &default_registrar_cfg.retry_after},
     {"retry_after", INT_PARAM, &default_registrar_cfg.retry_after},
     {"sock_flag", INT_PARAM, &sock_flag},
     {"sock_flag", INT_PARAM, &sock_flag},
-    {"sock_hdr_name", STR_PARAM, &sock_hdr_name.s},
+    {"sock_hdr_name", PARAM_STR, &sock_hdr_name},
     {"method_filtering", INT_PARAM, &method_filtering},
     {"method_filtering", INT_PARAM, &method_filtering},
     {"use_path", INT_PARAM, &path_enabled},
     {"use_path", INT_PARAM, &path_enabled},
     {"path_mode", INT_PARAM, &path_mode},
     {"path_mode", INT_PARAM, &path_mode},
     {"path_use_received", INT_PARAM, &path_use_params},
     {"path_use_received", INT_PARAM, &path_use_params},
-    {"user_data_dtd", STR_PARAM, &scscf_user_data_dtd},
-    {"user_data_xsd", STR_PARAM, &scscf_user_data_xsd},
+    {"user_data_dtd", PARAM_STRING, &scscf_user_data_dtd},
+    {"user_data_xsd", PARAM_STRING, &scscf_user_data_xsd},
     {"support_wildcardPSI", INT_PARAM, &scscf_support_wildcardPSI},
     {"support_wildcardPSI", INT_PARAM, &scscf_support_wildcardPSI},
-    {"scscf_name", STR_PARAM, &scscf_name}, //TODO: need to set this to default
+    {"scscf_name", PARAM_STR, &scscf_name_str}, //TODO: need to set this to default
     {"store_profile_dereg", INT_PARAM, &store_data_on_dereg},
     {"store_profile_dereg", INT_PARAM, &store_data_on_dereg},
-    {"cxdx_forced_peer", STR_PARAM, &cxdx_forced_peer_s},
-    {"cxdx_dest_realm", STR_PARAM, &cxdx_dest_realm_s},
+    {"cxdx_forced_peer", PARAM_STR, &cxdx_forced_peer},
+    {"cxdx_dest_realm", PARAM_STR, &cxdx_dest_realm},
 
 
     {"subscription_default_expires", INT_PARAM, &subscription_default_expires},
     {"subscription_default_expires", INT_PARAM, &subscription_default_expires},
     {"subscription_min_expires", INT_PARAM, &subscription_min_expires},
     {"subscription_min_expires", INT_PARAM, &subscription_min_expires},
@@ -294,9 +291,6 @@ static int mod_init(void) {
     qvalue_t dq;
     qvalue_t dq;
 
 
     /*build the required strings */
     /*build the required strings */
-    scscf_name_str.s = scscf_name;
-    scscf_name_str.len = strlen(scscf_name);
-
     scscf_serviceroute_uri_str.s =
     scscf_serviceroute_uri_str.s =
             (char*) pkg_malloc(orig_prefix.len + scscf_name_str.len);
             (char*) pkg_malloc(orig_prefix.len + scscf_name_str.len);
 
 
@@ -362,8 +356,6 @@ static int mod_init(void) {
         return -1;
         return -1;
     }
     }
 
 
-    rcv_param.len = strlen(rcv_param.s);
-
     if (cfg_declare("registrar", registrar_cfg_def, &default_registrar_cfg,
     if (cfg_declare("registrar", registrar_cfg_def, &default_registrar_cfg,
             cfg_sizeof(registrar), &registrar_cfg)) {
             cfg_sizeof(registrar), &registrar_cfg)) {
         LM_ERR("Fail to declare the configuration\n");
         LM_ERR("Fail to declare the configuration\n");
@@ -459,12 +451,8 @@ static int mod_init(void) {
     }
     }
 
 
     if (sock_hdr_name.s) {
     if (sock_hdr_name.s) {
-        sock_hdr_name.len = strlen(sock_hdr_name.s);
         if (sock_hdr_name.len == 0 || sock_flag == -1) {
         if (sock_hdr_name.len == 0 || sock_flag == -1) {
             LM_WARN("empty sock_hdr_name or sock_flag no set -> reseting\n");
             LM_WARN("empty sock_hdr_name or sock_flag no set -> reseting\n");
-            pkg_free(
-                    sock_hdr_name.s);
-            sock_hdr_name.s = 0;
             sock_hdr_name.len = 0;
             sock_hdr_name.len = 0;
             sock_flag = -1;
             sock_flag = -1;
         }
         }