author | Mike Sullivan <Mike.Sullivan@Oracle.COM> |
Wed, 30 Mar 2016 10:07:29 -0700 | |
changeset 5679 | d91b8121bb2a |
parent 5540 | bfcdc34c39a9 |
permissions | -rw-r--r-- |
5540
bfcdc34c39a9
22492633 problem in LIBRARY/PCRE
Rich Burridge <rich.burridge@oracle.com>
parents:
diff
changeset
|
1 |
This patch fixes CVE-2016-1283, filed upstream as: |
bfcdc34c39a9
22492633 problem in LIBRARY/PCRE
Rich Burridge <rich.burridge@oracle.com>
parents:
diff
changeset
|
2 |
|
bfcdc34c39a9
22492633 problem in LIBRARY/PCRE
Rich Burridge <rich.burridge@oracle.com>
parents:
diff
changeset
|
3 |
https://bugs.exim.org/show_bug.cgi?id=1767 |
bfcdc34c39a9
22492633 problem in LIBRARY/PCRE
Rich Burridge <rich.burridge@oracle.com>
parents:
diff
changeset
|
4 |
|
bfcdc34c39a9
22492633 problem in LIBRARY/PCRE
Rich Burridge <rich.burridge@oracle.com>
parents:
diff
changeset
|
5 |
See also: |
bfcdc34c39a9
22492633 problem in LIBRARY/PCRE
Rich Burridge <rich.burridge@oracle.com>
parents:
diff
changeset
|
6 |
|
bfcdc34c39a9
22492633 problem in LIBRARY/PCRE
Rich Burridge <rich.burridge@oracle.com>
parents:
diff
changeset
|
7 |
http://www.cvedetails.com/cve-details.php?t=1&cve_id=cve-2016-1283 |
bfcdc34c39a9
22492633 problem in LIBRARY/PCRE
Rich Burridge <rich.burridge@oracle.com>
parents:
diff
changeset
|
8 |
|
bfcdc34c39a9
22492633 problem in LIBRARY/PCRE
Rich Burridge <rich.burridge@oracle.com>
parents:
diff
changeset
|
9 |
This problem has already been fixed upstream in the svn code repository at: |
bfcdc34c39a9
22492633 problem in LIBRARY/PCRE
Rich Burridge <rich.burridge@oracle.com>
parents:
diff
changeset
|
10 |
|
bfcdc34c39a9
22492633 problem in LIBRARY/PCRE
Rich Burridge <rich.burridge@oracle.com>
parents:
diff
changeset
|
11 |
svn://vcs.exim.org/pcre/code/trunk |
bfcdc34c39a9
22492633 problem in LIBRARY/PCRE
Rich Burridge <rich.burridge@oracle.com>
parents:
diff
changeset
|
12 |
|
bfcdc34c39a9
22492633 problem in LIBRARY/PCRE
Rich Burridge <rich.burridge@oracle.com>
parents:
diff
changeset
|
13 |
--- pcre-8.38/pcre_compile.c.orig 2016-03-02 10:28:48.735223798 -0800 |
bfcdc34c39a9
22492633 problem in LIBRARY/PCRE
Rich Burridge <rich.burridge@oracle.com>
parents:
diff
changeset
|
14 |
+++ pcre-8.38/pcre_compile.c 2016-03-02 10:30:50.856995461 -0800 |
bfcdc34c39a9
22492633 problem in LIBRARY/PCRE
Rich Burridge <rich.burridge@oracle.com>
parents:
diff
changeset
|
15 |
@@ -7274,7 +7274,12 @@ |
bfcdc34c39a9
22492633 problem in LIBRARY/PCRE
Rich Burridge <rich.burridge@oracle.com>
parents:
diff
changeset
|
16 |
so far in order to get the number. If the name is not found, leave |
bfcdc34c39a9
22492633 problem in LIBRARY/PCRE
Rich Burridge <rich.burridge@oracle.com>
parents:
diff
changeset
|
17 |
the value of recno as 0 for a forward reference. */ |
bfcdc34c39a9
22492633 problem in LIBRARY/PCRE
Rich Burridge <rich.burridge@oracle.com>
parents:
diff
changeset
|
18 |
|
bfcdc34c39a9
22492633 problem in LIBRARY/PCRE
Rich Burridge <rich.burridge@oracle.com>
parents:
diff
changeset
|
19 |
- else |
bfcdc34c39a9
22492633 problem in LIBRARY/PCRE
Rich Burridge <rich.burridge@oracle.com>
parents:
diff
changeset
|
20 |
+ /* This patch (removing "else") fixes a problem when a reference is |
bfcdc34c39a9
22492633 problem in LIBRARY/PCRE
Rich Burridge <rich.burridge@oracle.com>
parents:
diff
changeset
|
21 |
+ to multiple identically named nested groups from within the nest. |
bfcdc34c39a9
22492633 problem in LIBRARY/PCRE
Rich Burridge <rich.burridge@oracle.com>
parents:
diff
changeset
|
22 |
+ Once again, it is not the "proper" fix, and it results in an |
bfcdc34c39a9
22492633 problem in LIBRARY/PCRE
Rich Burridge <rich.burridge@oracle.com>
parents:
diff
changeset
|
23 |
+ over-allocation of memory. */ |
bfcdc34c39a9
22492633 problem in LIBRARY/PCRE
Rich Burridge <rich.burridge@oracle.com>
parents:
diff
changeset
|
24 |
+ |
bfcdc34c39a9
22492633 problem in LIBRARY/PCRE
Rich Burridge <rich.burridge@oracle.com>
parents:
diff
changeset
|
25 |
+ /* else */ |
bfcdc34c39a9
22492633 problem in LIBRARY/PCRE
Rich Burridge <rich.burridge@oracle.com>
parents:
diff
changeset
|
26 |
{ |
bfcdc34c39a9
22492633 problem in LIBRARY/PCRE
Rich Burridge <rich.burridge@oracle.com>
parents:
diff
changeset
|
27 |
ng = cd->named_groups; |
bfcdc34c39a9
22492633 problem in LIBRARY/PCRE
Rich Burridge <rich.burridge@oracle.com>
parents:
diff
changeset
|
28 |
for (i = 0; i < cd->names_found; i++, ng++) |