[asterisk-commits] oej: trunk r128455 - /trunk/channels/chan_sip.c

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Sun Jul 6 12:58:07 CDT 2008


Author: oej
Date: Sun Jul  6 12:58:06 2008
New Revision: 128455

URL: http://svn.digium.com/view/asterisk?view=rev&rev=128455
Log:
- Formatting changes
- Doxygen changes
- Replacing a doxygen description that was copied from another function

Modified:
    trunk/channels/chan_sip.c

Modified: trunk/channels/chan_sip.c
URL: http://svn.digium.com/view/asterisk/trunk/channels/chan_sip.c?view=diff&rev=128455&r1=128454&r2=128455
==============================================================================
--- trunk/channels/chan_sip.c (original)
+++ trunk/channels/chan_sip.c Sun Jul  6 12:58:06 2008
@@ -12908,7 +12908,7 @@
 	return _sip_show_peer(0, a->fd, NULL, NULL, a->argc, (const char **) a->argv);
 }
 
-/*! \brief Show one peer in detail (main function) */
+/*! \brief Send qualify message to peer from cli or manager. Mostly for debugging. */
 static char *_sip_qualify_peer(int type, int fd, struct mansession *s, const struct message *m, int argc, const char *argv[])
 {
 	struct sip_peer *peer;
@@ -15717,8 +15717,8 @@
 		ast_udptl_stop(p->udptl);
 }
 
-/*! \brief Handle SIP response in dialogue */
-/* XXX only called by handle_incoming */
+/*! \brief Handle SIP response in dialogue
+	\note only called by handle_incoming */
 static void handle_response(struct sip_pvt *p, int resp, char *rest, struct sip_request *req, int seqno)
 {
 	struct ast_channel *owner;
@@ -19562,8 +19562,10 @@
 }
 
 /*! \brief Check availability of peer, also keep NAT open
-\note	This is done with the interval in qualify= configuration option
-	Default is 2 seconds */
+\note	This is done with 60 seconds between each ping,
+	unless forced by cli or manager. If peer is unreachable,
+	we check every 10th second by default. 
+*/
 static int sip_poke_peer(struct sip_peer *peer, int force)
 {
 	struct sip_pvt *p;
@@ -19575,19 +19577,22 @@
 		AST_SCHED_DEL(sched, peer->pokeexpire);
 		
 		peer->lastms = 0;
-		if (peer->call)
+		if (peer->call) {
 			peer->call = dialog_unref(peer->call, "unref dialog peer->call");
+		}
 		return 0;
 	}
 	if (peer->call) {
-		if (sipdebug)
+		if (sipdebug) {
 			ast_log(LOG_NOTICE, "Still have a QUALIFY dialog active, deleting\n");
+		}
 		dialog_unlink_all(peer->call, TRUE, TRUE);
 		peer->call = dialog_unref(peer->call, "unref dialog peer->call");
 		/* peer->call = sip_destroy(peer->call); */
 	}
-	if (!(p = sip_alloc(NULL, NULL, 0, SIP_OPTIONS)))
+	if (!(p = sip_alloc(NULL, NULL, 0, SIP_OPTIONS))) {
 		return -1;
+	}
 	peer->call = dialog_ref(p, "copy sip alloc from p to peer->call");
 	
 	p->sa = peer->addr;
@@ -19628,8 +19633,7 @@
 	if (xmitres == XMIT_ERROR) {
 		sip_poke_noanswer(peer);	/* Immediately unreachable, network problems */
 	} else if (!force) {
-		AST_SCHED_REPLACE(peer->pokeexpire, sched, 
-			peer->maxms * 2, sip_poke_noanswer, peer);
+		AST_SCHED_REPLACE(peer->pokeexpire, sched, peer->maxms * 2, sip_poke_noanswer, peer);
 	}
 	dialog_unref(p, "unref dialog at end of sip_poke_peer, obtained from sip_alloc, just before it goes out of scope");
 	return 0;




More information about the asterisk-commits mailing list