Log of /main/resip/dum/Dialog.cxx
Parent Directory
|
Revision Log
Revision
10975 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Sun Feb 16 20:04:10 2014 UTC
(5 years, 9 months ago)
by
sgodin
File length: 41376 byte(s)
Diff to
previous 10695
,
to
selected 5276
-removed use of raw transport pointers in Tuple and SipMessage (finally!!)
-required repro record route logic to be modified - no longer store transport specific
record routes in the Transport class - the Proxy class now tracks these
-removed SipMessage::getReceivedTransport and added isFromWire method that can be used in
it's place in various locations
Revision
10695 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Fri Nov 22 23:12:34 2013 UTC
(6 years ago)
by
sgodin
File length: 41376 byte(s)
Diff to
previous 10126
,
to
selected 5276
-Merged from b-uasprack-20130904
-added UAS Prack support to DUM! Original implementation taken from b-uasprack-20091103
-many changes, fixes and enhancements from original branch
-MasterProfile setting setUasReliableProvisionalMode is used to enable
-added mode called SupportedEssential where we will send reliable provisionals only if they
are a provisional that is carrying an offer or answer - required for 3GPP IMS flows
-added resubmit timer for reliable responses to ensure we send a reliable provisional at least
every 2.5 minutes -new profile setting: set1xxRelResubmitTime to support this
-updated state diagrams and added new PRACK flow diagrams to dum/doc directory (removed old diagrams)
-fixed update glare handling for UAC prack
-added in support for UAC Prack to be able to send an offer in the first PRACK response
(must call provideOffer from onAnswer callback)
-made a helper method on DialogUsageManager to set advertised capabilities
-fixed missing break in ClientInviteSession::dispatchReceivedUpdateEarly
Revision
9738 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Thu May 31 15:57:29 2012 UTC
(7 years, 6 months ago)
by
sgodin
File length: 42655 byte(s)
Diff to
previous 9033
,
to
selected 5276
-fixed a bug where the CSeq can be wrong in a client subscription re-subscribe / refresh in
the case where we receive the first NOTIFY before the 200/SUB response
Revision
9033 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Sun Feb 27 17:17:15 2011 UTC
(8 years, 9 months ago)
by
sgodin
File length: 42146 byte(s)
Diff to
previous 8989
,
to
selected 5276
-merge work from b-client-outbound-20110213 - client outbound support (RFC 5626)
- New UserProfile settings
- clientOutboundEnabled
- setRegId
- UserProfile now tracks flow used at registration time if server indicates outbound support, and
all usages that are assigned the same UserProfile will use this flow
- ;ob parameter is added to contact headers of non-REGISTER requests if clientOutboundEnabled
- ;reg-id parameter is added to contact headers of REGISTER requests if configured
- ;+sip.instance is added to all contact headers if configured
- ClientRegistration tagContact is now static and is used in RegistrationCreator for consistency
- Keep alive pong responses are now routed from Stack to DUM Keepalive Manager
- DUM Keep alive manager will terminate flows if a pong response is not received from
an outbound enabled connection after a default of 10 seconds
-removed a bunch of non-implemented methods from DialogUsageManager.hxx
-optimized some accesses to user profile from usages
-added new makeInviteSession calls that accept an InviteSessionHandle and add an appropriate replaces header
-treat internal 503 errors the same as 408 errors when dispatching onRequestRetry callback for
ClientRegistration, ClientSubscription and ClientPublication
- allows retry logic that is consistent when using both UDP or TCP/TLS transports
- note: TCP/TLS transports get a 503 error when they cannot connect, UDP transports typically
get a 408 error when the far end is not present
-ClientRegistration changes to ensure calling requestRefresh will not assert in any state
- allow calling requestRefresh while a retry timer is running to request an immediate retry
-created onFlowTerminated callbacks on:
- ClientRegistrationHandler - default implementation is to retry registration immediately
- InviteSessionHandler - current default implementation is to do nothing
- ServerSubscriptionHandler - default implementation is to end the Subscription
- ClientSubscriptionHandler - default implementation is to reSubscribe (new Dialog)
-fix for ContactInstanceRecord equality checks - registration server was not treating contacts with the same
instance id as equal if the contact URI was different
Revision
8928 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Tue Dec 28 18:19:01 2010 UTC
(8 years, 11 months ago)
by
sgodin
File length: 40448 byte(s)
Diff to
previous 8782
,
to
selected 5276
-extended dum profile to allow user agent capabilities to be provided by the application and used in
contact headers
-modified MOH server to use the following user agent capabilities in it's contact headers as
specified in RFC 5359 - ;automaton;+sip.byeless;+sip.rendering="no"
Revision
8782 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Sun Jul 4 18:06:19 2010 UTC
(9 years, 5 months ago)
by
sgodin
File length: 40230 byte(s)
Diff to
previous 8763
,
to
selected 5276
-for UAS Dialogs, do not store the full request URI as the mLocalContact
- mLocalContact is used for the contact header on outbound messages
in this dialog and if we store the full inbound request URI, then the
stack will not fill in the Contact header based on the interface the
message is using
- only the user portion of mLocalContact is now set, and the stack is
used to fill in the host portion based on the outbound transport. This
procedure now matches the mechanism used in outbound calls.
- there are cases where it doesn't make sense to use the full inbound requestURI
as the Contact
- call arrives to us over TCP (we only have TCP enabled). The Contact header
specifies transport=TCP on inbound invite as expected. Our contact header
does not due to the fact that the RequestURI on the initial invite does
not contain any transport parameter. The far end then reverts to using UDP
to contact us for the ACK - however we have no UDP transport.
- far end sends a call to use using an outbound proxy setting - request uri is
not appropriate for future in-dialog routing
-Note: this change further exposes an unaddressed bug in the DialogEventStateManager
where the mLocalContact member of the Dialog class (Dialog::getLocalContact) is used to
populate dialog event info bodies, and it will want the entire contact header
(with host/ip and port filled out).
Revision
8763 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Sat Mar 6 21:36:21 2010 UTC
(9 years, 9 months ago)
by
sgodin
File length: 39969 byte(s)
Diff to
previous 8576
,
to
selected 5276
-modified Dialog.cxx and setting of mLocalContact from profile getOverrideHostAndPort
so that parameters will be preserved; as it may be required to add the p_addTransport
to override host and port settings to direct the stack to stamp the contact header
with ;transport=XXX appropriately
-fixed the TCP connection garbage collector, so that it will not tear down all TCP
connections when the OS runs out of TCP connections
-modified the STUN server support in UDP transport to use XorMappedAddress instead
of MappedAddress if present in the STUN response
Revision
8576 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Fri Sep 4 15:15:58 2009 UTC
(10 years, 3 months ago)
by
sgodin
File length: 40098 byte(s)
Diff to
previous 8411
,
to
selected 5276
-fix to UAC handling to be able to handle sending ACK then BYE when a CANCEL
request crosses a 200/Inv. This fix handles the case when we don't have any
formed dialogs at the time of cancel
Revision
8411 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Tue Feb 10 13:21:21 2009 UTC
(10 years, 10 months ago)
by
jmatthewsr
File length: 40241 byte(s)
Diff to
previous 8353
,
to
selected 5276
Exception in DUM caused by a subscription based dialog that receives a 200Ok to NOTIFY with a cseq method = INVITE. (DUM) NOTIFY -> , (DUM) <- 200Ok cseq=INVITE.
Revision
8353 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Tue Dec 2 15:37:59 2008 UTC
(11 years ago)
by
sgodin
File length: 39848 byte(s)
Diff to
previous 8200
,
to
selected 5276
-fix for VS2005 compiler warnings - thanks to Dmitry S.
-Allow InterruptableStackThead to be subclassed for an application to get inserted into the process loop
-Added PrivacyCategory.cxx/.hxx to VS project files
-Fixed DUM compiler errors with new PrivacyCategory - thanks to Dario
Revision
8161 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Fri Jul 25 20:54:42 2008 UTC
(11 years, 4 months ago)
by
jmatthewsr
File length: 39449 byte(s)
Diff to
previous 8122
,
to
selected 5276
Stream performance enhancements for encoding objects. New encoding code should use 'EncodeStream','resipCerr' and 'resipCout' for encoding any resip objects. Merge from b-jmatthewsr-streamperf2 -r 8137:8160.
Revision
6993 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Thu Mar 8 19:24:54 2007 UTC
(12 years, 9 months ago)
by
sgodin
File length: 37585 byte(s)
Diff to
previous 6925
,
to
selected 5276
- fix to a fix that was supposed to ensure that mid-dialog 200 responses do not update the routeset
- fix to ensure CSeq sequence is incremented after receiving a 422 response
Revision
6872 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Mon Dec 11 17:09:07 2006 UTC
(13 years ago)
by
jmatthewsr
File length: 36905 byte(s)
Diff to
previous 6861
,
to
selected 5276
fix for crash an invalid dialog creation when receiving a response to a request other than the initial invite request. Example: incoming response to a re-invite contains a modified to: tag (illegal mid-dialog fork).
Revision
6495 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Mon Aug 14 15:51:13 2006 UTC
(13 years, 4 months ago)
by
mfroman
File length: 36556 byte(s)
Diff to
previous 6410
,
to
selected 5276
Fixing a bug where DUM was ignoring the subscription duration returned in the
2xx for a SUBSCRIBE. This only becomes a problem if a server implementation
(not DUM) is _not_ putting the expires on the Subscription-State in the NOTIFY.
3265 says this is a SHOULD, so there are (may be) some implementations out there
that are not doing this.
The problem this caused for clients built with DUM is this:
1. UAC sends a SUBSCRIBE with either a) a duration larger than max allowed (max
allowed must be less than 3600)
or
b) no duration (expecting to use default
value which is less than 3600)
2. The UAS responds with the expires in the 2xx, but not in the NOTIFY
3. UAC built with DUM ignores the expires in the 2xx and not finding one in the
NOTIFY uses a default 3600.
4. The subscription expires before before the UAC refreshes.
This is difficult to test with a "stock" version of DUM.
Revision
6198 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Mon May 8 20:00:25 2006 UTC
(13 years, 7 months ago)
by
sgodin
File length: 35632 byte(s)
Diff to
previous 6197
,
to
selected 5276
- Dialog.cxx - remove replaces header from newly created requests
- InviteSession.cxx - populate tags in replaces header correctly if session to be replaces is a UAS Session
Revision
6197 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Mon May 8 19:43:34 2006 UTC
(13 years, 7 months ago)
by
sgodin
File length: 35601 byte(s)
Diff to
previous 6160
,
to
selected 5276
- added ability to turn of addition of identity headers by repro.cxx
- fixed Identity-Info header if web port is not 5080
- Dialog.cxx - removed tabs
- TlsConnection - made destructor virtual
Revision
6160 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Tue Apr 18 20:17:30 2006 UTC
(13 years, 7 months ago)
by
moetje
File length: 35583 byte(s)
Diff to
previous 6159
,
to
selected 5276
- made setOverrideHostAndPort effective also for UAS situations as discussed on the list
- corrected my previous checkin to use spaces instead of tabs
Revision
6159 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Tue Apr 18 19:51:36 2006 UTC
(13 years, 7 months ago)
by
moetje
File length: 35242 byte(s)
Diff to
previous 6126
,
to
selected 5276
Added the ability to dum to specify a MessageDecorator object in a profile that is automatically added by dum to each outgoing messsage (addOutboundDecorator). This is required to be able to change the via headers because the message decorator is executed after transport selection.
Revision
6093 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Mon Mar 20 17:40:05 2006 UTC
(13 years, 8 months ago)
by
sgodin
File length: 35277 byte(s)
Diff to
previous 6075
,
to
selected 5276
- ***fixed many transport memory leaks - the biggest one is with receiving CRLF keep alives on UDP transports
- fixed a leak of ConnectionTerminate message in dum if no listeners are used
- fixed a startup leak of BasicNonceHelper
- added getTlsPeerName method to SipMessage
- removed transport pointer access from repro AclStore and DUM KeepAliveManager logic
- made testSecurity.cxx compile on windows
- added OpenSSL init to windows project files
- removed LEAK_CHECK define from default windows Debug builds
Revision
5929 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Thu Feb 16 22:36:43 2006 UTC
(13 years, 9 months ago)
by
dworley
File length: 34866 byte(s)
Diff to
previous 5830
,
to
selected 5276
Start cleaning up svn:eol-style and EOLs in files.
Note that text and program files that can be used on both Un*x and Windows
should have svn:eol-style=native so they check out correctly on both
platforms.
Revision
5767 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Thu Dec 22 23:55:37 2005 UTC
(13 years, 11 months ago)
by
daniel
File length: 34260 byte(s)
Diff to
previous 5757
,
to
selected 5276
1. handling of overlapping NOTIFY
2. added an additional boolean parameter to client subscription handler onUpdateFoo
3. dispatch 2xx to SUBSCRIBE to ClientSubscription.
Revision
5747 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Wed Dec 14 17:04:17 2005 UTC
(14 years ago)
by
sgodin
File length: 34764 byte(s)
Diff to
previous 5738
,
to
selected 5276
- separate mLastSessionRefresh into mLastLocalSessionRefresh and mLastRemoteSessionRefresh
- fixed bug where remote message headers could get used in outbound requests
- removed mInvite member - uses mLastLocalSessionRefresh instead
- cleaned up sendAck implementation
Revision
5586 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Fri Oct 28 21:01:13 2005 UTC
(14 years, 1 month ago)
by
sgodin
File length: 34062 byte(s)
Diff to
previous 5459
,
to
selected 5276
- modified ACK handling
- mAckId is no longer tracked by Dialog.cxx - all logic is in InviteSession.cxx
- Authorization and Proxy-Authorization headers are copied to acks from the InviteSession.cxx
- 2xx retransmission is now detected and handled properly - no more incorrect handler callbacks
- DialogSet destruction bug fixed
- onStaleCallTimeout callback no has a default handler to send a BYE - app can override and send a CANCEL if desired
-
Revision
3425 -
(
view)
(
download)
(
annotate)
-
[select for diffs]
Modified
Mon Nov 1 22:21:04 2004 UTC
(15 years, 1 month ago)
by
jason
Original Path:
main/sip/resiprocate/dum/Dialog.cxx
File length: 30842 byte(s)
Diff to
previous 3401
,
to
selected 5276
added some new interfaces for shutting down (partially implemented)
added pure virtual void BaseUsage::end()
derived end() methods no longer return SipMessage&
SipStack is owned by DialogUsageManager
DialogUsageManager::process() interface change for separate StackThread
This form allows you to request diffs between any two revisions of this file.
For each of the two "sides" of the diff,
enter a numeric revision.