Skip to content

Commit 77f00f6

Browse files
Wu Fengguangdavem330
Wu Fengguang
authored andcommitted
isdnloop: fix and simplify isdnloop_init()
Fix a buffer overflow bug by removing the revision and printk. [ 22.016214] isdnloop-ISDN-driver Rev 1.11.6.7 [ 22.097508] isdnloop: (loop0) virtual card added [ 22.174400] Kernel panic - not syncing: stack-protector: Kernel stack is corrupted in: ffffffff83244972 [ 22.174400] [ 22.436157] Pid: 1, comm: swapper Not tainted 3.5.0-bisect-00018-gfa8bbb1-dirty #129 [ 22.624071] Call Trace: [ 22.720558] [<ffffffff832448c3>] ? CallcNew+0x56/0x56 [ 22.815248] [<ffffffff8222b623>] panic+0x110/0x329 [ 22.914330] [<ffffffff83244972>] ? isdnloop_init+0xaf/0xb1 [ 23.014800] [<ffffffff832448c3>] ? CallcNew+0x56/0x56 [ 23.090763] [<ffffffff8108e24b>] __stack_chk_fail+0x2b/0x30 [ 23.185748] [<ffffffff83244972>] isdnloop_init+0xaf/0xb1 Signed-off-by: Fengguang Wu <[email protected]> Signed-off-by: David S. Miller <[email protected]>
1 parent ae9e63b commit 77f00f6

File tree

1 file changed

+0
-12
lines changed

1 file changed

+0
-12
lines changed

drivers/isdn/isdnloop/isdnloop.c

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@
1616
#include <linux/sched.h>
1717
#include "isdnloop.h"
1818

19-
static char *revision = "$Revision: 1.11.6.7 $";
2019
static char *isdnloop_id = "loop0";
2120

2221
MODULE_DESCRIPTION("ISDN4Linux: Pseudo Driver that simulates an ISDN card");
@@ -1494,17 +1493,6 @@ isdnloop_addcard(char *id1)
14941493
static int __init
14951494
isdnloop_init(void)
14961495
{
1497-
char *p;
1498-
char rev[10];
1499-
1500-
if ((p = strchr(revision, ':'))) {
1501-
strcpy(rev, p + 1);
1502-
p = strchr(rev, '$');
1503-
*p = 0;
1504-
} else
1505-
strcpy(rev, " ??? ");
1506-
printk(KERN_NOTICE "isdnloop-ISDN-driver Rev%s\n", rev);
1507-
15081496
if (isdnloop_id)
15091497
return (isdnloop_addcard(isdnloop_id));
15101498

0 commit comments

Comments
 (0)