Commit 54cd92aa authored by Jesper Juhl's avatar Jesper Juhl Committed by Linus Torvalds

[PATCH] verify_area cleanup : sound

This patch converts verify_area to access_ok in sound/
Signed-off-by: default avatarJesper Juhl <juhl-lkml@dif.dk>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 7e39b725
...@@ -223,7 +223,7 @@ static int snd_hwdep_dsp_load(snd_hwdep_t *hw, snd_hwdep_dsp_image_t __user *_in ...@@ -223,7 +223,7 @@ static int snd_hwdep_dsp_load(snd_hwdep_t *hw, snd_hwdep_dsp_image_t __user *_in
/* check whether the dsp was already loaded */ /* check whether the dsp was already loaded */
if (hw->dsp_loaded & (1 << info.index)) if (hw->dsp_loaded & (1 << info.index))
return -EBUSY; return -EBUSY;
if (verify_area(VERIFY_READ, info.image, info.length)) if (!access_ok(VERIFY_READ, info.image, info.length))
return -EFAULT; return -EFAULT;
err = hw->ops.dsp_load(hw, &info); err = hw->ops.dsp_load(hw, &info);
if (err < 0) if (err < 0)
......
...@@ -375,7 +375,7 @@ static ssize_t snd_seq_read(struct file *file, char __user *buf, size_t count, l ...@@ -375,7 +375,7 @@ static ssize_t snd_seq_read(struct file *file, char __user *buf, size_t count, l
if (!(snd_seq_file_flags(file) & SNDRV_SEQ_LFLG_INPUT)) if (!(snd_seq_file_flags(file) & SNDRV_SEQ_LFLG_INPUT))
return -ENXIO; return -ENXIO;
if (verify_area(VERIFY_WRITE, buf, count)) if (!access_ok(VERIFY_WRITE, buf, count))
return -EFAULT; return -EFAULT;
/* check client structures are in place */ /* check client structures are in place */
......
...@@ -183,10 +183,10 @@ snd_emu8000_sample_new(snd_emux_t *rec, snd_sf_sample_t *sp, ...@@ -183,10 +183,10 @@ snd_emu8000_sample_new(snd_emux_t *rec, snd_sf_sample_t *sp,
} }
if (sp->v.mode_flags & SNDRV_SFNT_SAMPLE_8BITS) { if (sp->v.mode_flags & SNDRV_SFNT_SAMPLE_8BITS) {
if (verify_area(VERIFY_READ, data, sp->v.size)) if (!access_ok(VERIFY_READ, data, sp->v.size))
return -EFAULT; return -EFAULT;
} else { } else {
if (verify_area(VERIFY_READ, data, sp->v.size * 2)) if (!access_ok(VERIFY_READ, data, sp->v.size * 2))
return -EFAULT; return -EFAULT;
} }
......
...@@ -558,7 +558,7 @@ static ssize_t btaudio_dsp_read(struct file *file, char __user *buffer, ...@@ -558,7 +558,7 @@ static ssize_t btaudio_dsp_read(struct file *file, char __user *buffer,
__s16 __user *dst = (__s16 __user *)(buffer + ret); __s16 __user *dst = (__s16 __user *)(buffer + ret);
__s16 avg; __s16 avg;
int n = ndst>>1; int n = ndst>>1;
if (0 != verify_area(VERIFY_WRITE,dst,ndst)) { if (!access_ok(VERIFY_WRITE, dst, ndst)) {
if (0 == ret) if (0 == ret)
ret = -EFAULT; ret = -EFAULT;
break; break;
...@@ -574,7 +574,7 @@ static ssize_t btaudio_dsp_read(struct file *file, char __user *buffer, ...@@ -574,7 +574,7 @@ static ssize_t btaudio_dsp_read(struct file *file, char __user *buffer,
__u8 *src = bta->buf_cpu + bta->read_offset; __u8 *src = bta->buf_cpu + bta->read_offset;
__u8 __user *dst = buffer + ret; __u8 __user *dst = buffer + ret;
int n = ndst; int n = ndst;
if (0 != verify_area(VERIFY_WRITE,dst,ndst)) { if (!access_ok(VERIFY_WRITE, dst, ndst)) {
if (0 == ret) if (0 == ret)
ret = -EFAULT; ret = -EFAULT;
break; break;
...@@ -587,7 +587,7 @@ static ssize_t btaudio_dsp_read(struct file *file, char __user *buffer, ...@@ -587,7 +587,7 @@ static ssize_t btaudio_dsp_read(struct file *file, char __user *buffer,
__u16 *src = (__u16*)(bta->buf_cpu + bta->read_offset); __u16 *src = (__u16*)(bta->buf_cpu + bta->read_offset);
__u16 __user *dst = (__u16 __user *)(buffer + ret); __u16 __user *dst = (__u16 __user *)(buffer + ret);
int n = ndst>>1; int n = ndst>>1;
if (0 != verify_area(VERIFY_WRITE,dst,ndst)) { if (!access_ok(VERIFY_WRITE,dst,ndst)) {
if (0 == ret) if (0 == ret)
ret = -EFAULT; ret = -EFAULT;
break; break;
......
...@@ -341,11 +341,11 @@ static int sound_ioctl(struct inode *inode, struct file *file, ...@@ -341,11 +341,11 @@ static int sound_ioctl(struct inode *inode, struct file *file,
if (len < 1 || len > 65536 || !p) if (len < 1 || len > 65536 || !p)
return -EFAULT; return -EFAULT;
if (_SIOC_DIR(cmd) & _SIOC_WRITE) if (_SIOC_DIR(cmd) & _SIOC_WRITE)
if ((err = verify_area(VERIFY_READ, p, len)) < 0) if (!access_ok(VERIFY_READ, p, len))
return err; return -EFAULT;
if (_SIOC_DIR(cmd) & _SIOC_READ) if (_SIOC_DIR(cmd) & _SIOC_READ)
if ((err = verify_area(VERIFY_WRITE, p, len)) < 0) if (!access_ok(VERIFY_WRITE, p, len))
return err; return -EFAULT;
} }
DEB(printk("sound_ioctl(dev=%d, cmd=0x%x, arg=0x%x)\n", dev, cmd, arg)); DEB(printk("sound_ioctl(dev=%d, cmd=0x%x, arg=0x%x)\n", dev, cmd, arg));
if (cmd == OSS_GETVERSION) if (cmd == OSS_GETVERSION)
......
...@@ -525,7 +525,7 @@ static int snd_trident_simple_put_sample(void *private_data, simple_instrument_t ...@@ -525,7 +525,7 @@ static int snd_trident_simple_put_sample(void *private_data, simple_instrument_t
if (trident->synth.current_size + size > trident->synth.max_size) if (trident->synth.current_size + size > trident->synth.max_size)
return -ENOMEM; return -ENOMEM;
if (verify_area(VERIFY_READ, data, size)) if (!access_ok(VERIFY_READ, data, size))
return -EFAULT; return -EFAULT;
if (trident->tlb.entries) { if (trident->tlb.entries) {
...@@ -570,7 +570,7 @@ static int snd_trident_simple_get_sample(void *private_data, simple_instrument_t ...@@ -570,7 +570,7 @@ static int snd_trident_simple_get_sample(void *private_data, simple_instrument_t
shift++; shift++;
size <<= shift; size <<= shift;
if (verify_area(VERIFY_WRITE, data, size)) if (!access_ok(VERIFY_WRITE, data, size))
return -EFAULT; return -EFAULT;
/* FIXME: not implemented yet */ /* FIXME: not implemented yet */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment