diff options
Diffstat (limited to 'zaptel.c')
-rw-r--r-- | zaptel.c | 8 |
1 files changed, 8 insertions, 0 deletions
@@ -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))) |