Browse Source

core: better style for serializing via reply xavp params

Daniel-Constantin Mierla 2 years ago
parent
commit
a7e63e43cc
1 changed files with 11 additions and 10 deletions
  1. 11 10
      src/core/msg_translator.c

+ 11 - 10
src/core/msg_translator.c

@@ -2345,13 +2345,15 @@ char *generate_res_buf_from_sip_res(
 	if(msg && msg->via2 && (msg->msg_flags & FL_ADD_XAVP_VIA_REPLY_PARAMS)
 			&& _ksr_xavp_via_reply_params.len > 0) {
 		xparams.s = pv_get_buffer();
-		xparams.len = xavp_serialize_fields(
-				&_ksr_xavp_via_reply_params, xparams.s, pv_get_buffer_size());
+		xparams.len = xavp_serialize_fields_style(&_ksr_xavp_via_reply_params,
+				1, xparams.s, pv_get_buffer_size());
 		if(xparams.len > 0) {
-			anchor = anchor_lump(msg, msg->via2->params.s
-					+ msg->via2->params.len - msg->buf, 0, 0);
+			anchor = anchor_lump(msg,
+					msg->via2->params.s + msg->via2->params.len - msg->buf, 0,
+					0);
 			if(anchor != NULL) {
-				if(insert_new_lump_after(anchor, xparams.s, xparams.len, 0) == 0) {
+				if(insert_new_lump_after(anchor, xparams.s, xparams.len, 0)
+						== 0) {
 					LM_ERR("unable to add via reply xavp params\n");
 				}
 			}
@@ -2481,10 +2483,10 @@ char *build_res_buf_from_sip_req(unsigned int code, str *text, str *new_tag,
 	if(msg && (msg->msg_flags & FL_ADD_XAVP_VIA_REPLY_PARAMS)
 			&& _ksr_xavp_via_reply_params.len > 0) {
 		xparams.s = pv_get_buffer();
-		xparams.len = xavp_serialize_fields(
-				&_ksr_xavp_via_reply_params, xparams.s, pv_get_buffer_size());
+		xparams.len = xavp_serialize_fields_style(&_ksr_xavp_via_reply_params,
+				1, xparams.s, pv_get_buffer_size());
 		if(xparams.len > 0) {
-			len += xparams.len;  /* ending ';' included */
+			len += xparams.len; /* starting ';' included */
 		}
 	}
 
@@ -2621,8 +2623,7 @@ char *build_res_buf_from_sip_req(unsigned int code, str *text, str *new_tag,
 							(hdr->body.s + hdr->body.len) - hdr->name.s, msg);
 				}
 				if(xparams.len > 0) {
-					append_str(p, ";", 1);
-					append_str(p, xparams.s, xparams.len - 1);
+					append_str(p, xparams.s, xparams.len);
 				}
 				append_str(p, CRLF, CRLF_LEN);
 				/* if is HTTP, replace Via with Sia