@@ -22,8 +22,9 @@ private class UrlSummaries extends SummaryModelCsv {
2222 row =
2323 [
2424 ";URL;true;init(string:);(String);;Argument[0];ReturnValue;taint" ,
25+ ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[0,1];ReturnValue;taint" ,
26+ // The base string taints all the URL fields (except baseURL)
2527 ";URL;true;init(string:);(String);;Argument[0];ReturnValue.Field[absoluteURL];taint" ,
26- ";URL;true;init(string:);(String);;Argument[0];ReturnValue.Field[baseURL];taint" ,
2728 ";URL;true;init(string:);(String);;Argument[0];ReturnValue.Field[fragment];taint" ,
2829 ";URL;true;init(string:);(String);;Argument[0];ReturnValue.Field[host];taint" ,
2930 ";URL;true;init(string:);(String);;Argument[0];ReturnValue.Field[lastPathComponent];taint" ,
@@ -39,24 +40,35 @@ private class UrlSummaries extends SummaryModelCsv {
3940 ";URL;true;init(string:);(String);;Argument[0];ReturnValue.Field[standardizedFileURL];taint" ,
4041 ";URL;true;init(string:);(String);;Argument[0];ReturnValue.Field[user];taint" ,
4142 ";URL;true;init(string:);(String);;Argument[0];ReturnValue.Field[password];taint" ,
42- ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[0,1];ReturnValue;taint" ,
43- ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[0,1];ReturnValue.Field[absoluteURL];taint" ,
44- ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[0,1];ReturnValue.Field[baseURL];taint" ,
45- ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[0,1];ReturnValue.Field[fragment];taint" ,
46- ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[0,1];ReturnValue.Field[host];taint" ,
47- ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[0,1];ReturnValue.Field[lastPathComponent];taint" ,
48- ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[0,1];ReturnValue.Field[path];taint" ,
49- ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[0,1];ReturnValue.Field[pathComponents];taint" ,
50- ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[0,1];ReturnValue.Field[pathExtension];taint" ,
51- ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[0,1];ReturnValue.Field[port];taint" ,
52- ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[0,1];ReturnValue.Field[query];taint" ,
53- ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[0,1];ReturnValue.Field[relativePath];taint" ,
54- ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[0,1];ReturnValue.Field[relativeString];taint" ,
55- ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[0,1];ReturnValue.Field[scheme];taint" ,
56- ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[0,1];ReturnValue.Field[standardized];taint" ,
57- ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[0,1];ReturnValue.Field[standardizedFileURL];taint" ,
58- ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[0,1];ReturnValue.Field[user];taint" ,
59- ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[0,1];ReturnValue.Field[password];taint" ,
43+ // The base string taints all the URL fields (except baseURL) if it's an absolute URL when relativeTo is used
44+ ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[0];ReturnValue.Field[absoluteURL];taint" ,
45+ ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[0];ReturnValue.Field[fragment];taint" ,
46+ ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[0];ReturnValue.Field[host];taint" ,
47+ ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[0];ReturnValue.Field[lastPathComponent];taint" ,
48+ ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[0];ReturnValue.Field[path];taint" ,
49+ ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[0];ReturnValue.Field[pathComponents];taint" ,
50+ ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[0];ReturnValue.Field[pathExtension];taint" ,
51+ ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[0];ReturnValue.Field[port];taint" ,
52+ ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[0];ReturnValue.Field[query];taint" ,
53+ ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[0];ReturnValue.Field[relativePath];taint" ,
54+ ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[0];ReturnValue.Field[relativeString];taint" ,
55+ ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[0];ReturnValue.Field[scheme];taint" ,
56+ // Not mapping precise field taint to standardized/standardizedFileURL even if the return values are URLs too
57+ ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[0];ReturnValue.Field[standardized];taint" ,
58+ ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[0];ReturnValue.Field[standardizedFileURL];taint" ,
59+ ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[0];ReturnValue.Field[user];taint" ,
60+ ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[0];ReturnValue.Field[password];taint" ,
61+ // The relativeTo URL taints fields not related to the path, query or fragment if the base string is a relative path
62+ ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[1];ReturnValue.Field[absoluteURL];taint" ,
63+ ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[1];ReturnValue.Field[baseURL];taint" ,
64+ ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[1];ReturnValue.Field[host];taint" ,
65+ ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[1];ReturnValue.Field[port];taint" ,
66+ ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[1];ReturnValue.Field[scheme];taint" ,
67+ // Not mapping precise field taint to standardized/standardizedFileURL even if the return values are URLs too
68+ ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[1];ReturnValue.Field[standardized];taint" ,
69+ ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[1];ReturnValue.Field[standardizedFileURL];taint" ,
70+ ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[1];ReturnValue.Field[user];taint" ,
71+ ";URL;true;init(string:relativeTo:);(String,URL?);;Argument[1];ReturnValue.Field[password];taint" ,
6072 ]
6173 }
6274}
0 commit comments