diff options
author | Jesper Juhl <jesper.juhl@gmail.com> | 2007-10-16 04:27:52 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-10-16 12:43:10 -0400 |
commit | e8a285b7b10029c3da7e9bbaa1659e7e08178912 (patch) | |
tree | a97878e17221c2686e91dd8cfea2b03dbde7d855 /drivers/isdn | |
parent | b1b2e7cf4a9742f61d76fcb419b1fd13159876a5 (diff) |
isdn: guard against a potential NULL pointer dereference in old_capi_manufacturer()
In drivers/isdn/capi/kcapi.c::old_capi_manufacturer(), if the call to
get_capi_ctr_by_nr(ldef.contr); in line 823 returns NULL, then we'll be
dereferencing a NULL pointer in the very next line.
(Found by Coverity checker as bug #402)
Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com>
Acked-by: Karsten Keil <kkeil@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/isdn')
-rw-r--r-- | drivers/isdn/capi/kcapi.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/isdn/capi/kcapi.c b/drivers/isdn/capi/kcapi.c index 9f73bc2727c2..f55531869313 100644 --- a/drivers/isdn/capi/kcapi.c +++ b/drivers/isdn/capi/kcapi.c | |||
@@ -821,6 +821,8 @@ static int old_capi_manufacturer(unsigned int cmd, void __user *data) | |||
821 | return -EFAULT; | 821 | return -EFAULT; |
822 | } | 822 | } |
823 | card = get_capi_ctr_by_nr(ldef.contr); | 823 | card = get_capi_ctr_by_nr(ldef.contr); |
824 | if (!card) | ||
825 | return -EINVAL; | ||
824 | card = capi_ctr_get(card); | 826 | card = capi_ctr_get(card); |
825 | if (!card) | 827 | if (!card) |
826 | return -ESRCH; | 828 | return -ESRCH; |