From: Tilghman Lesher Date: Wed, 26 Nov 2008 18:33:04 +0000 (+0000) Subject: If the config file does not exist, then the first use crashes Asterisk. X-Git-Tag: 1.6.2.0-beta1~766 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6e6e02ce1ff3bd53ff75a28471b1e10e26597b99;p=thirdparty%2Fasterisk.git If the config file does not exist, then the first use crashes Asterisk. (closes issue #13848) Reported by: klaus3000 Patches: udptl.c.patch uploaded by eliel (license 64) Tested by: blitzrage git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@159475 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/main/udptl.c b/main/udptl.c index 620734b60a..166e0dab05 100644 --- a/main/udptl.c +++ b/main/udptl.c @@ -74,8 +74,8 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$") #define TRUE (!FALSE) #endif -static int udptlstart; -static int udptlend; +static int udptlstart = 4500; +static int udptlend = 4599; static int udptldebug; /*!< Are we debugging? */ static struct sockaddr_in udptldebugaddr; /*!< Debug packets to/from this host */ #ifdef SO_NO_CHECK @@ -808,7 +808,7 @@ struct ast_udptl *ast_udptl_new_with_bindaddr(struct sched_context *sched, struc setsockopt(udptl->fd, SOL_SOCKET, SO_NO_CHECK, &nochecksums, sizeof(nochecksums)); #endif /* Find us a place */ - x = (ast_random() % (udptlend - udptlstart)) + udptlstart; + x = (udptlstart == udptlend) ? udptlstart : (ast_random() % (udptlend - udptlstart)) + udptlstart; startplace = x; for (;;) { udptl->us.sin_port = htons(x);