Sync to current darcs tree:

Mon Sep 17 14:50:04 EDT 2007  Pekka.Pessi@nokia.com
  * sofia-sip/sip_util.h: updated documentation

Mon Sep 17 14:50:18 EDT 2007  Pekka.Pessi@nokia.com
  * sofia-sip/tport_tag.h: updated documentation

Mon Sep 17 14:50:28 EDT 2007  Pekka.Pessi@nokia.com
  * soa_tag.c: updated documentation

Wed Sep 19 12:50:01 EDT 2007  Pekka.Pessi@nokia.com
  * msg: updated documentation

Wed Sep 19 13:29:50 EDT 2007  Pekka.Pessi@nokia.com
  * url: updated documentation

Wed Sep 19 13:32:14 EDT 2007  Pekka.Pessi@nokia.com
  * nth: updated documentation

Wed Sep 19 13:32:27 EDT 2007  Pekka.Pessi@nokia.com
  * nea: updated documentation

Wed Sep 19 13:33:36 EDT 2007  Pekka.Pessi@nokia.com
  * http: updated documentation

Wed Sep 19 13:36:58 EDT 2007  Pekka.Pessi@nokia.com
  * bnf: updated documentation

Wed Sep 19 13:38:58 EDT 2007  Pekka.Pessi@nokia.com
  * nua: updated nua_stack_init_handle() prototype

Wed Sep 19 18:45:56 EDT 2007  Pekka.Pessi@nokia.com
  * sip: added sip_name_addr_xtra(), sip_name_addr_dup()

Wed Sep 19 19:00:19 EDT 2007  Pekka.Pessi@nokia.com
  * sip_basic.c: cleaned old crud

Thu Sep 20 13:34:04 EDT 2007  Pekka.Pessi@nokia.com
  * iptsec: updated documentation

Thu Sep 20 13:36:22 EDT 2007  Pekka.Pessi@nokia.com
  * tport: updated documentation

Thu Sep 20 13:36:56 EDT 2007  Pekka.Pessi@nokia.com
  * su: updated documentation
  Removed internal files from doxygen-generated documentation.

Thu Sep 20 13:38:29 EDT 2007  Pekka.Pessi@nokia.com
  * soa: fixed documentation

Thu Sep 20 13:39:56 EDT 2007  Pekka.Pessi@nokia.com
  * sdp: updated documentation

Thu Sep 20 13:40:16 EDT 2007  Pekka.Pessi@nokia.com
  * ipt: updated documentation

Thu Sep 20 14:24:20 EDT 2007  Pekka.Pessi@nokia.com
  * nta: updated documentation

Thu Sep 20 14:41:04 EDT 2007  Pekka.Pessi@nokia.com
  * nua: updated documentation

  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.

Wed Sep 19 13:34:20 EDT 2007  Pekka.Pessi@nokia.com
  * docs: updated the generation of documentation. Updated links to header files.

Thu Sep 20 08:45:32 EDT 2007  Pekka.Pessi@nokia.com
  * sip/Makefile.am: added tags to <sofia-sip/sip_extra.h>

  Added check for extra tags in torture_sip.c.

Thu Sep 20 14:45:22 EDT 2007  Pekka.Pessi@nokia.com
  * stun: updated documentation

Wed Jul  4 18:55:20 EDT 2007  Pekka.Pessi@nokia.com
  * torture_heap.c: added tests for ##sort() and su_smoothsort()

Wed Jul  4 18:56:59 EDT 2007  Pekka.Pessi@nokia.com
  * Makefile.am: added smoothsort.c

Fri Jul 13 12:38:44 EDT 2007  Pekka.Pessi@nokia.com
  * sofia-sip/heap.h: heap_remove() now set()s index to 0 on removed item

Mon Jul 23 11:14:22 EDT 2007  Pekka.Pessi@nokia.com
  * sofia-sip/heap.h: fixed bug in heap##remove()

  If left kid was in heap but right was not, left kid was ignored.

