1. 20 Sep, 2007 1 commit
    • Pekka Pessi's avatar
      nua: updated documentation · 9c285045
      Pekka Pessi authored
      Updated tag documentation.
      Moved doxygen doc entries from sofia-sip/nua_tag.h to nua_tag.c.
      Removed internal datatypes and files from the generated documents.
  2. 06 Sep, 2007 1 commit
  3. 23 Jul, 2007 3 commits
    • Pekka Pessi's avatar
      UNDO: nua: refactored dialog refresh code · 67d47760
      Pekka Pessi authored
    • Pekka Pessi's avatar
      nua: refactored dialog refresh code · f6d468cf
      Pekka Pessi authored
    • Pekka Pessi's avatar
      nua_session.c: delay transition to ready when O/A is incomplete · 1e2c8faf
      Pekka Pessi authored
      Delay sending ACK and subsequent transition of call to the ready state when
      the 200 OK response to the INVITE is received if the SDP Offer/Answer
      exchange using UPDATE/PRACK was still incomplete.
      Previously, if the O/A using UPDATE or PRACK was incomplete and an 200 OK
      was received, the call setup logic regarded this as a fatal error and
      terminated the call.
      Thanks for Mike Jerris for detecting and reporting this bug.
  4. 27 Jun, 2007 1 commit
  5. 15 Jun, 2007 1 commit
  6. 02 May, 2007 1 commit
    • Pekka Pessi's avatar
      nta/nua: Fixed #1472682 sf.net bug: ACK does not find INVITE · 1daca570
      Pekka Pessi authored
      The transaction matching logic failed on server side when the To URI was
      changed between INVITE and ACK. Now it is possible to change the To/From URI
      in nua_ack(), too.
      Binary API was changed, too, and accessor function nta_outgoing_branch() was
  7. 23 Apr, 2007 1 commit
  8. 12 Apr, 2007 1 commit
    • Pekka Pessi's avatar
      nua_session.c: when sending/receiving an UPDATE while session is ready use... · f5a960b6
      Pekka Pessi authored
      nua_session.c: when sending/receiving an UPDATE while session is ready use callstate calling/received
      When UPDATE is sent during an established session, indicate progress with
      callstate nua_callstate_calling in nua_i_state event. Likewise, when UPDATE
      is received, but responding to it is left up to application, indicate
      progress with callstate nua_callstate_received (instead of
  9. 11 Apr, 2007 1 commit
    • Pekka Pessi's avatar
      nua session timer: refactored implementation, using timer values recommended by RFC 4028. · e08de77a
      Pekka Pessi authored
      The problem and crash with session timers was reported by Fabio Margarido.
      Now following RFC 4028 more closely. There are test cases for UAS and UAC
      refreshing the session with INVITE and UPDATE, and a test case where UPDATE
      is filtered away until non-refreshing party sends BYE.
      The re-INVITE/UPDATE refresh is sent around middle of expiration time (e.g.,
      if expiration time is 3600 seconds, it is sent 1795..1805 seconds after the
      previous refresh).
      The non-refreshing party now sends a BYE request before two thirds of
      session expiration time has elapsed without session refresh request.
  10. 28 Mar, 2007 1 commit
  11. 26 Mar, 2007 2 commits
  12. 26 Feb, 2007 3 commits
  13. 14 Feb, 2007 1 commit
    • Pekka Pessi's avatar
      nua: fixed problems in state machines. · 78a20726
      Pekka Pessi authored
      These problems are mostly introduced in 1.12.5:
      - assert failed if INVITE was received when calling
        (reported by Michael Jerris)
      - assert failed if nua_invite() was called second time before receiving
        final response to first INVITE (ditto)
      - ACK is now always sent if session was terminated after receiving 2XX
      - if nua has a pending incoming INVITE request, return 491 to
  14. 12 Feb, 2007 3 commits
  15. 07 Feb, 2007 2 commits
  16. 01 Feb, 2007 1 commit
    • Pekka Pessi's avatar
      nua_session.c: fixed terminating call state machine. · d342fb90
      Pekka Pessi authored
      Fabio Margarido reported that the BYE is not sent upon certain error
      conditions. This was because state machine does not allow sending duplicate
      BYE in terminating state. Usually, the call state machine switches to
      terminating state upon sending BYE.  However, certain error conditions (like
      not receiving ACK) causes the session to terminate, and the session state is
      change to terminating state outside BYE.
      The fix here changes the behaviour of internally generated BYE requests,
      they do not change the session state to terminating nor they check if the
      session state is already terminating.
  17. 24 Jan, 2007 3 commits
  18. 08 Jan, 2007 3 commits
  19. 02 Jan, 2007 1 commit
    • Pekka Pessi's avatar
      nua: refactored the client side. · 69b0249d
      Pekka Pessi authored
      Now each handle has a queue of client-side requests; if a request is
      pending, a new request from API is added to the queue. After the request is
      complete, it is removed from the queue and destroyed by the default. The
      exception is the client requests bound to a dialog usage: they are saved and
      re-used when the dialog usage is refreshed (and sometimes when they are
      The client request is subclassed and its behaviour modified using virtual
      function table in nua_client_methods_t.
  20. 14 Dec, 2006 1 commit
  21. 12 Dec, 2006 1 commit
    • Pekka Pessi's avatar
      nua_session.c: use nua_client_request_t struct with BYE only if it is vacant · 2ce3032a
      Pekka Pessi authored
      Thanks for Anthony Minnessale for reporting this bug.
      Note that correct fix would involve delaying BYE until final response to the
      NOTIFY has been received. Now, we have a race condition between NOTIFY and
      BYE: if NOTIFY is lost and UAS receives BYE before NOTIFY, it will ignore
      the retransmitted NOTIFY and respond with status code 500 to it.
  22. 08 Dec, 2006 1 commit
  23. 30 Nov, 2006 1 commit
  24. 21 Nov, 2006 1 commit
  25. 20 Nov, 2006 2 commits
  26. 16 Nov, 2006 1 commit
  27. 15 Nov, 2006 1 commit