Mon May 19 13:42:41 EDT 2008 Pekka Pessi <first.last@nokia.com>
* RELEASE: updated git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@8600 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
parent
fb0173653c
commit
66a57f4927
|
@ -9,6 +9,14 @@ Changes since last release
|
|||
and in less than 10 lines, written in 3rd person English, with
|
||||
complete sentences />
|
||||
|
||||
Bugs with BYE handling and event fetch/poll (SUBSCRIBE with Expires: 0) have
|
||||
been fixed in nua. Bugs with timer handling, RFC2543 dialog/transaction
|
||||
matching and gray list handling have been fixed in nta, all introduced by
|
||||
release 1.12.8.
|
||||
|
||||
Stack now supports some load control with NTATAG_MAX_PROCEEDING(), limiting
|
||||
number of initial INVITE transactions being served concurrently.
|
||||
|
||||
Bugs in blaa and foo have been fixed. The stack now supports
|
||||
use of foobar...
|
||||
|
||||
|
@ -24,7 +32,17 @@ API/ABI changes and versioning
|
|||
**template**: New features in API are marked with Doxytag macro @VERSION_1_XX_X.
|
||||
|
||||
libsofia-sip-ua:
|
||||
- **template**: Added foobar() function (sofia-sip/foobar.h).
|
||||
- Added nta_outgoing_bind() to <sofia-sip/nta.h>.
|
||||
- Allow changing TPTAG_LOG() and TPTAG_DUMP() values after tport_create()
|
||||
- Added NUTAG_SHUTDOWN_EVENTS(). If NUTAG_SHUTDOWN_EVENTS(1) nua setting is
|
||||
used, nua sends events to application normally during shutdown, too.
|
||||
- Added NUTAG_SUB_EXPIRES() - default expiration time of subscription
|
||||
- Added NTATAG_MAX_PROCEEDING() - limit number of requests accepted in
|
||||
proceeding queue.
|
||||
- Using NUTAG_PROXY()/NTATAG_DEFAULT_PROXY() as handle-specific tag.
|
||||
Previously, NUTAG_PROXY() was ignored if given with nua_set_hparams(),
|
||||
nua_invite(), nua_respond(), etc.
|
||||
- Added nua_handle_by_call_id(), nta_leg_by_call_id().
|
||||
- This release is ABI/API compatible with applications linked against
|
||||
any 1.12.x release. However, applications built against this release won't
|
||||
work against an older library. The ABI has been tested with the nua module
|
||||
|
@ -38,6 +56,12 @@ libsofia-sip-ua-glib:
|
|||
Contributors to this release
|
||||
----------------------------
|
||||
|
||||
- Michael Jerris: fixes, new features NTATAG_MAX_PROCEEDING(),
|
||||
nua_handle_by_call_id(), nta_leg_by_call_id()
|
||||
- Colin Whittaker: re-calculating subscription duration when receiving NOTIFY
|
||||
- Jerry Richards: fix to sip_header_as_string()
|
||||
- Jussi Mutanen: fix to soa handling within nua
|
||||
|
||||
<list of people who contributed to _this_ release
|
||||
- update as people's patches are added, or when you commit stuff
|
||||
- current development team members (see AUTHORS) may be omitted,
|
||||
|
@ -64,6 +88,37 @@ Notes on new features
|
|||
Bugs fixed in this release
|
||||
--------------------------
|
||||
|
||||
- Fixed sf.net bug #1827511: BYE can now be authenticated with
|
||||
nua_authenticate().
|
||||
- Fixed problems re-calculating the subscription duration upon NOTIFY.
|
||||
Thanks to Colin Whittaker for reporting the problem and proposing a fix to
|
||||
the problem.
|
||||
- Fixed crash when SOATAG_ORDERED_USER(1) was used and multiple m= lines were
|
||||
added to the session.
|
||||
- Fixed problem with an error response terminating the session usage but
|
||||
not triggering nua_i_state event reporting that to application.
|
||||
Thanks to AlienPenguin for reporting the problem
|
||||
- Fixed crash and general lossage with event fetch (SUBSCRIBE with Expires: 0)
|
||||
Thanks to Jarkko Riekki for reporting the problem.
|
||||
- Handle NULL argument to su_free() gracefully even if free() does not.
|
||||
Thanks for Michael Jerris for submitting the patch.
|
||||
- Do not use PT 9 (G722) as invalid PT (currently use 19).
|
||||
- Fixed problems handling míllisecond timers in nta on 64-bit platforms.
|
||||
Thanks to David Knell and Michael Jerris for reporting it.
|
||||
- Allow-Events is now included by nua in messages initiating dialogs.
|
||||
Thanks to Jerry Richards for pointing out the problem.
|
||||
- Now checking that pointer is not NULL before calling free()
|
||||
Thanks to Michail Jerris for submitting patch.
|
||||
- Fixed bug in sip_header_as_string() converting longish header to string
|
||||
Thanks to Jerry Richards for submitting a patch
|
||||
- Fixed problem with soa session activation.
|
||||
Thanks to Jussi Mutanen for patch.
|
||||
- Fixed problems handling host:port in user-supplied Via headers.
|
||||
- Fixed sf.net bug #1930055: nat detection did not un-REGISTER natted contact
|
||||
if fist response to REGISTER was 200 OK.
|
||||
- Fixed crashes in soa if m= lines were removed from user sdp.
|
||||
|
||||
|
||||
< notable bugs fixed in this release
|
||||
- check the sf.net bug tracker; see closed bugs,
|
||||
sorted by closing date
|
||||
|
|
|
@ -4085,6 +4085,10 @@ nta_leg_t *leg_find_call_id(nta_agent_t const *sa,
|
|||
}
|
||||
|
||||
/** Get dialog leg by @CallID.
|
||||
*
|
||||
* @note Usually there should be only single dialog per @CallID on
|
||||
* User-Agents. However, proxies may fork requests initiating the dialog and
|
||||
* result in multiple calls per @CallID.
|
||||
*
|
||||
* @since New in @VERSION_1_12_9.
|
||||
*/
|
||||
|
|
|
@ -411,7 +411,7 @@ bye_to_nua(nua_handle_t *nh,
|
|||
|
||||
/* 2.1 - Basic call cases */
|
||||
|
||||
START_TEST(basic_call_with_bye_by_nua)
|
||||
START_TEST(call_2_1_1)
|
||||
{
|
||||
nua_handle_t *nh;
|
||||
|
||||
|
@ -429,7 +429,7 @@ START_TEST(basic_call_with_bye_by_nua)
|
|||
END_TEST
|
||||
|
||||
|
||||
START_TEST(basic_call_with_bye_to_nua)
|
||||
START_TEST(call_2_1_2)
|
||||
{
|
||||
nua_handle_t *nh;
|
||||
|
||||
|
@ -447,7 +447,7 @@ START_TEST(basic_call_with_bye_to_nua)
|
|||
END_TEST
|
||||
|
||||
|
||||
START_TEST(call_to_nua_with_bye_to_nua)
|
||||
START_TEST(call_2_1_3)
|
||||
{
|
||||
nua_handle_t *nh;
|
||||
|
||||
|
@ -463,7 +463,7 @@ START_TEST(call_to_nua_with_bye_to_nua)
|
|||
END_TEST
|
||||
|
||||
|
||||
START_TEST(call_to_nua_with_bye_by_nua)
|
||||
START_TEST(call_2_1_4)
|
||||
{
|
||||
nua_handle_t *nh;
|
||||
|
||||
|
@ -479,7 +479,7 @@ START_TEST(call_to_nua_with_bye_by_nua)
|
|||
END_TEST
|
||||
|
||||
|
||||
START_TEST(call_to_nua_with_bye_by_nua_challenged)
|
||||
START_TEST(call_2_1_5)
|
||||
{
|
||||
nua_handle_t *nh;
|
||||
|
||||
|
@ -572,17 +572,51 @@ START_TEST(call_2_1_6)
|
|||
END_TEST
|
||||
|
||||
|
||||
START_TEST(call_2_1_7)
|
||||
{
|
||||
nua_handle_t *nh, *nh2;
|
||||
sip_replaces_t *replaces;
|
||||
|
||||
s2_case("2.1.7", "Call lookup",
|
||||
"Test dialog and call-id lookup");
|
||||
|
||||
nh = nua_handle(nua, NULL, SIPTAG_TO(s2->local), TAG_END());
|
||||
|
||||
invite_by_nua(nh, TAG_END());
|
||||
|
||||
nh2 = nua_handle_by_call_id(nua, dialog->call_id->i_id);
|
||||
fail_if(!nh2); fail_if(nh != nh2); nua_handle_unref(nh2);
|
||||
|
||||
replaces = sip_replaces_format(NULL, "%s;from-tag=%s;to-tag=%s",
|
||||
dialog->call_id->i_id,
|
||||
dialog->local->a_tag,
|
||||
dialog->remote->a_tag);
|
||||
fail_if(!replaces);
|
||||
|
||||
nh2 = nua_handle_by_replaces(nua, replaces);
|
||||
fail_if(!nh2); fail_if(nh != nh2); nua_handle_unref(nh2);
|
||||
|
||||
msg_header_free_all(NULL, (msg_header_t *)replaces);
|
||||
|
||||
bye_by_nua(nh, TAG_END());
|
||||
|
||||
nua_handle_destroy(nh);
|
||||
}
|
||||
END_TEST
|
||||
|
||||
|
||||
TCase *invite_tcase(void)
|
||||
{
|
||||
TCase *tc = tcase_create("2.1 - Basic INVITE");
|
||||
tcase_add_checked_fixture(tc, call_setup, call_teardown);
|
||||
{
|
||||
tcase_add_test(tc, basic_call_with_bye_by_nua);
|
||||
tcase_add_test(tc, basic_call_with_bye_to_nua);
|
||||
tcase_add_test(tc, call_to_nua_with_bye_to_nua);
|
||||
tcase_add_test(tc, call_to_nua_with_bye_by_nua);
|
||||
tcase_add_test(tc, call_to_nua_with_bye_by_nua_challenged);
|
||||
tcase_add_test(tc, call_2_1_1);
|
||||
tcase_add_test(tc, call_2_1_2);
|
||||
tcase_add_test(tc, call_2_1_3);
|
||||
tcase_add_test(tc, call_2_1_4);
|
||||
tcase_add_test(tc, call_2_1_5);
|
||||
tcase_add_test(tc, call_2_1_6);
|
||||
tcase_add_test(tc, call_2_1_7);
|
||||
}
|
||||
return tc;
|
||||
}
|
||||
|
|
|
@ -1036,7 +1036,7 @@ nua_handle_t *nua_handle_by_replaces(nua_t *nua, sip_replaces_t const *r)
|
|||
if (nua) {
|
||||
#if HAVE_OPEN_C
|
||||
struct nua_stack_handle_by_replaces_args a;
|
||||
a.retval = NULL;
|
||||
a.retval = NULL;
|
||||
a.nua = nua;
|
||||
a.r = r;
|
||||
#else
|
||||
|
|
|
@ -81,7 +81,7 @@ static char const __func__[] = "stun";
|
|||
/** STUN log. */
|
||||
su_log_t stun_log[] = { SU_LOG_INIT("stun", "STUN_DEBUG", SU_DEBUG) };
|
||||
|
||||
/**@var STUN_DEBUG
|
||||
/**@var char const STUN_DEBUG[]
|
||||
*
|
||||
* Environment variable determining the debug log level for @b stun module.
|
||||
*
|
||||
|
@ -90,7 +90,7 @@ su_log_t stun_log[] = { SU_LOG_INIT("stun", "STUN_DEBUG", SU_DEBUG) };
|
|||
*
|
||||
* @sa <sofia-sip/su_debug.h>, stun_log, SOFIA_DEBUG
|
||||
*/
|
||||
extern char const STUN__DEBUG[];
|
||||
extern char const STUN_DEBUG[];
|
||||
|
||||
enum {
|
||||
STUN_SENDTO_TIMEOUT = 1000,
|
||||
|
|
Loading…
Reference in New Issue