Wed Jul  4 18:51:08 EDT 2007  Pekka.Pessi@nokia.com
  * smoothsort.c: added

Wed Jul  4 18:51:34 EDT 2007  Pekka.Pessi@nokia.com
  * heap.h: using su_smoothsort()

Fri Jul  6 10:20:27 EDT 2007  Pekka.Pessi@nokia.com
  * smoothsort.c: added

Wed Sep 19 17:40:30 EDT 2007  Pekka.Pessi@nokia.com
  * msg_parser.awk: generate two parser tables, default and extended

Wed Sep 19 18:39:45 EDT 2007  Pekka.Pessi@nokia.com
  * msg_parser.awk: just generate list of extra headers

  Allocate extended parser dynamically.

Wed Sep 19 18:59:59 EDT 2007  Pekka.Pessi@nokia.com
  * sip: added Remote-Party-ID, P-Asserted-Identity, P-Preferred-Identity

  Added functions sip_update_default_mclass() and sip_extend_mclass()
  for handling the extended parser. Note that Reply-To and Alert-Info are only
  available with the extended parser.

Wed Sep 19 19:05:44 EDT 2007  Pekka.Pessi@nokia.com
  * RELEASE: updated

Thu Sep 20 13:38:59 EDT 2007  Pekka.Pessi@nokia.com
  * sip: updated documentation

Thu Sep 20 14:17:28 EDT 2007  Pekka.Pessi@nokia.com
  * docs/conformance.docs: updated

Mon Oct  1 10:11:14 EDT 2007  Pekka.Pessi@nokia.com
  * tport_tag.c: re-enabled tptag_trusted

Thu Oct  4 09:21:07 EDT 2007  Pekka.Pessi@nokia.com
  * su_osx_runloop.c: moved virtual function table after struct definition

  Preparing for su_port_vtable_t refactoring.

Thu Oct  4 10:22:03 EDT 2007  Pekka.Pessi@nokia.com
  * su_source.c: refactored initialization/deinitialization

Fri Oct  5 04:58:18 EDT 2007  Pekka Pessi <Pekka.Pessi@nokia.com>
  * sip_extra.c: fixed prototypes with isize_t

Fri Oct  5 04:58:45 EDT 2007  Pekka Pessi <Pekka.Pessi@nokia.com>
  * test_nta_api.c: removed warnings about signedness

Fri Oct  5 04:59:02 EDT 2007  Pekka Pessi <Pekka.Pessi@nokia.com>
  * test_nua_params.c: removed warnings about constness

Fri Oct  5 07:20:26 EDT 2007  Pekka Pessi <first.lastname@nokia.com>
  * su_port.h, su_root.c: cleaned argument checking

  The su_root_*() and su_port_*() functions now check their arguments once
  and do not assert() with NULL arguments. The sur_task->sut_port should
  always be valid while su_root_t is alive.

Fri Oct  5 07:22:09 EDT 2007  Pekka Pessi <first.lastname@nokia.com>
  * su: added su_root_obtain(), su_root_release() and su_root_has_thread()

  When root is created with su_root_create() or cloned with su_clone_start(),
  the resulting root is obtained by the calling or created thread,
  respectively.

  The root can be released with su_root_release() and another thread can
  obtain it.

  The function su_root_has_thread() can be used to check if a thread has
  obtained or released the root.

  Implementation upgraded the su_port_own_thread() method as su_port_thread().

Fri Oct  5 07:28:10 EDT 2007  Pekka Pessi <first.lastname@nokia.com>
  * su_port.h: removed su_port_threadsafe() and su_port_yield() methods

  su_port_wait_events() replaces su_port_yield().

Fri Oct  5 13:26:04 EDT 2007  Pekka Pessi <Pekka.Pessi@nokia.com>
  * msg_parser.awk: not extending header structure unless needed.

  Removed gawk-ish /* comments */.

