Difference between revisions of "Current events"

From reSIProcate
Jump to navigation Jump to search
(Release Notes for 0.9.0)
Line 1: Line 1:
== Resiprocate 0.9.0 Release Notes ==
2005-06-07  RjS <at> estacado.net (editor)
2006-07-11 alan <at> jasomi.com (wiki editor)
;Summary of changes between the 0.4.0 release and the 0.9.0 release
= Changes/ Deprecated Things =
* Renamed h_CallId to h_CallID
* TuIM and Dialog (renamed to DeprecatedDialog) are deprecated
* Removed all references to Preparser
* Removed many unused files
* Reorganized ParserCategories into seperate files for each ParserCategory
* Renamed Log::CERR to Log::Cerr (similar for DEBUG->Debug, etc)
* Removed Executive
* Changed the branch parameter encoding (fixed many bugs)
* Used HashMap instead of map in many places
* Used vector instead of list in many places
* Used vector instead of map in many places
* Fifo changed to use deque instead of list
* Complete reimplementation (and refactoring) of Security
* Changed use of windows Mutex to CriticalSection for efficiency
* Added IpVersion enum to transports replacing a bool for v4/v6
* Increased bits in transaction-id from 31 to 64
=    New Things =
* Created a StackThread to run SipStack in its own thread
* Added DUM
* Added DTLS Transport
* Added support for draft-sip-identity
* Added auth-int support
* Added Transport abstraction to allow plugging in external transports which may share the process/select/buildfdset of the SipStack or directly insert into the TuFifo
* Added abstract connection class to facilitate working with external streaming transports
* Added a StackLog logging level
* Added Windows memory leak detection mechanism
* Implemented a TuSelector to allow more than one TU to reside above a single instance of a SipStack
* Added ExternalLogger to permit custom logging
* Added Statistics Collection for SIP Messaging (StatisticsManager)
* Added a pluggable DNS interface
* Generalized Data's sharing to {Share, Borrow, Take} (read/write overlay)
* Added URL encoding/decoding to Data
* Added helper methods to perform DIGEST with A1 instead of password
* Added helper methods to build responses on a provided SipMessage object instead of having the helper build a new one on the heap
* Improved backpressure support at the transaction layer (503 if too busy)
* Added TimeLimitFifo to aid with backpressure
* Added a pluggable keep-alive manager (focusing on NAT issues)
* Allowed for non-busy, non-blocking wait handshakes with TLS
* Included hostname in Call-ID
* Added CNAME support to DNS resolution
* Added v6 support to DNS resolution (both using DNS over v6 and supporting AAAA records
* Added v6 ntop and pton support
* Created an application accessible timer queue
* Added SipStack::postMS interface to allow application messages to be posted with subsecond timing requirements
* Added vs.net project files for 7.0, 7.1, 8.0
* Tweaked things to allow compilation with gcc 3.4 and 4.0
* Added support for google-perftools and google-malloc
* Added a merge interface to Pidf
* Added support for message/external-body
* Added several test programs (particularly around security objects)
* Added Headers:
{| border="0" cellpadding="5" cellspacing="0" align="center"
|  Accept-Contact
|  ContentId
|  Identity
|  Identity-Info
|  Join
|  Min-SE
|  P-Asserted-Identity
|  P-Associated-URI
|  P-Called-Party-ID
|  P-Media-Authorization
|  P-Preferred-Identity
|  Path
|  Privacy
|  RAck
|  Reason
|  Refer-To
|  Referred-By
|  Reject-Contact
|  Request-Disposition
|  RSeq
|  Service-Route
|  Session-Expires
|  SIP-ETag
|  SIP-IfMatch
|  Target-Dialog
|  r - Compact form of Refer-To
|  b - Compact form of Referred-By
* Added parameters:
{| border="0" cellpadding="5" cellspacing="0"  align="center"
|  +sip.instance
|  actor
|  app-id
|  application
|  control
|  description
|  document
|  early-only
|  effective-by
|  events
|  extensions
|  gruu
|  isfocus
|  language
|  methods
|  model
|  network-user
|  priority
|  profile-type
|  refresher
|  schemes
|  text
|  type
|  url
|  vendor
|  version
|  video
=Fixed Things=
* Fixed several memory leaks (TransactionState, SdpContents, others)
* Fixed retransmit timers
* Fixed several flaws in XMLCursor (simple xml parser)
* Fixed mismatched cancel problem with 481 in TransactionState
* Improved graceful shutdown logic in transaction layer
* Generalized TimerQueue code
* Fixed IPv6 handling errors througout code - tested IPv6 at SIPIts (both windows and *nix)
* Fixed problem with TimerF producing a 408 to the TU when not in Calling state
* Fixed problem with TransportSelector messing with route headers
* Fixed bug in TransactionState where transmissions were being delivered to TU
* Fixed assertion bug when trying to retransmit something that hasn't been transmitted yet
* Fixed incompatibilities with earlier versions of windows in TransportSelector::determineSourceInterface
* Fixed windows use of udp sendto
* Corrected use of sip:/sips: and their effect on DNS lookups (3263)
* Corrected use of resolver to do appropriate things for the currently available transports (per interface)
* Fixed a SipFrag encoding problem
* Added a Warning header to 503 responses
* Improved robustness of QuotedDataParameter (will accept unquoted arguments and automatically add the needed quotes)
* Fixed many S/MIME issues (and tested the results at SIPIts)
* Throws when no Via appears in a message (instead of asserting)
* Improved robustness of SDP parser (survives lack of final \r\n,survives lack of m lines, better e and p line parsing)
* Reworked ThreadIf
* Fixed a nasty bug in Condition::wait that was passing an incorrectly rounded value of tv_nsec into pthread_cond_timedwait and causing an assertion in some versions of linux
* Removed unnecessary recomputations of 2543 transaction ids
* Fixed socket leak in ares (close vs socketclose on windows)
* Several fixes (particularly around USE_IPV6) to keep objects from changing size depending on stack configuration
* Many fixes to TLS (tested at SIPITs) - In particular, fixed checks of subjectaltname/cname during TLS setup

Revision as of 08:08, 11 July 2005