Ticket #672: Option to add custom parameters in the account Contact URI

git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@2373 74dad513-b988-da41-8d7b-12977e46ad98
diff --git a/pjsip/src/pjsua-lib/pjsua_acc.c b/pjsip/src/pjsua-lib/pjsua_acc.c
index 7faec4e..12d7af4 100644
--- a/pjsip/src/pjsua-lib/pjsua_acc.c
+++ b/pjsip/src/pjsua-lib/pjsua_acc.c
@@ -681,14 +681,16 @@
 
 	tmp = (char*) pj_pool_alloc(pool, PJSIP_MAX_URL_SIZE);
 	len = pj_ansi_snprintf(tmp, PJSIP_MAX_URL_SIZE,
-			       "<sip:%.*s%s%.*s:%d;transport=%s>",
+			       "<sip:%.*s%s%.*s:%d;transport=%s%.*s>",
 			       (int)acc->user_part.slen,
 			       acc->user_part.ptr,
 			       (acc->user_part.slen? "@" : ""),
 			       (int)via_addr->slen,
 			       via_addr->ptr,
 			       rport,
-			       tp->type_name);
+			       tp->type_name,
+			       (int)acc->cfg.contact_params.slen,
+			       acc->cfg.contact_params.ptr);
 	if (len < 1) {
 	    PJ_LOG(1,(THIS_FILE, "URI too long"));
 	    pj_pool_release(pool);
@@ -1663,7 +1665,7 @@
     /* Create the contact header */
     contact->ptr = (char*)pj_pool_alloc(pool, PJSIP_MAX_URL_SIZE);
     contact->slen = pj_ansi_snprintf(contact->ptr, PJSIP_MAX_URL_SIZE,
-				     "%.*s%s<%s:%.*s%s%s%.*s%s:%d%s>",
+				     "%.*s%s<%s:%.*s%s%s%.*s%s:%d%s%.*s>",
 				     (int)acc->display.slen,
 				     acc->display.ptr,
 				     (acc->display.slen?" " : ""),
@@ -1676,7 +1678,9 @@
 				     local_addr.ptr,
 				     endquote,
 				     local_port,
-				     transport_param);
+				     transport_param,
+				     (int)acc->cfg.contact_params.slen,
+				     acc->cfg.contact_params.ptr);
 
     return PJ_SUCCESS;
 }
@@ -1813,7 +1817,7 @@
     /* Create the contact header */
     contact->ptr = (char*) pj_pool_alloc(pool, PJSIP_MAX_URL_SIZE);
     contact->slen = pj_ansi_snprintf(contact->ptr, PJSIP_MAX_URL_SIZE,
-				     "%.*s%s<%s:%.*s%s%s%.*s%s:%d%s>",
+				     "%.*s%s<%s:%.*s%s%s%.*s%s:%d%s%.*s>",
 				     (int)acc->display.slen,
 				     acc->display.ptr,
 				     (acc->display.slen?" " : ""),
@@ -1826,7 +1830,9 @@
 				     local_addr.ptr,
 				     endquote,
 				     local_port,
-				     transport_param);
+				     transport_param,
+				     (int)acc->cfg.contact_params.slen,
+				     acc->cfg.contact_params.ptr);
 
     return PJ_SUCCESS;
 }