Fri Oct  5 14:32:25 EDT 2007  Pekka Pessi <Pekka.Pessi@nokia.com>
  * run_test_su: removed GNUisms

Fri Oct  5 14:32:47 EDT 2007  Pekka Pessi <Pekka.Pessi@nokia.com>
  * Makefile.am: removed implicit check target test_urlmap

Fri Oct  5 14:22:32 EDT 2007  Pekka Pessi <first.lastname@nokia.com>
  * torture_sresolv.c: use CLOCK_REALTIME if no CLOCK_PROCESS_CPUTIME_ID available

  Casting timespec tv_sec to unsigned long.

Fri Oct * nua_s added handling nua_prack()

  Thanks to Fabio Margarido for the patch.

Mon Oct  8 10:24:35 EDT 2007  Pekka.Pessi@nokia.com
  * test_nua: added test for sf.net bug #1803686

Mon Oct  8 08:15:23 EDT 2007  Pekka.Pessi@nokia.com
  * RELEASE: updated.

Mon Oct  8 09:30:36 EDT 2007  Pekka.Pessi@nokia.com
  * nua_stack: added handling nua_prack()

  Thanks to Fabio Margarido for the patch.

Mon Oct  8 10:24:35 EDT 2007  Pekka.Pessi@nokia.com
  * test_nua: added test for sf.net bug #1803686

