From 4c022cb9d6efbdd9d8a46353d8a9d9d1cb7411d9 Mon Sep 17 00:00:00 2001 From: Daniel-Constantin Mierla Date: Tue, 22 Nov 2022 09:18:47 +0100 Subject: [PATCH] core: xavp - number value is hold on long type field - removed the int field for type SR_XTYPE_INT --- src/core/xavp.c | 57 +++++++++++++++++++++++-------------------------- src/core/xavp.h | 12 +++++------ 2 files changed, 32 insertions(+), 37 deletions(-) diff --git a/src/core/xavp.c b/src/core/xavp.c index be925105204..8b14647ca41 100644 --- a/src/core/xavp.c +++ b/src/core/xavp.c @@ -697,9 +697,6 @@ void xavx_print_list_content(char *name, sr_xavp_t **head, sr_xavp_t **rlist, in case SR_XTYPE_NULL: LM_INFO(" %s value: \n", name); break; - case SR_XTYPE_INT: - LM_INFO(" %s value (int): %d\n", name, avp->val.v.i); - break; case SR_XTYPE_STR: LM_INFO(" %s value (str): %s\n", name, avp->val.v.s.s); break; @@ -1035,7 +1032,7 @@ sr_xavp_t* xavp_get_child_with_ival(str *rname, str *cname) vavp = xavp_get_child(rname, cname); - if(vavp==NULL || vavp->val.type!=SR_XTYPE_INT) + if(vavp==NULL || vavp->val.type!=SR_XTYPE_LONG) return NULL; return vavp; @@ -1105,13 +1102,13 @@ int xavp_set_child_xval(str *rname, str *cname, sr_xval_t *xval) /** * */ -int xavp_set_child_ival(str *rname, str *cname, int ival) +int xavp_set_child_ival(str *rname, str *cname, long ival) { sr_xval_t xval; memset(&xval, 0, sizeof(sr_xval_t)); - xval.type = SR_XTYPE_INT; - xval.v.i = ival; + xval.type = SR_XTYPE_LONG; + xval.v.l = ival; return xavp_set_child_xval(rname, cname, &xval); } @@ -1156,10 +1153,10 @@ int xavp_serialize_fields(str *rname, char *obuf, int olen) avp = ravp->val.v.xavp; while(avp) { switch(avp->val.type) { - case SR_XTYPE_INT: - LM_DBG(" XAVP int value: %d\n", avp->val.v.i); - ostr.len = snprintf(ostr.s, olen-rlen, "%.*s=%u;", - avp->name.len, avp->name.s, (unsigned int)avp->val.v.i); + case SR_XTYPE_LONG: + LM_DBG(" XAVP long int value: %ld\n", avp->val.v.l); + ostr.len = snprintf(ostr.s, olen-rlen, "%.*s=%lu;", + avp->name.len, avp->name.s, (unsigned long)avp->val.v.l); if(ostr.len<=0 || ostr.len>=olen-rlen) { LM_ERR("failed to serialize int value (%d/%d\n", ostr.len, olen-rlen); @@ -1424,13 +1421,13 @@ sr_xavp_t *xavu_set_xval(str *name, sr_xval_t *val, sr_xavp_t **list) /** * */ -sr_xavp_t *xavu_set_ival(str *rname, int ival) +sr_xavp_t *xavu_set_ival(str *rname, long ival) { sr_xval_t xval; memset(&xval, 0, sizeof(sr_xval_t)); - xval.type = SR_XTYPE_INT; - xval.v.i = ival; + xval.type = SR_XTYPE_LONG; + xval.v.l = ival; return xavu_set_xval(rname, &xval, NULL); } @@ -1522,13 +1519,13 @@ sr_xavp_t *xavu_set_child_xval(str *rname, str *cname, sr_xval_t *xval) /** * */ -sr_xavp_t *xavu_set_child_ival(str *rname, str *cname, int ival) +sr_xavp_t *xavu_set_child_ival(str *rname, str *cname, long ival) { sr_xval_t xval; memset(&xval, 0, sizeof(sr_xval_t)); - xval.type = SR_XTYPE_INT; - xval.v.i = ival; + xval.type = SR_XTYPE_LONG; + xval.v.l = ival; return xavu_set_child_xval(rname, cname, &xval); } @@ -1573,7 +1570,7 @@ sr_xavp_t* xavu_get_child_with_ival(str *rname, str *cname) vavp = xavu_get_child(rname, cname); - if(vavp==NULL || vavp->val.type!=SR_XTYPE_INT) + if(vavp==NULL || vavp->val.type!=SR_XTYPE_LONG) return NULL; return vavp; @@ -1622,10 +1619,10 @@ int xavu_serialize_fields(str *rname, char *obuf, int olen) avu = ravu->val.v.xavp; while(avu) { switch(avu->val.type) { - case SR_XTYPE_INT: - LM_DBG(" XAVP int value: %d\n", avu->val.v.i); - ostr.len = snprintf(ostr.s, olen-rlen, "%.*s=%u;", - avu->name.len, avu->name.s, (unsigned int)avu->val.v.i); + case SR_XTYPE_LONG: + LM_DBG(" XAVP long int value: %ld\n", avu->val.v.l); + ostr.len = snprintf(ostr.s, olen-rlen, "%.*s=%lu;", + avu->name.len, avu->name.s, (unsigned long)avu->val.v.l); if(ostr.len<=0 || ostr.len>=olen-rlen) { LM_ERR("failed to serialize int value (%d/%d\n", ostr.len, olen-rlen); @@ -2485,7 +2482,7 @@ sr_xavp_t* xavi_get_child_with_ival(str *rname, str *cname) vavi = xavi_get_child(rname, cname); - if(vavi==NULL || vavi->val.type!=SR_XTYPE_INT) + if(vavi==NULL || vavi->val.type!=SR_XTYPE_LONG) return NULL; return vavi; @@ -2555,13 +2552,13 @@ int xavi_set_child_xval(str *rname, str *cname, sr_xval_t *xval) /** * */ -int xavi_set_child_ival(str *rname, str *cname, int ival) +int xavi_set_child_ival(str *rname, str *cname, long ival) { sr_xval_t xval; memset(&xval, 0, sizeof(sr_xval_t)); - xval.type = SR_XTYPE_INT; - xval.v.i = ival; + xval.type = SR_XTYPE_LONG; + xval.v.l = ival; return xavi_set_child_xval(rname, cname, &xval); } @@ -2605,10 +2602,10 @@ int xavi_serialize_fields(str *rname, char *obuf, int olen) avi = ravi->val.v.xavp; while(avi) { switch(avi->val.type) { - case SR_XTYPE_INT: - LM_DBG(" XAVP int value: %d\n", avi->val.v.i); - ostr.len = snprintf(ostr.s, olen-rlen, "%.*s=%u;", - avi->name.len, avi->name.s, (unsigned int)avi->val.v.i); + case SR_XTYPE_LONG: + LM_DBG(" XAVP long int value: %ld\n", avi->val.v.l); + ostr.len = snprintf(ostr.s, olen-rlen, "%.*s=%lu;", + avi->name.len, avi->name.s, (unsigned long)avi->val.v.l); if(ostr.len<=0 || ostr.len>=olen-rlen) { LM_ERR("failed to serialize int value (%d/%d\n", ostr.len, olen-rlen); diff --git a/src/core/xavp.h b/src/core/xavp.h index 880ea980dc8..6679a5014fa 100644 --- a/src/core/xavp.h +++ b/src/core/xavp.h @@ -27,10 +27,9 @@ struct _sr_xavp; /* types for xavp values */ typedef enum { SR_XTYPE_NULL=0, - SR_XTYPE_INT, /* integer value */ + SR_XTYPE_LONG, /* long value */ SR_XTYPE_STR, /* str value */ SR_XTYPE_TIME, /* timestamp value */ - SR_XTYPE_LONG, /* long value */ SR_XTYPE_LLONG, /* long long value */ SR_XTYPE_XAVP, /* xavp value */ SR_XTYPE_VPTR, /* void pointer value (no free on destroy) */ @@ -51,7 +50,6 @@ typedef struct _sr_data { typedef struct _sr_xval { sr_xtype_t type; /* type of the value */ union { - int i; str s; /* cloned in shared memory */ time_t t; long l; @@ -110,7 +108,7 @@ sr_xavp_t* xavp_get_child_with_ival(str *rname, str *cname); sr_xavp_t* xavp_get_child_with_sval(str *rname, str *cname); int xavp_serialize_fields(str *rname, char *obuf, int olen); -int xavp_set_child_ival(str *rname, str *cname, int ival); +int xavp_set_child_ival(str *rname, str *cname, long ival); int xavp_set_child_sval(str *rname, str *cname, str *sval); /** xavu api */ @@ -127,10 +125,10 @@ int xavu_rm(sr_xavp_t *xa, sr_xavp_t **head); int xavu_rm_by_name(str *name, sr_xavp_t **head); int xavu_rm_child_by_name(str *rname, str *cname); sr_xavp_t *xavu_set_xval(str *name, sr_xval_t *val, sr_xavp_t **list); -sr_xavp_t *xavu_set_ival(str *rname, int ival); +sr_xavp_t *xavu_set_ival(str *rname, long ival); sr_xavp_t *xavu_set_sval(str *rname, str *sval); sr_xavp_t *xavu_set_child_xval(str *rname, str *cname, sr_xval_t *xval); -sr_xavp_t *xavu_set_child_ival(str *rname, str *cname, int ival); +sr_xavp_t *xavu_set_child_ival(str *rname, str *cname, long ival); sr_xavp_t *xavu_set_child_sval(str *rname, str *cname, str *sval); sr_xavp_t* xavu_get_child(str *rname, str *cname); sr_xavp_t* xavu_get_child_with_ival(str *rname, str *cname); @@ -178,7 +176,7 @@ sr_xavp_t* xavi_get_child_with_ival(str *rname, str *cname); sr_xavp_t* xavi_get_child_with_sval(str *rname, str *cname); int xavi_serialize_fields(str *rname, char *obuf, int olen); -int xavi_set_child_ival(str *rname, str *cname, int ival); +int xavi_set_child_ival(str *rname, str *cname, long ival); int xavi_set_child_sval(str *rname, str *cname, str *sval); #endif