Skip to content

Commit e7cb762

Browse files
committed
Add SmtpLib to Frameworks.qll and minimal fixes
1 parent dbdf102 commit e7cb762

4 files changed

Lines changed: 7 additions & 6 deletions

File tree

python/ql/src/experimental/semmle/python/Frameworks.qll

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ private import experimental.semmle.python.frameworks.Werkzeug
99
private import experimental.semmle.python.frameworks.LDAP
1010
private import experimental.semmle.python.frameworks.NoSQL
1111
private import experimental.semmle.python.frameworks.Log
12-
private import experimental.semmle.python.libraries.FlaskMail
1312
private import experimental.semmle.python.frameworks.Django
1413
private import experimental.semmle.python.frameworks.Sendgrid
14+
private import experimental.semmle.python.libraries.FlaskMail
15+
private import experimental.semmle.python.libraries.SmtpLib

python/ql/src/experimental/semmle/python/frameworks/Django.qll

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ private import semmle.python.frameworks.Django
88
private import semmle.python.dataflow.new.DataFlow
99
private import experimental.semmle.python.Concepts
1010
private import semmle.python.ApiGraphs
11-
import semmle.python.dataflow.new.RemoteFlowSources
11+
private import semmle.python.dataflow.new.RemoteFlowSources
1212

1313
private module PrivateDjango {
1414
private module django {
@@ -112,7 +112,7 @@ private module PrivateDjango {
112112
* * `getFrom()`'s result would be `"from@example.com"`.
113113
* * `getSubject()`'s result would be `"Subject"`.
114114
*/
115-
private class DjangoSendMail extends DataFlow::CallCfgNode, EmailSender {
115+
private class DjangoSendMail extends DataFlow::CallCfgNode, EmailSender::Range {
116116
DjangoSendMail() { this = djangoMail().getMember("send_mail").getACall() }
117117

118118
override DataFlow::Node getPlainTextBody() {
@@ -152,7 +152,7 @@ private module PrivateDjango {
152152
* * `getFrom()`'s result would be `none`.
153153
* * `getSubject()`'s result would be `"Subject"`.
154154
*/
155-
private class DjangoMailInternal extends DataFlow::CallCfgNode, EmailSender {
155+
private class DjangoMailInternal extends DataFlow::CallCfgNode, EmailSender::Range {
156156
DjangoMailInternal() {
157157
this = djangoMail().getMember(["mail_admins", "mail_managers"]).getACall()
158158
}

python/ql/src/experimental/semmle/python/frameworks/Sendgrid.qll

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ private module Sendgrid {
8383
* * `getFrom()`'s result would be `"from@example.com"`.
8484
* * `getSubject()`'s result would be `"Sending with SendGrid is Fun"`.
8585
*/
86-
private class SendGridMail extends DataFlow::CallCfgNode, EmailSender {
86+
private class SendGridMail extends DataFlow::CallCfgNode, EmailSender::Range {
8787
SendGridMail() { this.getFunction() = sendgridApiSendCall() }
8888

8989
override DataFlow::Node getPlainTextBody() {

python/ql/src/experimental/semmle/python/libraries/FlaskMail.qll

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ private module FlaskMail {
6767
* * `getFrom()`'s result would be `"from@example.com"`.
6868
* * `getSubject()`'s result would be `"Subject"`.
6969
*/
70-
private class FlaskMail extends DataFlow::CallCfgNode, EmailSender {
70+
private class FlaskMail extends DataFlow::CallCfgNode, EmailSender::Range {
7171
FlaskMail() {
7272
this =
7373
[flaskMailInstance(), flaskMailInstance().getMember("connect").getReturn()]

0 commit comments

Comments
 (0)