Mon Oct  8 10:26:31 EDT 2007  Pekka.Pessi@nokia.com
  * nua: added test for nua_prack() (sf.net bug #1804248)

  Avoid sending nua_i_state after nua_prack() if no SDP O/A is happening, too.

Mon Oct  8 10:32:04 EDT 2007  Mikhail Zabaluev <mikhail.zabaluev@nokia.com>
  * su_source.c: don t leak the wait arrays

Mon Oct  8 10:37:11 EDT 2007  Pekka.Pessi@nokia.com
  * RELEASE: updated

Wed Oct 10 11:55:21 EDT 2007  Pekka.Pessi@nokia.com
  * sip_parser.c: silenced warning about extra const in sip_extend_mclass()

Wed Oct 10 11:57:08 EDT 2007  Pekka.Pessi@nokia.com
  * nta_tag.c: updated tag documentation

Wed Oct 10 13:16:40 EDT 2007  Pekka.Pessi@nokia.com
  * nua: fix logging crash if outbound used with application contact

  Silenced warnings.

Wed Oct 10 13:30:45 EDT 2007  Pekka.Pessi@nokia.com
  * msg_parser.awk: removed extra "const"

Wed Oct 10 13:31:45 EDT 2007  Pekka.Pessi@nokia.com
  * Makefile.am's: fixed distclean of documentation



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@5840 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
Michael Jerris
2007-10-11 14:16:59 +00:00
parent 24ff890bbb
commit 5e81b98eba
153 changed files with 7633 additions and 4401 deletions
@@ -28,7 +28,7 @@ ALIASES = \
"TAG=\par \n" \
"EVENTS=\par Events:\n" \
"RESPONSES=\par Related Response Codes:\n" \
"CFILE=\file" \
"CFILE=\internal \file" \
"IFILE=\file" \
"HI=\hideinitializer " \
"HIDE=\hideinitializer " \
@@ -23,6 +23,7 @@ COLLABORATION_GRAPH = YES
GROUP_GRAPHS = NO
EXTRACT_ALL = NO
EXTRACT_PRIVATE = NO
VERBATIM_HEADERS = YES
HIDE_UNDOC_RELATIONS = YES
HIDE_UNDOC_MEMBERS = YES
HIDE_UNDOC_CLASSES = YES
@@ -7,6 +7,7 @@ INPUT = @srcdir@/mainpage.docs @srcdir@/docguide.docs @srcdir@/conformanc
@INCLUDE_PATH = . @srcdir@
@INCLUDE = ../docs/Doxyfile.conf
@INCLUDE = ../sip/sip.doxyaliases
GENERATE_TAGFILE = docs.doxytags
@@ -28,4 +29,6 @@ TAGFILES += nea.doxytags=nea
TAGFILES += nua.doxytags=nua
TAGFILES += features.doxytags=features
EXAMPLE_PATH = @srcdir@/../sip
@@ -40,7 +40,10 @@ Doxyfile.rfc:
from=700 to=4800 \
/dev/null > $@
CLEANFILES = Doxyfile.rfc
CLEANFILES = Doxyfile.rfc *.doxytags
distclean-local:
-rm -rf html
# ----------------------------------------------------------------------
# Sofia specific rules
@@ -20,32 +20,37 @@ below.
<a href="#3313">RFC 3313</a> <br>
<a href="#3323">RFC 3323</a> <br>
<a href="#3326">RFC 3326</a> <br>
</td><td>
<a href="#3325">RFC 3325</a> <br>
<a href="#3327">RFC 3327</a> <br>
</td><td>
<a href="#3329">RFC 3329</a> <br>
<a href="#3361">RFC 3361</a> <br>
<a href="#3420">RFC 3420</a> <br>
<a href="#3428">RFC 3428</a> <br>
<a href="#3486">RFC 3486</a> <br>
<a href="#3515">RFC 3515</a> <br>
<a href="#3581">RFC 3581</a> <br>
<a href="#3608">RFC 3608</a> <br>
<a href="#3680">RFC 3680</a> <br>
<a href="#3824">RFC 3824</a> <br>
</td><td>
<a href="#3840">RFC 3840</a> <br>
<a href="#3841">RFC 3841</a> <br>
<a href="#3842">RFC 3842</a> <br>
</td><td>
<a href="#3856">RFC 3856</a> <br>
<a href="#3857">RFC 3857</a> <br>
<a href="#3858">RFC 3858</a> <br>
<a href="#3859">RFC 3859</a> <br>
<a href="#3860">RFC 3860</a> <br>
<a href="#3891">RFC 3891</a> <br>
<a href="#3892">RFC 3892</a> <br>
<a href="#3903">RFC 3903</a> <br>
<a href="#4028">RFC 4028</a> <br>
<a href="#4168">RFC 4168</a> <br>
<a href="#4320">RFC 4320</a> <br>
<a href="#4566">RFC 4566</a> <br>
<a href="#4488">RFC 4488</a> <br>
</td><td>
<a href="#4566">RFC 4566</a> <br>
<a href="#2327">RFC 2327</a> <br>
<a href="#3264">RFC 3264</a> <br>
<a href="#3266">RFC 3266</a> <br>
@@ -53,6 +58,7 @@ below.
<a href="#3388">RFC 3388</a> <br>
<a href="#3407">RFC 3407</a> <br>
<a href="#3524">RFC 3524</a> <br>
<a href="#3551">RFC 3551</a> <br>
<a href="#3556">RFC 3556</a> <br>
<a href="#3605">RFC 3605</a> <br>
<a href="#3890">RFC 3890</a> <br>
@@ -98,7 +104,7 @@ below.
</td>
<td>
The supported @RFC3261 methods are: @b REGISTER, @b OPTIONS, @b
INVITE, @b ACK, @b CANCEL, @b BYE, as well as methods
INVITE, @b ACK, @b CANCEL, @b BYE, as well as extension methods
<a href="#2976"><b>INFO</b></a>,
<a href="#3262"><b>PRACK</b></a>,
<a href="#3265"><b>SUBSCRIBE</b></a>,
@@ -116,7 +122,7 @@ below.
@ref sip_accept "Accept",
@ref sip_accept_encoding "Accept-Encoding",
@ref sip_accept_language "Accept-Language",
@ref sip_alert_info "Alert-Info" (@VERSION_1_12_7),
@ref sip_alert_info "Alert-Info" (extension in @VERSION_1_12_7),
@ref sip_allow "Allow",
@ref sip_authentication_info "Authentication-Info",
@ref sip_authorization "Authorization",
@@ -138,12 +144,18 @@ below.
@ref sip_min_expires "Min-Expires",
@ref sip_mime_version "MIME-Version",
@ref sip_organization "Organization",
@ref sip_p_asserted_identity "P-Asserted-Identity"
(extension in @VERSION_1_12_7),
@ref sip_p_preferred_identity "P-Preferred-Identity"
(extension in @VERSION_1_12_7),
@ref sip_priority "Priority",
@ref sip_proxy_authenticate "Proxy-Authenticate",
@ref sip_proxy_authorization "Proxy-Authorization",
@ref sip_proxy_require "Proxy-Require",
@ref sip_record_route "Record-Route",
@ref sip_reply_to "Reply-To" (@VERSION_1_12_7),
@ref sip_refer_sub "Refer-Sub" (@VERSION_1_12_5),
@ref sip_remote_party_id "Remote-Party-ID" (extension in @VERSION_1_12_7),
@ref sip_reply_to "Reply-To" (extension in @VERSION_1_12_7),
@ref sip_require "Require",
@ref sip_retry_after "Retry-After",
@ref sip_route "Route",
@@ -167,7 +179,7 @@ below.
<td>
- Automatic escaping of reserved characters has not been
implemented.
- Using NUL (zero byte) in doublequoted strings has not been implemented
- Using NUL (zero byte) in double-quoted strings has not been implemented
</td>
</tr>
@@ -196,7 +208,7 @@ below.
Only one SIP message is accepted per UDP message, as per @RFC3261.
</td>
<td>
There is experimental support for SCTP, too.
There is <a href="#4168">experimental support for SCTP</a>, too.
</td>
</tr>
@@ -212,8 +224,12 @@ below.
User-Agent and Proxy modes.
Default values for SIP timers are those specified by @RFC3261. The
defaults for T1, T1x64, T2 and T4 can be changed via
values for T1, T1x64, T2 and T4 can be changed via
configuration tags defined in <sofia-sip/nta_tag.h>.
The SIP timer C is implemented from @VERSION_1_12_7. Also, its value
can be changed via configuration tag NTATAG_TIMER_C() defined in
<sofia-sip/nta_tag.h>.
</td>
<td>
&nbsp;
@@ -462,10 +478,13 @@ below.
@RFC3325: Asserted Identity
</th>
<td>
Sofia-SIP provides <a href="#3261.19">generic support</a> for
extension headers and parameters. P-Asserted-Identity and
P-Preferred-Identity are supported as supported as @ref
sip_unknown "extension headers".
Sofia-SIP supports
@ref sip_p_asserted_identity "P-Asserted-Identity" and
@ref sip_p_preferred_identity "P-Preferred-Identity" headers
(generating, parsing and syntax checking). Also the non-standard
header @ref sip_remote_party_id "Remote-Party-ID" is supported.
@NEW_1_12_7.
</td>
<td>
Not implemented:
@@ -733,10 +752,11 @@ below.
</td>
</tr>
<a name="3856"></a>
<a name="3856"></a><a name="3859"></a>
<tr valign=top>
<th align="left">
@RFC3856: Presence
@RFC3856: Presence <br />
@RFC3859: Common Profile for Presence
</th>
<td>
Sofia-SIP supports <a href="#3265">generic SIP event support</a> for
@@ -778,7 +798,22 @@ below.
- Including correct @ref sip_event "Event" and
@ref sip_accept "Accept" headers in the request (if needed)
- Processing notifications for winfo events:
- Processing watcherxinfo XML documents
- Processing watcherinfo XML documents
</td>
</tr>
<a name="3860"></a>
<tr valign=top>
<th align="left">
@RFC3860: Common Profile for IM
</th>
<td>
Sofia-SIP supports handling of any URI type. Sofia-SIP parses "im:"
URIs.
</td>
<td>
Application must take care of:
- resolving the "im:" URI
</td>
</tr>
@@ -834,7 +869,7 @@ below.
<td>
Application must take care of:
- Including correct @ref sip_event "Event" in the request
- Permanently storing SIP-ETag
- Permanently storing @SIPETag
</td>
</tr>
@@ -864,6 +899,26 @@ below.
</td>
</tr>
<a name="4168"></a>
<tr valign=top>
<th align="left">
@RFC4168: SCTP as Transport for SIP
</th>
<td>
The transport=sctp URI parameter is supported. The SCTP transport
protocol is supported as experimental. It is enabled with
configure script argument --enable-sctp.
The framing of SIP messages over SCTP is not specified clearly in
@RFC4168. It is possible to send SIP messages smaller than 64K over
SCTP.
</td>
<td>
&nbsp;
</td>
</tr>
<a name="4320"></a>
<tr valign=top>
<th align="left">
@@ -886,6 +941,28 @@ below.
</td>
</tr>
<a name="4488"></a>
<tr valign=top>
<th align="left">
@RFC4488: Suppression of REFER Implicit Subscription
</th>
<td>
Sofia-SIP supports @ref sip_refer_sub "Refer-Sub" header
(generating, parsing and syntax checking).
The implicit subscription is suppressed by @nua, if the @ReferSub:
true header is included in the REFER
request (@ref nua_refer "on server side") or
response (@ref nua_i_refer "on client side").
@NEW_1_12_5
</td>
<td>
The REFER client application must include SIPTAG_REFER_SUB_STR("true")
in the nua_refer() tags.
</td>
</tr>
</table>
<table border=1 cellpadding=4 cellspacing=0>
@@ -922,7 +999,7 @@ below.
"a=inactive", @ref sdp_rtpmap_s "a=rtpmap", and "a=fmtp" are parsed.
The implementation partially implements @RFC4566. Note that
definiton of 'token' was updated in @RFC4566 and the parser has not
definition of 'token' was updated in @RFC4566 and the parser has not
been updated yet.
</td>
<td>
@@ -1023,6 +1100,23 @@ below.
</td>
</tr>
<a name="3551"></a>
<tr valign=top>
<th align="left">
@RFC3551: RTP/AVP
</th>
<td>
Sofia-SIP recognizes the RTP payload types for well-known audio and
video codecs defined in @RFC3551.
</td>
<td>
Application must take care of:
- Audio or video processing
- Generating a=rtpmap or a=fmtp lines when needed
</td>
</tr>
<a name="3556"></a>
<tr valign=top>
<th align="left">
@@ -260,7 +260,7 @@ C 99 standard defines the following fixed length data types:
- int8_t
- uint8_t
To use these data types you must include the <su_types.h> header, which
To use these data types you must include the <sofia-sip/su_types.h> header, which
takes care of including correct file. If @b su includes are not available,
you must include the following code segment to each file where you plan to
use them:
@@ -298,7 +298,7 @@ network byte order to host byte order.
The ntohs() function converts the unsigned short integer netshort
from network byte order to host byte order.
You need to include <netinet/in.h> or <su.h> to use these functions.
You need to include <netinet/in.h> or <sofia-sip/su.h> to use these functions.
@subsection port_struct Packing structures
@@ -467,7 +467,7 @@ reference. This simplifies application logic because application code does
not need to keep track of the allocated memory and free every allocated block
separately.
See documentation of <su_alloc.h> and @ref su_alloc "memory managment tutorial"
See documentation of <sofia-sip/su_alloc.h> and @ref su_alloc "memory managment tutorial"
for more information of memory management services.
@subsection contextdata Memory management of context data
@@ -532,7 +532,7 @@ controlled by upper level memory management.
@section testing Testing Your Code
See <tstdef.h> for example of how to write module tests with macros provided
See <sofia-sip/tstdef.h> for example of how to write module tests with macros provided
by Sofia.
Here are some ideas of what you should test: