summaryrefslogtreecommitdiff
path: root/zaptel.c
diff options
context:
space:
mode:
authorkpfleming <kpfleming@5390a7c7-147a-4af0-8ec9-7488f05a26cb>2005-12-17 02:52:18 +0000
committerkpfleming <kpfleming@5390a7c7-147a-4af0-8ec9-7488f05a26cb>2005-12-17 02:52:18 +0000
commit7035b963402a64116a509df9e90d94740ed4fccd (patch)
treef2a6ca61c9c6491d8b77ad3f49083a1e243af12f /zaptel.c
parente2cab742b1d41becf87d7b21e4b451370e8a7c12 (diff)
allow userspace apps to extract version/echo canceller info
add version/echo canceller info to ztcfg verbose output git-svn-id: http://svn.digium.com/svn/zaptel/trunk@872 5390a7c7-147a-4af0-8ec9-7488f05a26cb
Diffstat (limited to 'zaptel.c')
-rw-r--r--zaptel.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/zaptel.c b/zaptel.c
index d97961e..fa2be5b 100644
--- a/zaptel.c
+++ b/zaptel.c
@@ -3108,6 +3108,7 @@ static int zt_ctl_ioctl(struct inode *inode, struct file *file, unsigned int cmd
struct zt_dialparams tdp;
struct zt_maintinfo maint;
struct zt_indirect_data ind;
+ struct zt_versioninfo vi;
unsigned long flags;
int rv;
switch(cmd) {
@@ -3409,6 +3410,13 @@ static int zt_ctl_ioctl(struct inode *inode, struct file *file, unsigned int cmd
if (copy_to_user((struct zt_dialparams *)data, &tdp, sizeof(tdp)))
return -EFAULT;
break;
+ case ZT_GETVERSION:
+ memset(&vi, 0, sizeof(vi));
+ strncpy(vi.version, ZAPTEL_VERSION, sizeof(vi.version) - 1);
+ strncpy(vi.echo_canceller, ZAPTEL_ECHO_CANCELLER, sizeof(vi.echo_canceller) - 1);
+ if (copy_to_user((struct zt_versioninfo *) data, &vi, sizeof(vi)))
+ return -EFAULT;
+ break;
case ZT_MAINT: /* do maintence stuff */
/* get struct from user */
if (copy_from_user(&maint,(struct zt_maintinfo *) data, sizeof(maint)))