Revision: 15902
Author: vladimir.ralev
Date: Mon Dec 20 13:04:13 2010
Log: Update Issue 2226
Fix regressions in Hudson
http://code.google.com/p/mobicents/source/detail?r=15902

Added:
/trunk/servers/sip-servlets/sip-servlets-test-suite/testsuite/src/test/resources/org/mobicents/servlet/sip/testsuite/simple/testkeys
Modified:
/trunk/servers/sip-servlets/sip-servlets-impl/src/main/java/org/mobicents/servlet/sip/message/SipServletRequestImpl.java

=======================================
--- /dev/null
+++ /trunk/servers/sip-servlets/sip-servlets-test-suite/testsuite/src/test/resources/org/mobicents/servlet/sip/testsuite/simple/testkeys Mon Dec 20 13:04:13 2010
@@ -0,0 +1,40 @@
+þíþí      localhostýé
+´R¼0‚¸0
++*‚¤Úy~s²¥U×oó
+Hc†u"ê):B
+8m × ã¼ÖüüAbÌ3m¸§µNÿ•ÍÆî}µ„)]7ЪoT+聖ÀGXè| ½=ZÓÐt‹Dò+À’å;·µ.æµ-AéÙ†m,ådA; ÖÖLä‹gFébæ-òðè÷j‘~â1œ(¹R®ÐRš0Ço©iýS›Ï{ÎШrnUbDB•"õï§µG¶T šM×] ŒÎ §T
+Âiý;Z<––\‹
+OìÍç}z±ôè6¦Û”lh‚.,¬Sëzâ¾' œF*èi¸—Ô†wà2N ¢±œ‰1¾tõ„Jÿ‚ T­H®¯ôäæ¾Å֝íûWÃñjî"’¦¦µ
+»ýÔÁ~p}Õ'1æ: JÂ|>¦D€v$· gùíû¤Ål´ÇZ
+$J$:X4$ÞöâᯚðG6òvi=eÃ;_š´‹+á/ׁ=b‘°¡Œy‰l´â¢t—û ŠNÛ ¹1Æ
+YÇýæ
+¯WŠŠƒ˜8ÛÞêwڝU“È!>pP•äÌ->a²„•åx{²5«øáûáð `Ú
+èÈ
+SÞÊÆê½ÓÚSvv-,VÂ×±"e3$ý¶XÌxëxÂ$È
+4Í
+ä>7÷T€i+¸u˜       éªC^Ó×á¶
+cú°<¢ßšs ¸”Œ¸Ï‘»uõ}ˆF³–kŠ]p|^ÐÍc6”å      à)
++µ^(uB^W[ɬ7,¿"aºù(7Öþ”®ž#Û*Ð$a!¶
+7ÆhÞ±èBx¬púÁ)€Õ}øÐ
+„1PD3i(áé«\uÝ7Íïä/z[
+çØDÛÇåcߖGþo;0ÏjZÌÃß/”ý͊á...@x.509ˆ0‚„0‚íadf0
+      *†H†÷
+0ˆ10    UUS10    UCA10U     Sunnyvale1!0U
+Ficticious Widgets, Inc.1!0U Widget Development Group10U localhost0
+
+040722224838Z
+110522224838Z0ˆ10    UUS10    UCA10U     
Sunnyvale1!0U
+Ficticious Widgets, Inc.1!0U Widget Development Group10U localhost0Ÿ0
+      *†H†÷
+0‰Ë¯ÓPîG%P
+8O=°Öílµ¶ô·Au;1'—µ#éϟ
+>øF˜Õr1¨ó
+Œöå
+yv
+>ö¿Þyl$ʆ’¢™•øYõüÛIóeÙZÆÃ·8ãäÒx¢©(e÷¤RGó ¸4øC©0kãŠw½üÄ/âsïŒ6;h˜Ö[Œu0
+      *†H†÷
+»ƒ%‘ó µÃ½äþ±«èÍo\Ćé«>—ܬ¿ÖZ8B9pÍVø‚{·×Ÿ,@R+27^°íP]ÔòZ€ÆýúŽ+NNÛØ–u̾·iI"슱Xæ~©Ÿ OwN˜¹.àM&Å.k}dJɉŦÙÏ
+«'ÓÉÎL
+
+^·¸±c>BÒ
++?’AVâõU&¿kvp`
=======================================
--- /trunk/servers/sip-servlets/sip-servlets-impl/src/main/java/org/mobicents/servlet/sip/message/SipServletRequestImpl.java Mon Dec 20 08:59:45 2010 +++ /trunk/servers/sip-servlets/sip-servlets-impl/src/main/java/org/mobicents/servlet/sip/message/SipServletRequestImpl.java Mon Dec 20 13:04:13 2010
@@ -1050,6 +1050,8 @@

final MobicentsSipApplicationSession sipApplicationSession = session.getSipApplicationSession();
                    final String requestMethod = getMethod();
+ ExtendedListeningPoint matchingListeningPoint = sipNetworkInterfaceManager.findMatchingListeningPoint(
+                                       transport, false);
                        if(Request.ACK.equals(requestMethod)) {
// Issue 1791 : using a different classloader created outside the application loader
                                // to avoid leaks on startup/shutdown
@@ -1085,8 +1087,7 @@
                                                        tad.cleanUp();
                                                }
                                        }
