Module: kamailio
Branch: master
Commit: 151299d057f858277d32c360221f7a93542c40d3
URL:
https://github.com/kamailio/kamailio/commit/151299d057f858277d32c360221f7a9…
Author: Daniel-Constantin Mierla <miconda(a)gmail.com>
Committer: Daniel-Constantin Mierla <miconda(a)gmail.com>
Date: 2018-06-12T10:14:26+02:00
core: xavp - new helper function xavp_add_value_after()
---
Modified: src/core/xavp.c
Modified: src/core/xavp.h
---
Diff:
https://github.com/kamailio/kamailio/commit/151299d057f858277d32c360221f7a9…
Patch:
https://github.com/kamailio/kamailio/commit/151299d057f858277d32c360221f7a9…
---
diff --git a/src/core/xavp.c b/src/core/xavp.c
index e6acefd9c9..e1cf394171 100644
--- a/src/core/xavp.c
+++ b/src/core/xavp.c
@@ -195,6 +195,26 @@ sr_xavp_t *xavp_add_value(str *name, sr_xval_t *val, sr_xavp_t
**list)
return avp;
}
+sr_xavp_t *xavp_add_value_after(str *name, sr_xval_t *val, sr_xavp_t *pxavp)
+{
+ sr_xavp_t *avp=0;
+
+ avp = xavp_new_value(name, val);
+ if (avp==NULL)
+ return NULL;
+
+ /* link new xavp */
+ if(pxavp) {
+ avp->next = pxavp->next;
+ pxavp->next = avp;
+ } else {
+ avp->next = *_xavp_list_crt;
+ *_xavp_list_crt = avp;
+ }
+
+ return avp;
+}
+
sr_xavp_t *xavp_add_xavp_value(str *rname, str *name, sr_xval_t *val, sr_xavp_t **list)
{
sr_xavp_t *ravp=0;
diff --git a/src/core/xavp.h b/src/core/xavp.h
index 2177461d69..83f4f09b15 100644
--- a/src/core/xavp.h
+++ b/src/core/xavp.h
@@ -78,6 +78,7 @@ int xavp_add(sr_xavp_t *xavp, sr_xavp_t **list);
int xavp_add_last(sr_xavp_t *xavp, sr_xavp_t **list);
int xavp_add_after(sr_xavp_t *nxavp, sr_xavp_t *pxavp);
sr_xavp_t *xavp_add_value(str *name, sr_xval_t *val, sr_xavp_t **list);
+sr_xavp_t *xavp_add_value_after(str *name, sr_xval_t *val, sr_xavp_t *pxavp);
sr_xavp_t *xavp_add_xavp_value(str *rname, str *name, sr_xval_t *val, sr_xavp_t **list);
sr_xavp_t *xavp_set_value(str *name, int idx, sr_xval_t *val, sr_xavp_t **list);
sr_xavp_t *xavp_get(str *name, sr_xavp_t *start);