mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-01-15 09:34:17 +00:00
isdnloop: Validate NUL-terminated strings from user.
Return -EINVAL unless all of user-given strings are correctly NUL-terminated. Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
79eb9d28c9
commit
77bc6bed71
@ -1070,6 +1070,12 @@ isdnloop_start(isdnloop_card *card, isdnloop_sdef *sdefp)
|
||||
return -EBUSY;
|
||||
if (copy_from_user((char *) &sdef, (char *) sdefp, sizeof(sdef)))
|
||||
return -EFAULT;
|
||||
|
||||
for (i = 0; i < 3; i++) {
|
||||
if (!memchr(sdef.num[i], 0, sizeof(sdef.num[i])))
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
spin_lock_irqsave(&card->isdnloop_lock, flags);
|
||||
switch (sdef.ptype) {
|
||||
case ISDN_PTYPE_EURO:
|
||||
|
Loading…
x
Reference in New Issue
Block a user