Skip to content

Commit a894fc6

Browse files
committed
Swift: Fix mistakes in String.qll models.
1 parent f64cb29 commit a894fc6

File tree

4 files changed

+47
-7
lines changed

4 files changed

+47
-7
lines changed

swift/ql/lib/codeql/swift/frameworks/StandardLibrary/String.qll

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -58,8 +58,8 @@ private class StringSummaries extends SummaryModelCsv {
5858
";StringProtocol;true;propertyListFromStringsFileFormat();;;Argument[-1];ReturnValue;taint",
5959
";StringProtocol;true;replacingCharacters(in:with:);;;Argument[-1];ReturnValue;taint",
6060
";StringProtocol;true;replacingCharacters(in:with:);;;Argument[1];ReturnValue;taint",
61-
";StringProtocol;true;replacingOccurrences(of:with:options:range);;;Argument[-1];ReturnValue;taint",
62-
";StringProtocol;true;replacingOccurrences(of:with:options:range);;;Argument[1];ReturnValue;taint",
61+
";StringProtocol;true;replacingOccurrences(of:with:options:range:);;;Argument[-1];ReturnValue;taint",
62+
";StringProtocol;true;replacingOccurrences(of:with:options:range:);;;Argument[1];ReturnValue;taint",
6363
";StringProtocol;true;replacingPercentEscapes(using:);;;Argument[-1];ReturnValue;taint",
6464
";StringProtocol;true;substring(from:);;;Argument[-1];ReturnValue;taint",
6565
";StringProtocol;true;substring(with:);;;Argument[-1];ReturnValue;taint",
@@ -79,7 +79,7 @@ private class StringSummaries extends SummaryModelCsv {
7979
";String;true;init(format:locale:arguments:);;;Argument[0];ReturnValue;taint",
8080
";String;true;init(_:radix:uppercase:);;;Argument[0];ReturnValue;taint",
8181
";String;true;init(bytes:encoding:);;;Argument[0];ReturnValue;taint",
82-
";String;true;init(bytesNoCopy:length:encoding:freeWhenDone);;;Argument[0];ReturnValue;taint",
82+
";String;true;init(bytesNoCopy:length:encoding:freeWhenDone:);;;Argument[0];ReturnValue;taint",
8383
";String;true;init(describing:);;;Argument[0];ReturnValue;taint",
8484
";String;true;init(contentsOf:);;;Argument[0];ReturnValue;taint",
8585
";String;true;init(contentsOf:encoding:);;;Argument[0];ReturnValue;taint",
@@ -101,7 +101,7 @@ private class StringSummaries extends SummaryModelCsv {
101101
";String;true;write(_:);;;Argument[0];Argument[-1];taint",
102102
";String;true;write(to:);;;Argument[-1];Argument[0];taint",
103103
";String;true;insert(contentsOf:at:);;;Argument[0];Argument[-1];taint",
104-
";String;true;replaceSubrange(_:with::);;;Argument[1];Argument[-1];taint",
104+
";String;true;replaceSubrange(_:with:);;;Argument[1];Argument[-1];taint",
105105
";String;true;max();;;Argument[-1];ReturnValue;taint",
106106
";String;true;max(by:);;;Argument[-1];ReturnValue;taint",
107107
";String;true;min();;;Argument[-1];ReturnValue;taint",

swift/ql/test/library-tests/dataflow/taint/LocalTaint.expected

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1369,7 +1369,13 @@
13691369
| string.swift:301:13:301:13 | tainted | string.swift:304:13:304:13 | tainted |
13701370
| string.swift:301:13:301:21 | .removingPercentEncoding | string.swift:301:13:301:44 | ...! |
13711371
| string.swift:303:13:303:13 | [post] clean | string.swift:305:13:305:13 | clean |
1372+
| string.swift:303:13:303:13 | clean | string.swift:303:13:303:58 | call to replacingOccurrences(of:with:options:range:) |
13721373
| string.swift:303:13:303:13 | clean | string.swift:305:13:305:13 | clean |
1374+
| string.swift:303:55:303:55 | b | string.swift:303:13:303:58 | call to replacingOccurrences(of:with:options:range:) |
1375+
| string.swift:304:13:304:13 | tainted | string.swift:304:13:304:60 | call to replacingOccurrences(of:with:options:range:) |
1376+
| string.swift:304:57:304:57 | b | string.swift:304:13:304:60 | call to replacingOccurrences(of:with:options:range:) |
1377+
| string.swift:305:13:305:13 | clean | string.swift:305:13:305:64 | call to replacingOccurrences(of:with:options:range:) |
1378+
| string.swift:305:55:305:63 | call to source2() | string.swift:305:13:305:64 | call to replacingOccurrences(of:with:options:range:) |
13731379
| string.swift:309:7:309:7 | SSA def(str1) | string.swift:310:13:310:13 | str1 |
13741380
| string.swift:309:14:309:22 | call to source2() | string.swift:309:7:309:7 | SSA def(str1) |
13751381
| string.swift:310:13:310:13 | [post] str1 | string.swift:311:13:311:13 | str1 |
@@ -1446,6 +1452,7 @@
14461452
| string.swift:347:3:347:3 | [post] &... | string.swift:348:13:348:13 | str7 |
14471453
| string.swift:347:3:347:3 | str7 | string.swift:347:3:347:3 | &... |
14481454
| string.swift:347:25:347:25 | nil | string.swift:347:24:347:53 | ...! |
1455+
| string.swift:347:62:347:70 | call to source2() | string.swift:347:3:347:3 | [post] &... |
14491456
| string.swift:351:38:351:38 | | string.swift:351:33:351:40 | call to Data.init(_:) |
14501457
| string.swift:354:7:354:7 | SSA def(stringClean) | string.swift:357:12:357:12 | stringClean |
14511458
| string.swift:354:21:354:74 | call to String.init(data:encoding:) | string.swift:354:7:354:7 | SSA def(stringClean) |
@@ -1613,6 +1620,7 @@
16131620
| string.swift:492:35:492:35 | [post] buffer | string.swift:492:64:492:64 | buffer |
16141621
| string.swift:492:35:492:35 | buffer | string.swift:492:64:492:64 | buffer |
16151622
| string.swift:492:35:492:42 | .baseAddress | string.swift:492:35:492:53 | ...! |
1623+
| string.swift:492:35:492:53 | ...! | string.swift:492:15:492:129 | call to String.init(bytesNoCopy:length:encoding:freeWhenDone:) |
16161624
| string.swift:494:8:494:8 | taintedUInt8Values | string.swift:494:8:494:8 | &... |
16171625
| string.swift:494:8:499:4 | call to withUnsafeMutableBytes(_:) | string.swift:494:3:499:4 | try! ... |
16181626
| string.swift:495:6:495:14 | SSA def(buffer) | string.swift:496:15:496:15 | buffer |
@@ -1626,6 +1634,7 @@
16261634
| string.swift:498:35:498:35 | [post] buffer | string.swift:498:64:498:64 | buffer |
16271635
| string.swift:498:35:498:35 | buffer | string.swift:498:64:498:64 | buffer |
16281636
| string.swift:498:35:498:42 | .baseAddress | string.swift:498:35:498:53 | ...! |
1637+
| string.swift:498:35:498:53 | ...! | string.swift:498:15:498:129 | call to String.init(bytesNoCopy:length:encoding:freeWhenDone:) |
16291638
| string.swift:505:7:505:31 | SSA def(cleanCCharValues) | string.swift:508:3:508:3 | cleanCCharValues |
16301639
| string.swift:505:35:505:55 | [...] | string.swift:505:7:505:31 | SSA def(cleanCCharValues) |
16311640
| string.swift:506:7:506:33 | SSA def(taintedCCharValues) | string.swift:516:3:516:3 | taintedCCharValues |

0 commit comments

Comments
 (0)