浏览代码

core: pv - define the string printed for null value

- added function to return the str null value

(cherry picked from commit c84a89a3ab5b3f3174203753e51926143b0309f8)
Daniel-Constantin Mierla 6 年之前
父节点
当前提交
110de27806
共有 2 个文件被更改,包括 12 次插入2 次删除
  1. 11 2
      src/core/pvapi.c
  2. 1 0
      src/core/pvar.h

+ 11 - 2
src/core/pvapi.c

@@ -674,7 +674,8 @@ static char pv_str_empty_buf[2];
 static char pv_str_null_buf[8];
 
 static str pv_str_empty  = { "", 0 };
-static str pv_str_null   = { "<null>", 6 };
+#define PV_STR_NULL_VAL	"<null>"
+static str pv_str_null   = { PV_STR_NULL_VAL, sizeof(PV_STR_NULL_VAL)-1 };
 int pv_get_null(struct sip_msg *msg, pv_param_t *param, pv_value_t *res)
 {
 	if(res==NULL)
@@ -686,6 +687,14 @@ int pv_get_null(struct sip_msg *msg, pv_param_t *param, pv_value_t *res)
 	return 0;
 }
 
+/**
+ *
+ */
+str *pv_get_null_str(void)
+{
+	return &pv_str_null;
+}
+
 /**
  *
  */
@@ -2003,7 +2012,7 @@ int pv_init_api(void)
 	pv_str_empty_buf[0] = '\0';
 	pv_str_empty_buf[1] = '\0';
 	pv_str_empty.s = pv_str_empty_buf;
-	strcpy(pv_str_null_buf, "<null>");
+	strcpy(pv_str_null_buf, PV_STR_NULL_VAL);
 	pv_str_null.s = pv_str_null_buf;
 
 	if(register_pvars_mod("core", _core_pvs)<0)

+ 1 - 0
src/core/pvar.h

@@ -209,6 +209,7 @@ int pv_free_extra_list(void);
 int pv_locate_name(str *in);
 pv_spec_t* pv_cache_get(str *name);
 str* pv_cache_get_name(pv_spec_t *spec);
+str *pv_get_null_str(void);
 
 /*! \brief PV helper functions */
 int pv_get_null(struct sip_msg *msg, pv_param_t *param, pv_value_t *res);