]> git.ipfire.org Git - ipfire-2.x.git/blob - src/patches/cdrkit/cdrkit-1.1.9-buffer_overflow.patch
suricata: Change midstream policy to "pass-flow"
[ipfire-2.x.git] / src / patches / cdrkit / cdrkit-1.1.9-buffer_overflow.patch
1 diff -ru origin-1.1.9/wodim/scsi_cdr.c master-1.1.9/wodim/scsi_cdr.c
2 --- origin-1.1.9/wodim/scsi_cdr.c 2008-02-25 12:14:07.000000000 +0100
3 +++ master-1.1.9/wodim/scsi_cdr.c 2009-07-16 12:01:29.000000000 +0200
4 @@ -2181,26 +2181,30 @@
5 if (inq->add_len == 0) {
6 if (usalp->dev == DEV_UNKNOWN && got_inquiry) {
7 usalp->dev = DEV_ACB5500;
8 - strcpy(inq->vendor_info,
9 - "ADAPTEC ACB-5500 FAKE");
10 + strncpy(inq->vendor_info, "ADAPTEC ", 8);
11 + strncpy(inq->prod_ident,"ACB-5500 ", 16);
12 + strncpy(inq->prod_revision, "FAKE", 4);
13
14 } else switch (usalp->dev) {
15 -
16 case DEV_ACB40X0:
17 - strcpy(inq->vendor_info,
18 - "ADAPTEC ACB-40X0 FAKE");
19 + strncpy(inq->vendor_info, "ADAPTEC ", 8);
20 + strncpy(inq->prod_ident, "ACB-40X0 ",16);
21 + strncpy(inq->prod_revision, "FAKE", 4);
22 break;
23 case DEV_ACB4000:
24 - strcpy(inq->vendor_info,
25 - "ADAPTEC ACB-4000 FAKE");
26 + strncpy(inq->vendor_info, "ADAPTEC ",8);
27 + strncpy(inq->prod_ident, "ACB-4000 ",16);
28 + strncpy(inq->prod_revision, "FAKE",4);
29 break;
30 case DEV_ACB4010:
31 - strcpy(inq->vendor_info,
32 - "ADAPTEC ACB-4010 FAKE");
33 + strncpy(inq->vendor_info, "ADAPTEC ",8);
34 + strncpy(inq->prod_ident, "ACB-4010 ",16);
35 + strncpy(inq->prod_revision, "FAKE",4);
36 break;
37 case DEV_ACB4070:
38 - strcpy(inq->vendor_info,
39 - "ADAPTEC ACB-4070 FAKE");
40 + strncpy(inq->vendor_info,"ADAPTEC ",8);
41 + strncpy(inq->prod_ident, "ACB-4070 ", 16);
42 + strncpy(inq->prod_revision, "FAKE",4 );
43 break;
44 }
45 } else if (inq->add_len < 31) {
46 @@ -2230,14 +2234,16 @@
47
48 case INQ_SEQD:
49 if (usalp->dev == DEV_SC4000) {
50 - strcpy(inq->vendor_info,
51 - "SYSGEN SC4000 FAKE");
52 + strncpy(inq->vendor_info,"SYSGEN ",8);
53 + strncpy(inq->prod_ident, "SC4000 ",16);
54 + strncpy(inq->prod_revision, "FAKE",4);
55 } else if (inq->add_len == 0 &&
56 inq->removable &&
57 inq->ansi_version == 1) {
58 usalp->dev = DEV_MT02;
59 - strcpy(inq->vendor_info,
60 - "EMULEX MT02 FAKE");
61 + strncpy(inq->vendor_info,"EMULEX ",8);
62 + strncpy(inq->prod_ident, "MT02 ",16);
63 + strncpy(inq->prod_revision, "FAKE",4);
64 }
65 break;
66