Skip to content

Commit 5756f29

Browse files
authored
feat: update report link to pypi form (#158)
1 parent 6f2a5e1 commit 5756f29

File tree

2 files changed

+19
-2
lines changed

2 files changed

+19
-2
lines changed

inspector/main.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
from .deob import decompile, disassemble
1414
from .distribution import _get_dist
1515
from .legacy import parse
16-
from .utilities import mailto_report_link
16+
from .utilities import pypi_report_form
1717

1818

1919
def traces_sampler(sampling_context):
@@ -205,7 +205,7 @@ def file(project_name, version, first, second, rest, distname, filepath):
205205
except FileNotFoundError:
206206
return abort(404)
207207
file_extension = filepath.split(".")[-1]
208-
report_link = mailto_report_link(project_name, version, filepath, request.url)
208+
report_link = pypi_report_form(project_name, version, filepath, request.url)
209209

210210
details = [detail.html() for detail in basic_details(dist, filepath)]
211211
common_params = {

inspector/utilities.py

+17
Original file line numberDiff line numberDiff line change
@@ -22,3 +22,20 @@ def mailto_report_link(project_name, version, file_path, request_url):
2222
f"subject={urllib.parse.quote(subject)}"
2323
f"&body={urllib.parse.quote(message_body)}"
2424
)
25+
26+
27+
def pypi_report_form(project_name, version, file_path, request_url):
28+
"""
29+
Generate a URL to PyPI malware report for malicious code.
30+
"""
31+
summary = (
32+
f"Version: {version}\n"
33+
f"File Path: {file_path}\n"
34+
"Additional Information:\n\n"
35+
)
36+
37+
return (
38+
f"https://pypi.org/project/{project_name}/submit-malware-report/"
39+
f"?inspector_link={request_url}"
40+
f"&summary={urllib.parse.quote(summary)}"
41+
)

0 commit comments

Comments
 (0)