[asterisk-commits] oej: trunk r65838 - in /trunk: ./ channels/chan_sip.c res/res_jabber.c

asterisk-commits at lists.digium.com asterisk-commits at lists.digium.com
Thu May 24 07:41:43 MST 2007


Author: oej
Date: Thu May 24 09:41:43 2007
New Revision: 65838

URL: http://svn.digium.com/view/asterisk?view=rev&rev=65838
Log:
Issue #8409 and accidentally a fix to chan_sip that wasn't supposed to be there
but is still ok... Sorry. Lack of Tea, really.

Modified:
    trunk/   (props changed)
    trunk/channels/chan_sip.c
    trunk/res/res_jabber.c

Propchange: trunk/
------------------------------------------------------------------------------
Binary property 'branch-1.4-merged' - no diff available.

Modified: trunk/channels/chan_sip.c
URL: http://svn.digium.com/view/asterisk/trunk/channels/chan_sip.c?view=diff&rev=65838&r1=65837&r2=65838
==============================================================================
--- trunk/channels/chan_sip.c (original)
+++ trunk/channels/chan_sip.c Thu May 24 09:41:43 2007
@@ -2096,7 +2096,14 @@
 			usleep(1);
 			sip_pvt_lock(pkt->owner);
 		}
-		if (pkt->owner->owner) {
+		if (pkt->method == SIP_BYE) {
+			/* Ok, we're not getting answers on SIP BYE's. Who cares?
+		           let's take the call down anyway. */
+			if (pkt->owner->owner)
+				ast_channel_unlock(pkt->owner->owner);
+			append_history(pkt->owner, "ByeFailure", "Remote peer doesn't respond to bye. Destroying call anyway.");
+			ast_set_flag(&pkt->owner->flags[0], SIP_NEEDDESTROY);	
+		} if (pkt->owner->owner) {
 			sip_alreadygone(pkt->owner);
 			ast_log(LOG_WARNING, "Hanging up call %s - no reply to our critical packet.\n", pkt->owner->callid);
 			ast_queue_hangup(pkt->owner->owner);

Modified: trunk/res/res_jabber.c
URL: http://svn.digium.com/view/asterisk/trunk/res/res_jabber.c?view=diff&rev=65838&r1=65837&r2=65838
==============================================================================
--- trunk/res/res_jabber.c (original)
+++ trunk/res/res_jabber.c Thu May 24 09:41:43 2007
@@ -1853,12 +1853,13 @@
 static int aji_component_initialize(struct aji_client *client)
 {
 	int connected = 1;
-	connected = iks_connect_via(client->p, client->jid->server, client->port, client->user);
+
+	connected = iks_connect_via(client->p, S_OR(client->serverhost, client->jid->server), client->port, client->user);
 	if (connected == IKS_NET_NOCONN) {
 		ast_log(LOG_ERROR, "JABBER ERROR: No Connection\n");
 		return IKS_HOOK;
 	} else if (connected == IKS_NET_NODNS) {
-		ast_log(LOG_ERROR, "JABBER ERROR: No DNS\n");
+		ast_log(LOG_ERROR, "JABBER ERROR: No DNS %s for client to  %s\n", client->name, S_OR(client->serverhost, client->jid->server));
 		return IKS_HOOK;
 	} else if (!connected) 
 		iks_recv(client->p, 30);



More information about the asterisk-commits mailing list