- final SipProvider sipProvider = sipNetworkInterfaceManager.findMatchingListeningPoint(
-                                                       transport, 
false).getSipProvider();
+ final SipProvider sipProvider = matchingListeningPoint.getSipProvider(); // Issue 1468 : to handle forking, we shouldn't cleanup the app data since it is needed for the forked responses if(((SipStackImpl)sipProvider.getSipStack()).getMaxForkTime() == 0 && transaction != null) {
                                                
transaction.setApplicationData(null);
@@ -1145,8 +1146,7 @@
                        }
                        if (super.getTransaction() == null) {

- final SipProvider sipProvider = sipNetworkInterfaceManager.findMatchingListeningPoint(
-                                               transport, 
false).getSipProvider();
+ final SipProvider sipProvider = matchingListeningPoint.getSipProvider();

ContactHeader contactHeader = (ContactHeader)request.getHeader(ContactHeader.NAME); if(contactHeader == null && !Request.REGISTER.equalsIgnoreCase(requestMethod) && JainSipUtils.CONTACT_HEADER_METHODS.contains(requestMethod) && proxy == null) {
@@ -1170,8 +1170,10 @@
                                                        
sipUri.setHost(sipConnector.getStaticServerAddress());
                                                        
sipUri.setPort(sipConnector.getStaticServerPort());
                                                } else {
-                                                       
sipUri.setHost(sipConnector.getIpAddress());
-                                                       
sipUri.setPort(sipConnector.getPort());
+                                                       boolean 
usePublicAddress = JainSipUtils.findUsePublicAddress(
+                                                                       
sipNetworkInterfaceManager, request, matchingListeningPoint);
+ sipUri.setHost(matchingListeningPoint.getIpAddress(usePublicAddress));
+                                                       
sipUri.setPort(matchingListeningPoint.getPort());

                                                }
                                                
sipUri.setTransportParam(transport);
@@ -1271,8 +1273,7 @@
                                
session.setSessionCreatingTransactionRequest(this);

                        } else if (Request.PRACK.equals(request.getMethod())) {
- final SipProvider sipProvider = sipNetworkInterfaceManager.findMatchingListeningPoint(
-                                               transport, 
false).getSipProvider();
+ final SipProvider sipProvider = matchingListeningPoint.getSipProvider(); final ClientTransaction ctx = sipProvider.getNewClientTransaction(request); ctx.setRetransmitTimer(sipFactoryImpl.getSipApplicationDispatcher().getBaseTimerInterval()); ((TransactionExt)ctx).setTimerT2(sipFactoryImpl.getSipApplicationDispatcher().getT2Interval());

Reply via email to