asterisk/asterisk.patch.proxymwi

Sat, 03 Oct 2009 16:18:52 +0200

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Sat, 03 Oct 2009 16:18:52 +0200
changeset 220
a6cd892638c1
permissions
-rw-r--r--

Update version, adjust corresponding buildconf, and correct logic.
1: Make minor corrections and improvements to scripts patch logic.
2: Upgrade to most recent stable release version 3.0.2.
3: Force selection of a single db backend, as multiple ones never
were supported (changing 'with_db<end>' identifiers accordingly.)
4: Unfortunately add gawk requirement although only partly needed.
5: Add openssl::with_threads requirement to solve strange and hard
to debug problems on Solaris leading to connection failures:

'host-dir JobId 0: Error: openssl.c:86 Connect failure: ERR=error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number'

and

'host-dir JobId 40: Fatal error: TLS negotiation failed with FD at "back1.host.com:9102"'

     1 Index: channels/chan_sip.c
     2 diff -Nau channels/chan_sip.c.orig channels/chan_sip.c
     3 --- channels/chan_sip.c.orig	2009-04-24 00:51:58.000000000 +0200
     4 +++ channels/chan_sip.c	2009-04-24 00:52:33.000000000 +0200
     5 @@ -16428,6 +16428,7 @@
     6  	/* Called with peerl lock, but releases it */
     7  	struct sip_pvt *p;
     8  	int newmsgs, oldmsgs;
     9 +	char *s = NULL;
    11  	/* Do we have an IP address? If not, skip this peer */
    12  	if (!peer->addr.sin_addr.s_addr && !peer->defaddr.sin_addr.s_addr) 
    13 @@ -16461,6 +16462,11 @@
    14  		/* Recalculate our side, and recalculate Call ID */
    15  		if (ast_sip_ouraddrfor(&p->sa.sin_addr, &p->ourip))
    16  			p->ourip = __ourip;
    17 +		/* Set the username = mailbox and remove the context */
    18 +		ast_string_field_build(p, username, "%s", peer->name);
    19 +		s = strchr(p->username, '@');
    20 +		if (s != NULL)
    21 +			*s = 0;
    22  		build_via(p);
    23  		build_callid_pvt(p);
    24  		/* Destroy this session after 32 secs */

mercurial