Skip to content

Commit fdddcb1

Browse files
committed
Added firebase as MaD
1 parent 6208017 commit fdddcb1

File tree

2 files changed

+34
-16
lines changed

2 files changed

+34
-16
lines changed
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
extensions:
2+
- addsTo:
3+
pack: codeql/javascript-all
4+
extensible: typeModel
5+
data:
6+
- ["FirebaseDBRef", "firebase/app", "Member[database].ReturnValue.Member[ref,refFromURL].ReturnValue"]
7+
- ["FirebaseDBRef", "FirebaseDBRef", "Member[once,on].Argument[1].Parameter[0]"]
8+
- ["FirebaseDBRef", "FirebaseDBRef", "Member[once,on].ReturnValue.Member[then].Argument[0].Parameter[0]"]
9+
- ["FirebaseDBRef", "FirebaseDBRef", "Member[ref,root,parent,before,after]"]
10+
- ["FirebaseDBRef", "FirebaseDBRef", "Member[child].ReturnValue"]
11+
12+
- ["FirebaseDBRef", "firebase-functions", "Member[database].Member[ref,refFromURL].ReturnValue"]
13+
- ["FirebaseDBRef", "FirebaseDBRef", "Member[onCreate,onUpdate].Argument[0].Parameter[0]"]
14+
- addsTo:
15+
pack: codeql/javascript-all
16+
extensible: sourceModel
17+
data:
18+
- ["FirebaseDBRef", "Member[val,exportVal].ReturnValue", 'remote']
19+
- ["FirebaseDBRef", "Member[forEach].Argument[0].Parameter[0].Member[val,exportVal].ReturnValue", 'remote']
20+

javascript/ql/lib/semmle/javascript/frameworks/Firebase.qll

Lines changed: 14 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -282,20 +282,18 @@ module Firebase {
282282
* `firebase.database().ref().on('value', x => {...})`.
283283
*/
284284
DataFlow::SourceNode snapshot() { result = snapshot(DataFlow::TypeTracker::end()) }
285-
286-
/**
287-
* A reference to a value obtained from a Firebase database.
288-
*/
289-
class FirebaseVal extends RemoteFlowSource {
290-
FirebaseVal() {
291-
exists(string name | this = snapshot().getAMethodCall(name) |
292-
name = "val" or
293-
name = "exportVal"
294-
)
295-
or
296-
this = Database::transactionCallback().(DataFlow::FunctionNode).getParameter(0)
297-
}
298-
299-
override string getSourceType() { result = "Firebase database" }
300-
}
285+
// /**
286+
// * A reference to a value obtained from a Firebase database.
287+
// */
288+
// deprecated class FirebaseVal extends RemoteFlowSource {
289+
// FirebaseVal() {
290+
// exists(string name | this = snapshot().getAMethodCall(name) |
291+
// name = "val" or
292+
// name = "exportVal"
293+
// )
294+
// or
295+
// this = Database::transactionCallback().(DataFlow::FunctionNode).getParameter(0)
296+
// }
297+
// override string getSourceType() { result = "Firebase database" }
298+
// }
301299
}

0 commit comments

Comments
 (0)