r3284 - in trunk/libmsip: include/libmsip source/messages

erik at minisip.org erik at minisip.org
Tue May 22 14:48:20 CEST 2007


Author: erik
Date: 2007-05-22 14:48:19 +0200 (Tue, 22 May 2007)
New Revision: 3284

Modified:
   trunk/libmsip/include/libmsip/SipRequest.h
   trunk/libmsip/source/messages/SipRequest.cxx
Log:

 * Fix: The first commit today simplified by setting the "To" header uri to 
   the requests target uri. This is not correct. This breaks registration
   where the "From" and "To" headers are both set to the users uri, and
   the target uri is the registrar.
   This changes this back to the old correct way.



Modified: trunk/libmsip/include/libmsip/SipRequest.h
===================================================================
--- trunk/libmsip/include/libmsip/SipRequest.h	2007-05-22 11:50:06 UTC (rev 3283)
+++ trunk/libmsip/include/libmsip/SipRequest.h	2007-05-22 12:48:19 UTC (rev 3284)
@@ -184,6 +184,7 @@
 		 * 
 		 */
 		void addDefaultHeaders(const SipUri& fromUri, 
+				const SipUri& toUri,
 				int seqNo, 
 				const std::string& callId="");
 		

Modified: trunk/libmsip/source/messages/SipRequest.cxx
===================================================================
--- trunk/libmsip/source/messages/SipRequest.cxx	2007-05-22 11:50:06 UTC (rev 3283)
+++ trunk/libmsip/source/messages/SipRequest.cxx	2007-05-22 12:48:19 UTC (rev 3284)
@@ -151,7 +151,7 @@
 							const string& msg)
 {
 	MRef<SipRequest*> req = new SipRequest("MESSAGE", toUri);
-	req->addDefaultHeaders(fromUri,seqNo,callId);
+	req->addDefaultHeaders(fromUri, toUri, seqNo, callId);
 	req->addHeader(new SipHeader(new SipHeaderValueUserAgent(HEADER_USER_AGENT_DEFAULT)));
 	req->setContent(new SipMessageContentIM(msg));
 	return req;
@@ -181,7 +181,7 @@
 {
 	MRef<SipRequest*> req = new SipRequest("INVITE", toUri);
 
-	req->addDefaultHeaders( fromUri, seq_no, call_id );
+	req->addDefaultHeaders( fromUri, toUri, seq_no, call_id );
 	addHeaders(req, contact, stack);
 
 	return req;
@@ -195,7 +195,7 @@
 							)
 {
 	MRef<SipRequest*> req = new SipRequest("NOTIFY", toUri);
-	req->addDefaultHeaders(fromUri, seqNo,callId);
+	req->addDefaultHeaders(fromUri, toUri, seqNo,callId);
 	req->addHeader(new SipHeader(new SipHeaderValueUserAgent(HEADER_USER_AGENT_DEFAULT)));
 	req->addHeader(new SipHeader(new SipHeaderValueEvent("presence")));
 	return req;
@@ -210,7 +210,7 @@
 {
 	MRef<SipRequest*> req = new SipRequest("REGISTER", registrar);
 
-	req->addDefaultHeaders(fromUri,seq_no,call_id);
+	req->addDefaultHeaders(fromUri, fromUri, seq_no, call_id);
 
 	req->addHeader(new SipHeader(*contactHdr));
 	req->addHeader(new SipHeader(new SipHeaderValueUserAgent(HEADER_USER_AGENT_DEFAULT)));
@@ -229,7 +229,7 @@
 {
 	MRef<SipRequest*> req = new SipRequest("SUBSCRIBE", toUri );
 
-	req->addDefaultHeaders(fromUri, seq_no, call_id);
+	req->addDefaultHeaders(fromUri, toUri, seq_no, call_id);
 	req->addHeader(new SipHeader(new SipHeaderValueContact(contact)));
 	req->addHeader(new SipHeader(new SipHeaderValueEvent("presence")));
 	req->addHeader(new SipHeader(new SipHeaderValueAccept("application/xpidf+xml")));
@@ -238,11 +238,12 @@
 }
 
 void SipRequest::addDefaultHeaders(const SipUri& fromUri,
+		const SipUri& toUri,
 		int seqNo,
 		const string& callId)
 {
 	addHeader(new SipHeader(new SipHeaderValueFrom(fromUri)));
-	addHeader(new SipHeader(new SipHeaderValueTo(uri)));
+	addHeader(new SipHeader(new SipHeaderValueTo(toUri)));
 	addHeader(new SipHeader(new SipHeaderValueCallID(callId)));
 	addHeader(new SipHeader(new SipHeaderValueCSeq(method, seqNo)));
 	addHeader(new SipHeader(new SipHeaderValueMaxForwards(70)));



More information about the Minisip-devel mailing list