Securely and anonymously share files, host websites, and chat with friends using the Tor network
This report presents the forensic synthetic code analysis of onionshare/onionshare, a Python project with 7,027 GitHub stars. SynthScan v2.0 examined 51,670 lines of code across 255 source files, recording 416 pattern matches distributed across 13 syntactic categories. The overall adjusted score of 15.3 places this repository in the Moderate AI signal band.
The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).
This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.
Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.
This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.
The scanner identified 416 distinct pattern matches across 13 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | desktop/setup-freeze.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | desktop/onionshare/tor_settings_tab.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | desktop/onionshare/main_window.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | desktop/onionshare/tor_connection.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | desktop/onionshare/moat_dialog.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | desktop/onionshare/__init__.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | desktop/onionshare/gui_common.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | desktop/onionshare/settings_tab.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | desktop/onionshare/widgets.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | desktop/onionshare/threads.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | desktop/onionshare/tab_widget.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | desktop/onionshare/update_checker.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | desktop/onionshare/__main__.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | desktop/onionshare/strings.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | desktop/onionshare/tab/__init__.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | desktop/onionshare/tab/server_status.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | desktop/onionshare/tab/tab.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | desktop/onionshare/tab/mode/mode_settings_widget.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | desktop/onionshare/tab/mode/__init__.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | desktop/onionshare/tab/mode/file_selection.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | desktop/onionshare/tab/mode/history.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | desktop/onionshare/tab/mode/receive_mode/__init__.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | desktop/onionshare/tab/mode/share_mode/__init__.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | desktop/onionshare/tab/mode/share_mode/threads.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | desktop/onionshare/tab/mode/chat_mode/__init__.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | desktop/onionshare/tab/mode/website_mode/__init__.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | cli/setup.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | cli/onionshare_cli/onionshare.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | cli/onionshare_cli/__init__.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | cli/onionshare_cli/censorship.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | cli/onionshare_cli/mode_settings.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | cli/onionshare_cli/common.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | cli/onionshare_cli/meek.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | cli/onionshare_cli/settings.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | cli/onionshare_cli/onion.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | cli/onionshare_cli/web/web.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | cli/onionshare_cli/web/share_mode.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | cli/onionshare_cli/web/send_base_mode.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | cli/onionshare_cli/web/chat_mode.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | cli/onionshare_cli/web/__init__.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | cli/onionshare_cli/web/website_mode.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | cli/onionshare_cli/web/receive_mode.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | desktop/onionshare/connection_tab.py | 0 | onionshare | https://onionshare.org/ copyright (c) 2014-2021 micah lee, et al. <micah@micahflee.com> this program is fre | STRING |
| HIGH | desktop/onionshare/tab/mode/__init__.py | 0 | returns the type of mode as a string (e.g. "share", "receive", etc.) | STRING |
| HIGH | desktop/onionshare/tab/mode/receive_mode/__init__.py | 0 | returns the type of mode as a string (e.g. "share", "receive", etc.) | STRING |
| HIGH | desktop/onionshare/tab/mode/share_mode/__init__.py | 0 | returns the type of mode as a string (e.g. "share", "receive", etc.) | STRING |
| HIGH | desktop/onionshare/tab/mode/chat_mode/__init__.py | 0 | returns the type of mode as a string (e.g. "share", "receive", etc.) | STRING |
| HIGH | desktop/onionshare/tab/mode/website_mode/__init__.py | 0 | returns the type of mode as a string (e.g. "share", "receive", etc.) | STRING |
| HIGH | desktop/onionshare/tab/mode/__init__.py | 0 | return the string to put on the stop server button, if there's an auto-stop timer | STRING |
| HIGH | desktop/onionshare/tab/mode/receive_mode/__init__.py | 0 | return the string to put on the stop server button, if there's an auto-stop timer | STRING |
| HIGH | desktop/onionshare/tab/mode/share_mode/__init__.py | 0 | return the string to put on the stop server button, if there's an auto-stop timer | STRING |
| HIGH | desktop/onionshare/tab/mode/chat_mode/__init__.py | 0 | return the string to put on the stop server button, if there's an auto-stop timer | STRING |
| HIGH | desktop/onionshare/tab/mode/website_mode/__init__.py | 0 | return the string to put on the stop server button, if there's an auto-stop timer | STRING |
| HIGH | desktop/onionshare/tab/mode/__init__.py | 0 | the auto-stop timer expired, should we stop the server? returns a bool | STRING |
| HIGH | desktop/onionshare/tab/mode/receive_mode/__init__.py | 0 | the auto-stop timer expired, should we stop the server? returns a bool | STRING |
| HIGH | desktop/onionshare/tab/mode/share_mode/__init__.py | 0 | the auto-stop timer expired, should we stop the server? returns a bool | STRING |
| HIGH | desktop/onionshare/tab/mode/chat_mode/__init__.py | 0 | the auto-stop timer expired, should we stop the server? returns a bool | STRING |
| HIGH | desktop/onionshare/tab/mode/website_mode/__init__.py | 0 | the auto-stop timer expired, should we stop the server? returns a bool | STRING |
| HIGH | desktop/tests/test_gui_share.py | 0 | our custom 405 page should return for invalid methods | STRING |
| HIGH | desktop/tests/test_gui_receive.py | 0 | our custom 405 page should return for invalid methods | STRING |
| 2 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | desktop/onionshare/tor_settings_tab.py | 522 | def connection_type_bundled_toggled(self, checked): | CODE |
| LOW | desktop/onionshare/tor_settings_tab.py | 532 | def bridge_use_checkbox_state_changed(self): | CODE |
| LOW | desktop/onionshare/tor_settings_tab.py | 545 | def bridge_builtin_radio_toggled(self, checked): | CODE |
| LOW | desktop/onionshare/tor_settings_tab.py | 554 | def bridge_builtin_dropdown_changed(self, selection): | CODE |
| LOW | desktop/onionshare/tor_settings_tab.py | 567 | def bridge_moat_radio_toggled(self, checked): | CODE |
| LOW | desktop/onionshare/tor_settings_tab.py | 576 | def bridge_moat_button_clicked(self): | CODE |
| LOW⚡ | desktop/onionshare/tor_settings_tab.py | 594 | def bridge_custom_radio_toggled(self, checked): | CODE |
| LOW⚡ | desktop/onionshare/tor_settings_tab.py | 603 | def connection_type_automatic_toggled(self, checked): | CODE |
| LOW⚡ | desktop/onionshare/tor_settings_tab.py | 613 | def connection_type_control_port_toggled(self, checked): | CODE |
| LOW | desktop/onionshare/tor_settings_tab.py | 627 | def connection_type_socket_file_toggled(self, checked): | CODE |
| LOW | desktop/onionshare/tor_settings_tab.py | 641 | def authenticate_no_auth_toggled(self, checked): | CODE |
| LOW | desktop/onionshare/main_window.py | 217 | def tor_connection_open_tor_settings(self): | CODE |
| LOW | desktop/onionshare/tor_connection.py | 141 | def _canceled_connecting_to_tor(self): | CODE |
| LOW | desktop/onionshare/connection_tab.py | 161 | def first_launch_widget_connect_clicked(self): | CODE |
| LOW | desktop/onionshare/connection_tab.py | 194 | def _censorship_progress_update(self, progress, summary): | CODE |
| LOW | desktop/onionshare/connection_tab.py | 214 | def use_bridge_connect_clicked(self): | CODE |
| LOW | desktop/onionshare/connection_tab.py | 704 | def _detect_automatic_toggled(self): | CODE |
| LOW | desktop/onionshare/moat_dialog.py | 200 | def solution_lineedit_editing_finished(self): | CODE |
| LOW | desktop/onionshare/settings_tab.py | 205 | def close_forced_update_thread(): | CODE |
| LOW | desktop/onionshare/settings_tab.py | 325 | def _update_autoupdate_timestamp(self, autoupdate_timestamp): | CODE |
| LOW⚡ | desktop/onionshare/tab/server_status.py | 497 | def show_url_qr_code_button_clicked(self): | CODE |
| LOW⚡ | desktop/onionshare/tab/server_status.py | 505 | def show_client_auth_qr_code_button_clicked(self): | CODE |
| LOW⚡ | desktop/onionshare/tab/server_status.py | 515 | def client_auth_toggle_button_clicked(self): | CODE |
| LOW | desktop/onionshare/tab/tab.py | 402 | def update_server_status_indicator(self): | CODE |
| LOW | desktop/onionshare/tab/tab.py | 481 | def set_server_status_indicator_stopped(self, label_text): | CODE |
| LOW | desktop/onionshare/tab/tab.py | 492 | def set_server_status_indicator_working(self, label_text): | CODE |
| LOW | desktop/onionshare/tab/tab.py | 501 | def set_server_status_indicator_started(self, label_text): | CODE |
| LOW | desktop/onionshare/tab/mode/mode_settings_widget.py | 217 | def persistent_checkbox_clicked(self): | CODE |
| LOW⚡ | desktop/onionshare/tab/mode/mode_settings_widget.py | 232 | def persistent_autostart_on_launch_checkbox_clicked(self): | CODE |
| LOW⚡ | desktop/onionshare/tab/mode/mode_settings_widget.py | 238 | def autostart_timer_checkbox_clicked(self): | CODE |
| LOW⚡ | desktop/onionshare/tab/mode/mode_settings_widget.py | 248 | def autostop_timer_checkbox_clicked(self): | CODE |
| LOW | desktop/onionshare/tab/mode/__init__.py | 233 | def get_stop_server_autostop_timer_text(self): | CODE |
| LOW | desktop/onionshare/tab/mode/__init__.py | 239 | def autostop_timer_finished_should_stop_server(self): | CODE |
| LOW | desktop/onionshare/tab/mode/__init__.py | 391 | def start_server_error_custom(self): | CODE |
| LOW⚡ | desktop/onionshare/tab/mode/__init__.py | 497 | def handle_request_upload_includes_message(self, event): | CODE |
| LOW⚡ | desktop/onionshare/tab/mode/__init__.py | 503 | def handle_request_upload_file_renamed(self, event): | CODE |
| LOW⚡ | desktop/onionshare/tab/mode/__init__.py | 509 | def handle_request_upload_message(self, event): | CODE |
| LOW⚡ | desktop/onionshare/tab/mode/__init__.py | 515 | def handle_request_upload_set_dir(self, event): | CODE |
| LOW⚡ | desktop/onionshare/tab/mode/__init__.py | 521 | def handle_request_upload_finished(self, event): | CODE |
| LOW⚡ | desktop/onionshare/tab/mode/__init__.py | 527 | def handle_request_upload_canceled(self, event): | CODE |
| LOW⚡ | desktop/onionshare/tab/mode/__init__.py | 533 | def handle_request_individual_file_started(self, event): | CODE |
| LOW | desktop/onionshare/tab/mode/__init__.py | 545 | def handle_request_individual_file_progress(self, event): | CODE |
| LOW | desktop/onionshare/tab/mode/__init__.py | 555 | def handle_request_individual_file_canceled(self, event): | CODE |
| LOW⚡ | desktop/onionshare/tab/mode/receive_mode/__init__.py | 236 | def disable_text_checkbox_clicked(self): | CODE |
| LOW⚡ | desktop/onionshare/tab/mode/receive_mode/__init__.py | 246 | def disable_files_checkbox_clicked(self): | CODE |
| LOW⚡ | desktop/onionshare/tab/mode/receive_mode/__init__.py | 256 | def webhook_url_checkbox_clicked(self): | CODE |
| LOW⚡ | desktop/onionshare/tab/mode/receive_mode/__init__.py | 267 | def webhook_url_editing_finished(self): | CODE |
| LOW⚡ | desktop/onionshare/tab/mode/receive_mode/__init__.py | 276 | def get_stop_server_autostop_timer_text(self): | CODE |
| LOW⚡ | desktop/onionshare/tab/mode/receive_mode/__init__.py | 282 | def autostop_timer_finished_should_stop_server(self): | CODE |
| LOW | desktop/onionshare/tab/mode/receive_mode/__init__.py | 374 | def handle_request_upload_includes_message(self, event): | CODE |
| LOW | desktop/onionshare/tab/mode/receive_mode/__init__.py | 380 | def handle_request_upload_file_renamed(self, event): | CODE |
| LOW | desktop/onionshare/tab/mode/receive_mode/__init__.py | 393 | def handle_request_upload_set_dir(self, event): | CODE |
| LOW | desktop/onionshare/tab/mode/receive_mode/__init__.py | 406 | def handle_request_upload_finished(self, event): | CODE |
| LOW | desktop/onionshare/tab/mode/receive_mode/__init__.py | 416 | def handle_request_upload_canceled(self, event): | CODE |
| LOW⚡ | desktop/onionshare/tab/mode/share_mode/__init__.py | 184 | def autostop_sharing_checkbox_clicked(self): | CODE |
| LOW⚡ | desktop/onionshare/tab/mode/share_mode/__init__.py | 192 | def get_stop_server_autostop_timer_text(self): | CODE |
| LOW⚡ | desktop/onionshare/tab/mode/share_mode/__init__.py | 198 | def autostop_timer_finished_should_stop_server(self): | CODE |
| LOW | desktop/onionshare/tab/mode/share_mode/__init__.py | 262 | def start_server_error_custom(self): | CODE |
| LOW | desktop/onionshare/tab/mode/chat_mode/__init__.py | 116 | def get_stop_server_autostop_timer_text(self): | CODE |
| LOW | desktop/onionshare/tab/mode/chat_mode/__init__.py | 122 | def autostop_timer_finished_should_stop_server(self): | CODE |
| 107 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | flatpak/generate-golang-dependencies.py | 8 | # Define the repositories, tags, and subfolders | COMMENT |
| MEDIUM | flatpak/generate-golang-dependencies.py | 18 | # Create the flatpak folder and subfolders | COMMENT |
| MEDIUM | desktop/setup.py | 2 | # This file is used to build the Snapcraft and Flatpak packages | COMMENT |
| MEDIUM | desktop/onionshare/main_window.py | 153 | # Create the close warning dialog -- the dialog widget needs to be in the constructor | COMMENT |
| MEDIUM | desktop/onionshare/tab_widget.py | 56 | # Define the new tab button | COMMENT |
| MEDIUM | desktop/onionshare/tab/tab.py | 214 | # Create the timer | COMMENT |
| MEDIUM | desktop/onionshare/tab/tab.py | 228 | # Create the close warning dialog -- the dialog widget needs to be in the constructor | COMMENT |
| MEDIUM | desktop/onionshare/tab/mode/file_selection.py | 287 | # Create a new item | COMMENT |
| MEDIUM | desktop/onionshare/tab/mode/file_selection.py | 331 | # Create the item's widget and layouts | COMMENT |
| MEDIUM | desktop/onionshare/tab/mode/receive_mode/__init__.py | 42 | # Create the Web object | COMMENT |
| MEDIUM | desktop/onionshare/tab/mode/share_mode/__init__.py | 48 | # Create the Web object | COMMENT |
| MEDIUM | desktop/onionshare/tab/mode/chat_mode/__init__.py | 43 | # Create the Web object | COMMENT |
| MEDIUM | desktop/onionshare/tab/mode/website_mode/__init__.py | 48 | # Create the Web object | COMMENT |
| MEDIUM | cli/onionshare_cli/__init__.py | 319 | # Create the Web object | COMMENT |
| MEDIUM | cli/onionshare_cli/onion.py | 227 | # Create a torrc for this session | COMMENT |
| MEDIUM | cli/onionshare_cli/onion.py | 241 | # Create the torrc | COMMENT |
| MEDIUM | cli/onionshare_cli/web/web.py | 154 | # Define the web app routes | COMMENT |
| MEDIUM | cli/onionshare_cli/web/web.py | 157 | # Create the mode web object, which defines its own routes | COMMENT |
| MEDIUM | cli/onionshare_cli/web/send_base_mode.py | 47 | # Create a temporary dir to store gzip files in | COMMENT |
| MEDIUM | cli/onionshare_cli/web/receive_mode.py | 409 | # Create an history_id, attach it to the request | COMMENT |
| MEDIUM⚡ | cli/tests/test_cli_web_symlink.py | 24 | # Create a unique temp directory for this test setup | COMMENT |
| MEDIUM⚡ | cli/tests/test_cli_web_symlink.py | 27 | # Create the secret file outside the shared directory | COMMENT |
| MEDIUM⚡ | cli/tests/test_cli_web_symlink.py | 32 | # Create the shared directory | COMMENT |
| MEDIUM⚡ | cli/tests/test_cli_web_symlink.py | 36 | # Create a normal file in the shared directory | COMMENT |
| MEDIUM⚡ | cli/tests/test_cli_web_symlink.py | 41 | # Create a symlink to the secret inside the shared directory | COMMENT |
| MEDIUM⚡ | cli/tests/test_cli_web_symlink.py | 45 | # Create a nested directory with files and symlinks | COMMENT |
| MEDIUM | cli/tests/test_cli_web_symlink.py | 184 | # Create a directory with only a symlink (no normal files) | COMMENT |
| MEDIUM | cli/tests/test_cli_web_symlink.py | 242 | # Create a unique temp directory for this test | COMMENT |
| MEDIUM | cli/tests/test_cli_web_symlink.py | 255 | # Create a symlink to a directory | COMMENT |
| MEDIUM | cli/tests/test_cli_web_symlink.py | 259 | # Create a normal file | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | desktop/onionshare/tor_connection.py | 213 | except Exception as e: | CODE |
| LOW | desktop/onionshare/moat_dialog.py | 301 | except Exception as e: | CODE |
| LOW | desktop/onionshare/moat_dialog.py | 362 | except Exception as e: | CODE |
| LOW | desktop/onionshare/threads.py | 109 | except Exception as e: | CODE |
| LOW | desktop/onionshare/threads.py | 258 | except Exception: | CODE |
| LOW | desktop/onionshare/update_checker.py | 147 | except Exception as e: | CODE |
| LOW | desktop/onionshare/update_checker.py | 210 | except Exception as e: | CODE |
| LOW | desktop/onionshare/tab/server_status.py | 227 | except Exception: | CODE |
| LOW | desktop/onionshare/tab/mode/__init__.py | 438 | except Exception: | CODE |
| LOW | desktop/onionshare/tab/mode/history.py | 258 | except Exception: | CODE |
| LOW | cli/onionshare_cli/onionshare.py | 57 | except Exception: | CODE |
| LOW | cli/onionshare_cli/__init__.py | 342 | except Exception: | CODE |
| LOW | cli/onionshare_cli/mode_settings.py | 144 | except Exception: | CODE |
| LOW⚡ | cli/onionshare_cli/common.py | 407 | except Exception: | CODE |
| LOW⚡ | cli/onionshare_cli/common.py | 413 | except Exception: | CODE |
| LOW⚡ | cli/onionshare_cli/common.py | 423 | except Exception: | CODE |
| LOW | cli/onionshare_cli/meek.py | 167 | except Exception: | CODE |
| LOW | cli/onionshare_cli/settings.py | 179 | except Exception: | CODE |
| LOW | cli/onionshare_cli/settings.py | 185 | except Exception: | CODE |
| LOW | cli/onionshare_cli/settings.py | 204 | except Exception: | CODE |
| LOW | cli/onionshare_cli/onion.py | 249 | except Exception: | CODE |
| LOW | cli/onionshare_cli/onion.py | 269 | except Exception: | CODE |
| LOW | cli/onionshare_cli/onion.py | 280 | except Exception: | CODE |
| LOW | cli/onionshare_cli/onion.py | 434 | except Exception as e: | CODE |
| LOW | cli/onionshare_cli/onion.py | 500 | except Exception: | CODE |
| LOW | cli/onionshare_cli/onion.py | 510 | except Exception: | CODE |
| LOW | cli/onionshare_cli/onion.py | 524 | except Exception: | CODE |
| LOW | cli/onionshare_cli/onion.py | 546 | except Exception: | CODE |
| LOW | cli/onionshare_cli/onion.py | 553 | except Exception: | CODE |
| LOW | cli/onionshare_cli/onion.py | 576 | except Exception: | CODE |
| LOW | cli/onionshare_cli/onion.py | 655 | except Exception: | CODE |
| LOW | cli/onionshare_cli/onion.py | 799 | except Exception: | CODE |
| LOW | cli/onionshare_cli/onion.py | 820 | except Exception: | CODE |
| LOW | cli/onionshare_cli/onion.py | 825 | except Exception: | CODE |
| LOW | cli/onionshare_cli/onion.py | 868 | except Exception: | CODE |
| LOW | cli/onionshare_cli/onion.py | 888 | except Exception: | CODE |
| LOW | cli/onionshare_cli/onion.py | 901 | except Exception: | CODE |
| LOW | cli/onionshare_cli/web/web.py | 55 | except Exception: | CODE |
| LOW | cli/onionshare_cli/web/web.py | 364 | except Exception as e: | CODE |
| LOW | cli/onionshare_cli/web/share_mode.py | 376 | except Exception: | CODE |
| LOW | cli/onionshare_cli/web/share_mode.py | 400 | except Exception: | CODE |
| LOW | cli/onionshare_cli/web/send_base_mode.py | 344 | except Exception: | CODE |
| LOW | cli/onionshare_cli/web/chat_mode.py | 86 | except Exception as e: | CODE |
| MEDIUM | cli/onionshare_cli/web/chat_mode.py | 78 | def validate_username(self, username): | CODE |
| LOW | cli/onionshare_cli/web/receive_mode.py | 263 | except Exception as e: | CODE |
| LOW⚡ | cli/onionshare_cli/web/receive_mode.py | 303 | except Exception: | CODE |
| LOW | cli/onionshare_cli/web/receive_mode.py | 351 | except Exception: | CODE |
| LOW | cli/onionshare_cli/web/receive_mode.py | 365 | except Exception: | CODE |
| LOW | cli/onionshare_cli/web/receive_mode.py | 416 | except Exception: | CODE |
| LOW | cli/onionshare_cli/web/receive_mode.py | 644 | except Exception: | CODE |
| LOW | cli/tests/conftest.py | 113 | except Exception: | CODE |
| LOW | cli/tests/test_cli_web.py | 407 | except Exception: | CODE |
| LOW | cli/tests/test_cli_web.py | 429 | except Exception: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | flatpak/poetry-to-requirements.py | 6 | CODE | |
| LOW | desktop/onionshare/tor_settings_tab.py | 413 | CODE | |
| LOW | desktop/onionshare/tor_settings_tab.py | 677 | CODE | |
| LOW | desktop/onionshare/moat_dialog.py | 234 | CODE | |
| LOW | desktop/onionshare/__init__.py | 140 | CODE | |
| LOW | desktop/onionshare/gui_common.py | 558 | CODE | |
| LOW | desktop/onionshare/threads.py | 201 | CODE | |
| LOW | desktop/onionshare/tab_widget.py | 416 | CODE | |
| LOW | desktop/onionshare/tab/server_status.py | 230 | CODE | |
| LOW | desktop/onionshare/tab/server_status.py | 323 | CODE | |
| LOW | desktop/onionshare/tab/server_status.py | 425 | CODE | |
| LOW | desktop/onionshare/tab/tab.py | 241 | CODE | |
| LOW | desktop/onionshare/tab/tab.py | 402 | CODE | |
| LOW | desktop/onionshare/tab/tab.py | 514 | CODE | |
| LOW | desktop/onionshare/tab/tab.py | 627 | CODE | |
| LOW | desktop/onionshare/tab/tab.py | 640 | CODE | |
| LOW | desktop/onionshare/tab/mode/mode_settings_widget.py | 190 | CODE | |
| LOW | desktop/onionshare/tab/mode/__init__.py | 167 | CODE | |
| LOW | desktop/onionshare/tab/mode/history.py | 385 | CODE | |
| LOW | desktop/tests/test_gui_receive.py | 70 | CODE | |
| LOW | desktop/tests/test_gui_receive.py | 277 | CODE | |
| LOW | desktop/scripts/get-tor.py | 267 | CODE | |
| LOW | desktop/scripts/macos-check-arch.py | 5 | CODE | |
| LOW | desktop/scripts/build-windows.py | 61 | CODE | |
| LOW | desktop/scripts/common.py | 5 | CODE | |
| LOW | cli/onionshare_cli/__init__.py | 37 | CODE | |
| LOW | cli/onionshare_cli/censorship.py | 228 | CODE | |
| LOW | cli/onionshare_cli/mode_settings.py | 85 | CODE | |
| LOW | cli/onionshare_cli/common.py | 321 | CODE | |
| LOW | cli/onionshare_cli/meek.py | 143 | CODE | |
| LOW | cli/onionshare_cli/settings.py | 199 | CODE | |
| LOW | cli/onionshare_cli/onion.py | 193 | CODE | |
| LOW | cli/onionshare_cli/onion.py | 804 | CODE | |
| LOW | cli/onionshare_cli/web/web.py | 85 | CODE | |
| LOW | cli/onionshare_cli/web/web.py | 186 | CODE | |
| LOW | cli/onionshare_cli/web/share_mode.py | 51 | CODE | |
| LOW | cli/onionshare_cli/web/share_mode.py | 303 | CODE | |
| LOW | cli/onionshare_cli/web/share_mode.py | 431 | CODE | |
| LOW | cli/onionshare_cli/web/send_base_mode.py | 73 | CODE | |
| LOW | cli/onionshare_cli/web/send_base_mode.py | 251 | CODE | |
| LOW | cli/onionshare_cli/web/send_base_mode.py | 292 | CODE | |
| LOW | cli/onionshare_cli/web/website_mode.py | 71 | CODE | |
| LOW | cli/onionshare_cli/web/receive_mode.py | 377 | CODE | |
| LOW | cli/onionshare_cli/web/receive_mode.py | 465 | CODE | |
| LOW | cli/onionshare_cli/web/receive_mode.py | 579 | CODE | |
| LOW | cli/tests/test_cli_web.py | 414 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | desktop/tests/gui_base_test.py | 110 | tab.share_mode.server_status.file_selection.file_list.add_file(filename) | CODE |
| CRITICAL | desktop/tests/gui_base_test.py | 141 | tab.website_mode.server_status.file_selection.file_list.add_file(filename) | CODE |
| CRITICAL | docs/gettext/_static/jquery.js | 2 | !function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):f | CODE |
| CRITICAL | …share_cli/resources/static/js/jquery-3.7.1.slim.min.js | 2 | !function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):f | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | desktop/setup-freeze.py | 25 | CODE | |
| LOW | desktop/onionshare/main_window.py | 21 | CODE | |
| LOW | desktop/onionshare/__init__.py | 21 | CODE | |
| LOW | desktop/onionshare/__init__.py | 31 | CODE | |
| LOW | desktop/onionshare/settings_parent_tab.py | 1 | CODE | |
| LOW | desktop/onionshare/settings_parent_tab.py | 3 | CODE | |
| LOW | desktop/onionshare/settings_parent_tab.py | 6 | CODE | |
| LOW | desktop/onionshare/settings_parent_tab.py | 7 | CODE | |
| LOW | desktop/onionshare/settings_parent_tab.py | 8 | CODE | |
| LOW | desktop/onionshare/settings_parent_tab.py | 11 | CODE | |
| LOW | desktop/onionshare/tab/__init__.py | 21 | CODE | |
| LOW | desktop/onionshare/tab/mode/receive_mode/__init__.py | 29 | CODE | |
| LOW | desktop/tests/gui_base_test.py | 12 | CODE | |
| LOW | desktop/tests/gui_base_test.py | 14 | CODE | |
| LOW | desktop/scripts/get-tor.py | 2 | CODE | |
| LOW | desktop/scripts/get-tor.py | 8 | CODE | |
| LOW | desktop/scripts/build-windows.py | 2 | CODE | |
| LOW | desktop/scripts/build-windows.py | 3 | CODE | |
| LOW | desktop/scripts/build-macos.py | 8 | CODE | |
| LOW | desktop/scripts/build-macos.py | 9 | CODE | |
| LOW | cli/onionshare_cli/onionshare.py | 21 | CODE | |
| LOW | cli/onionshare_cli/common.py | 26 | CODE | |
| LOW | cli/onionshare_cli/web/web.py | 20 | CODE | |
| LOW | cli/onionshare_cli/web/web.py | 25 | CODE | |
| LOW | cli/onionshare_cli/web/web.py | 26 | CODE | |
| LOW | cli/onionshare_cli/web/web.py | 30 | CODE | |
| LOW | cli/onionshare_cli/web/web.py | 30 | CODE | |
| LOW | cli/onionshare_cli/web/__init__.py | 21 | CODE | |
| LOW | cli/tests/test_cli_web_symlink.py | 2 | CODE | |
| LOW | cli/tests/test_cli_web_symlink.py | 7 | CODE | |
| LOW | cli/tests/test_cli_web_symlink.py | 9 | CODE | |
| LOW | cli/tests/test_cli_web.py | 8 | CODE | |
| LOW | cli/tests/test_cli.py | 1 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | desktop/onionshare/tor_settings_tab.py | 418 | # Check if autoconnect was enabled | COMMENT |
| LOW | desktop/onionshare/main_window.py | 273 | # Check if color mode switched while onionshare was open, if so, ask user to restart | COMMENT |
| LOW | desktop/onionshare/tab_widget.py | 329 | # Check if the last tab is closed, or there is only one tab | COMMENT |
| LOW | desktop/onionshare/tab/mode/history.py | 744 | # Add it to the list | COMMENT |
| LOW | cli/onionshare_cli/web/share_mode.py | 491 | # Check if there's only 1 file and no folders | COMMENT |
| LOW | cli/onionshare_cli/web/receive_mode.py | 140 | # Check if files were submitted when disabled | COMMENT |
| LOW⚡ | cli/onionshare_cli/web/receive_mode.py | 299 | # Open the file | COMMENT |
| LOW | cli/onionshare_cli/web/receive_mode.py | 553 | # Check if file uploads are disabled - reject file streams early | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | flatpak/snowflake/modules.txt | 41 | github.com/aws/aws-sdk-go-v2/credentials/ssocreds | COMMENT |
| LOW | flatpak/snowflake/modules.txt | 121 | ## explicit | COMMENT |
| LOW | flatpak/snowflake/modules.txt | 321 | # github.com/stretchr/testify v1.11.1 | COMMENT |
| LOW | flatpak/snowflake/modules.txt | 341 | ## explicit; go 1.20 | COMMENT |
| LOW | cli/onionshare_cli/web/receive_mode.py | 21 | import os | COMMENT |
| LOW | .github/workflows/codeql-analysis.yml | 1 | # For most projects, this workflow file will not need changing; you simply need | COMMENT |
| LOW | .github/workflows/codeql-analysis.yml | 41 | # Initializes the CodeQL tools for scanning. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | cli/onionshare_cli/__init__.py | 284 | # The assumption is that if we didn't just create the mode settings, | COMMENT |
| LOW | cli/onionshare_cli/onion.py | 780 | # it would need to be in the format below. However, let's just set the private key | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | cli/onionshare_cli/web/receive_mode.py | 305 | # OnionShare is running, but if it does make sure to throw an error | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | desktop/tests/gui_base_test.py | 65 | "<html><body><p>Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque la | CODE |
| LOW | desktop/tests/gui_base_test.py | 65 | "<html><body><p>Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque la | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | desktop/onionshare/tab/mode/__init__.py | 165 | CODE |