summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xzaptel.c2
-rwxr-xr-xzaptel.h3
2 files changed, 4 insertions, 1 deletions
diff --git a/zaptel.c b/zaptel.c
index 4fc7da6..b5589d1 100755
--- a/zaptel.c
+++ b/zaptel.c
@@ -3049,6 +3049,8 @@ static int zt_chanandpseudo_ioctl(struct inode *inode, struct file *file, unsign
return -EINVAL;
if (bi.bufsize < 16)
return -EINVAL;
+ if (bi.bufsize * bi.numbufs > ZT_MAX_BUF_SPACE)
+ return -EINVAL;
chan->rxbufpolicy = bi.rxbufpolicy & 0x1;
chan->txbufpolicy = bi.txbufpolicy & 0x1;
if ((rv = zt_reallocbufs(chan, bi.bufsize, bi.numbufs)))
diff --git a/zaptel.h b/zaptel.h
index ca02dae..ebe4bea 100755
--- a/zaptel.h
+++ b/zaptel.h
@@ -118,7 +118,8 @@
#define ZT_MAX_BLOCKSIZE 8192
#define ZT_DEFAULT_NUM_BUFS 2
-#define ZT_MAX_NUM_BUFS 8
+#define ZT_MAX_NUM_BUFS 32
+#define ZT_MAX_BUF_SPACE 32768
#define ZT_DEFAULT_BLOCKSIZE 1024
#define ZT_DEFAULT_MTR_MRU 2048