Merged revisions 88994 via svnmerge from
authorJoshua Colp <jcolp@digium.com>
Tue, 6 Nov 2007 16:29:16 +0000 (16:29 +0000)
committerJoshua Colp <jcolp@digium.com>
Tue, 6 Nov 2007 16:29:16 +0000 (16:29 +0000)
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r88994 | file | 2007-11-06 12:24:56 -0400 (Tue, 06 Nov 2007) | 6 lines

Fix improbable but possible memory leaks in chan_zap.
(closes issue #11166)
Reported by: eliel
Patches:
      chan_zap.c.patch uploaded by eliel (license 64)

........

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@88995 65c4cc65-6c06-0410-ace0-fbb531ad65f3

channels/chan_zap.c
configs/zapata.conf.sample

index 556cdc5..bf416c7 100644 (file)
@@ -1073,7 +1073,13 @@ static int zt_open(char *fn)
                }
        }
        bs = READ_SIZE;
-       if (ioctl(fd, ZT_SET_BLOCKSIZE, &bs) == -1) return -1;
+       if (ioctl(fd, ZT_SET_BLOCKSIZE, &bs) == -1) {
+               ast_log(LOG_WARNING, "Unable to set blocksize '%d': %s\n", bs,  strerror(errno));
+               x = errno;
+               close(fd);
+               errno = x;
+               return -1;
+       }
        return fd;
 }
 
@@ -13216,8 +13222,10 @@ static int zt_sendtext(struct ast_channel *c, const char *text)
                        continue;
                }
                  /* if got exception */
-               if (fds[0].revents & POLLPRI)
+               if (fds[0].revents & POLLPRI) {
+                       ast_free(mybuf);
                        return -1;
+               }
                if (!(fds[0].revents & POLLOUT)) {
                        ast_debug(1, "write fd not ready on channel %d\n", p->channel);
                        continue;
index ded44d2..13cfe3e 100644 (file)
 ; T305: Wait for DISCONNECT acknowledge (default 30000 ms)
 ; T308: Wait for RELEASE acknowledge (default 4000 ms)
 ; T309: Maintain active calls on Layer 2 disconnection (default -1, 
-        Asterisk clears calls)
+;       Asterisk clears calls)
 ;       EuroISDN: 6000 to 12000 ms, according to (N200 + 1) x T200 + 2s
 ;       May vary in other ISDN standards (Q.931 1993 : 90000 ms)
 ; T313: Wait for CONNECT acknowledge, CPE side only (default 3000 ms)