Commit Graph

292 Commits

Author SHA1 Message Date
Miguel Jacq
f5e4d70731
Remove unnecessary censorship class invocation, which breaks CLI mode right now.
Fix Website and Chat modes with auto-stop timer in CLI mode.

Add 'poetry run onionshare-cli' tests to CircleCI to catch CLI runtime bugs.
2021-11-12 11:43:09 +11:00
Miguel Jacq
dbae142a87
Resolve conflicts in locale 2021-11-12 10:56:15 +11:00
Miguel Jacq
b727a9651f
Initial work on supporting the option to automatically attempt to fetch bridges based on the user's location if Tor fails to connect (censorship circumvention) 2021-11-11 17:33:19 +11:00
Miguel Jacq
096178a9e6
Use microseconds for Receive Mode dir/file names 2021-11-09 12:30:48 +11:00
Miguel Jacq
627c185fcb
Support sending a custom Content-Security-Policy header in Website mode 2021-11-08 16:31:05 +11:00
Micah Lee
9430439b5f
Fix meek-client in Windows 2021-11-07 12:12:12 -08:00
Saptak S
e4f9f5f212
Initial structuring of the enable quickstart screen 2021-10-28 14:14:25 +05:30
Micah Lee
9515fe6aaf
Remove all references to old settings 2021-10-26 21:07:38 -07:00
Micah Lee
2b3b6d7635
Update bridge related settings in Settings, and use those new settings in Onion 2021-10-26 21:06:05 -07:00
Micah Lee
54f4f2a53f
Oops, fix meek-client path 2021-10-24 20:26:36 -07:00
Micah Lee
44f4053603
Make meek debug log show host:port on one line 2021-10-24 20:23:55 -07:00
Micah Lee
e33fc49815
Merge branch 'censorship' into 1442_settings_tabs 2021-10-24 20:23:38 -07:00
Micah Lee
e6c7cc989f
Only show bridge error if connection type is bundled 2021-10-24 20:03:19 -07:00
Miguel Jacq
54bfca5f4b
Move debug log call in meek.start() 2021-10-25 11:56:33 +11:00
Miguel Jacq
8543d215dc
Fix-ups for detecting if the meek binary doesn't exist. Pass the GUI's get_tor_paths down to the CLI when instantiating Meek object 2021-10-25 11:45:50 +11:00
Micah Lee
c3eeaefb9f
In CLI get_tor_path, stop trying to look in resources first 2021-10-24 17:35:24 -07:00
Miguel Jacq
6f0674afd8
React to Meek client binary not found 2021-10-25 11:12:38 +11:00
Miguel Jacq
3a715346af
Add cleanup method for the Meek class to kill any meek-client subprocesses once done. Hide stderr from the CLI printed output 2021-10-25 10:44:38 +11:00
Miguel Jacq
c81862130b
Fix comment about meek-client.exe subprocess 2021-10-25 10:28:06 +11:00
Benjamin Erhart
f3f25166d4 Fixed send.js table sorting. Looks like it stopped working a long time ago. 2021-10-22 12:21:22 +02:00
Miguel Jacq
242312ba82
Fix conflicts from snowflake merge, and fix detection of lack of meek in Moat BridgeDB request 2021-10-20 15:52:29 +11:00
Micah Lee
3aa7902695
Don't print Bridge lines in torrc for blank lines 2021-10-19 08:50:33 -07:00
Miguel Jacq
5b4d77c363
Refactor to CensorshipCircumvention and Meek classes. Use Meek domain fronting when requesting bridges in frontend 2021-10-19 11:36:03 +11:00
Miguel Jacq
bcf697574e
merge 1442_snowflake branch and fix conflicts 2021-10-19 09:49:46 +11:00
Miguel Jacq
0989f2b133
Move Censorship stuff into its own class. Early attempt at subprocessing out to meek (unfinished) 2021-10-18 17:17:47 +11:00
Micah Lee
a89412e79d
Make it so when selecting moat tor actually uses those bridges, and improve tor settings dialog 2021-10-17 15:47:11 -07:00
Micah Lee
01b51e94bf
Save/load moat bridges to/from settings 2021-10-17 14:26:56 -07:00
Micah Lee
6bf839f826
In some distros, LD_LIBRARY_PATH must be explicitly set for tor to work 2021-10-17 12:16:03 -07:00
Micah Lee
2ffd15ae82
Move ClientTransportPlugin into normal torrc file, and fix snowflake support 2021-10-15 09:17:03 -07:00
Miguel Jacq
c9fa2308a7
Add early (non-domain-fronted!) methods for interacting with the planned Tor censorship circumvention moat endpoints.
This is based on loose specs from https://gitlab.torproject.org/tpo/anti-censorship/bridgedb/-/issues/40025
2021-10-15 14:58:32 +11:00
a1346054
cea34725f1
Fix whitespace issues
* make sure files contain a final newline
* use consistent indentation
* trim excess whitespace
* trim trailing whitespace
2021-10-14 21:48:12 +00:00
a1346054
601e215565
Fix spelling 2021-10-14 21:48:12 +00:00
Micah Lee
39d624e923
Allow selecting a snowflake bridge, and make it try to use the snowflake bridge 2021-10-13 21:11:56 -07:00
Micah Lee
229da0aaab
Make get_tor_paths work properly now that in linux the tor binaries are bundled too 2021-10-11 20:45:28 -07:00
Micah Lee
5de48bba6e
Change all version to 2.4, update languages, rebuild docs, update tor from Tor Browser 2021-09-26 11:41:01 -07:00
Micah Lee
f454c58c57
Change version to 2.4.dev1, to make a dev release 2021-09-10 13:38:00 -07:00
Micah Lee
9e4df9c8e0
Bump version to 2.4 in cli and docs 2021-09-09 19:50:02 -07:00
Saptak S
6edab6877a
Removes trailing slash from directories inside directories 2021-09-04 20:41:22 +05:30
Saptak S
3620bf3a0c
Updates send.html to use file link instead of basename 2021-09-04 19:17:30 +05:30
Micah Lee
3d698d0fb7
Merge pull request #1413 from mig5/cli_allow_persistent_mode_as_only_arg
Don't force mode to be sent in CLI if --persistent is in use. Store the persistent mode only the first time the persistent file is created
2021-09-03 13:27:53 -07:00
Micah Lee
aac8020c3e
Merge pull request #1416 from SaptakS/fix-chat-shutdown
Adds exception for ConnectionError in chat mode during shutdown
2021-09-03 13:23:43 -07:00
Saptak Sengupta
1b5b6a6b71
Merge pull request #1399 from easyteacher/develop
Make last_modified and if_date timezone-aware (Fix #1398)
2021-09-04 00:13:12 +05:30
Fushan Wen
f4b35f25d3 Make last_modified and if_date timezone-aware
Fix #1398
2021-09-03 00:07:48 +08:00
Saptak S
5a7ab3c12e
Adds exception for ConnectionError in chat mode during shutdown
The way flask-socketio stops a connection when running using
eventlet is by raising SystemExit to abort all the processes.
Hence the connections are closed and no response is returned
So I am just catching the ConnectionError to check if it was
chat mode, in which case it's okay.
2021-09-02 18:57:21 +05:30
Miguel Jacq
686e5abd0e
Don't force mode to be sent in CLI if --persistent is in use. Store the persistent mode only the first time the persistent file is created 2021-08-31 17:53:50 +10:00
Miguel Jacq
dd7938a134
Merge develop and resolve conflict 2021-08-30 13:41:15 +10:00
Miguel Jacq
a08f303f89
Remove rate-limit related code, and a couple more places where flask-httpauth was referenced 2021-08-28 09:41:09 +10:00
Miguel Jacq
0bf8f53d30
ClientAuthV3 fixes
* Remove Client Auth as an explicit option (it's on by default).
 * Update wording about Public mode
 * Fix tuple error when raising TorTooOldStealth exception in CLI
 * Move Private Key button next to URL button in GUI
 * Replace visual references of ClientAuth to Private Key
 * Remove HTTPAuth Flask dependency and remove a lot of code to do with password generation,
   401 auth triggers/invalid password rate limit detection etc
 * Test updates
 * Remove obsolete locale keys
2021-08-27 15:52:29 +10:00
Miguel Jacq
cbdf2594c6
merge develop branch into client_auth_v3 branch and use our forked stem which works with poetry 2021-08-27 09:44:43 +10:00
Micah Lee
6049509db6
Change github URLs from micahflee/onionshare to onionshare/onionshare 2021-08-20 13:34:55 -07:00
Micah Lee
300189d95b
Add Lithuanian 2021-08-20 13:24:15 -07:00
Micah Lee
f71e320ca3
Version bump to 2.3.3 2021-08-20 13:13:39 -07:00
Micah Lee
c6451e097c
Remove endpoint altogether because it's not needed 2021-08-20 11:59:26 -07:00
Micah Lee
54f204fc5d
Merge branch 'develop' of https://github.com/twann4/onionshare into twann4-develop 2021-08-20 11:58:15 -07:00
Twann
aa89c2192f
Fix issue #1365 2021-08-19 16:15:53 +02:00
SIDDHANT DIXIT
3cbe55916b Added user theme preference option in Settings
Added an option to choose theme in settings dialog like auto, light and dark.
Fixed Dark Mode Dark Text.
2021-07-19 18:27:02 +05:30
BotMaster3000
a509bbae5b Set the word-break to break-word for the message-class, and removed the max-width again
As said by SaptakS, I applied the word-break to the message-Class. Since this breaks the line for long words without Spaces, as well as longer sentences, this is the better solution.
Since the max-width now is redundant, it got removed again, as to not cause any future confusion.
2021-06-07 22:29:40 +02:00
BotMaster3000
5c4558ace5 Set the Max-Width of the Chat-Window to 80%
Too long single-line messages can cause the ChatUser-Panel to disappear.
Allowing the windows of the Chat to be only 80% of width will cause a automatic linebreak in such a case.
2021-06-07 20:15:10 +02:00
Micah Lee
08d15fd3f1
Update version strings, docs, and release.md for version 2.3.2 2021-05-31 10:36:07 -07:00
whew
a132cd28f5
fix another typo... 2021-05-31 12:28:57 +00:00
whew
3f4f5e22ec
fix typo 2021-05-31 12:23:32 +00:00
whew
eeacd8c507
Merge branch 'develop' into add_security_headers 2021-05-31 12:13:58 +00:00
whew
56dd2d0b84
resolve conflict in chat_mode.py 2021-05-31 12:05:31 +00:00
whew
b8b7885a52
resolve conflict in web.py 2021-05-31 12:04:24 +00:00
Micah Lee
da2e22c140
Account for the "v" in the version string ("v2.3.2") banner spacing 2021-05-25 17:31:28 -07:00
Micah Lee
c682b7ec01
Merge branch 'fix_405_error_and_other_methods' of https://github.com/mig5/onionshare into mig5-fix_405_error_and_other_methods 2021-05-25 16:27:26 -07:00
Miguel Jacq
b66b5eca4d
Use label tag for chat username label, and rename javascript function to checkUsernameTooLong to better reflect its purpose 2021-05-17 08:17:45 +10:00
Miguel Jacq
00473eaef6
Prevent usernames in Chat mode of length 128 chars or more 2021-05-14 10:44:14 +10:00
whew
ea72440543
Update web.py 2021-05-13 08:17:51 +00:00
whew
04fae8ada1
Update share_mode.py 2021-05-13 08:15:17 +00:00
whew
c19dc4fa78
Update send_base_mode.py 2021-05-13 08:14:33 +00:00
whew
986a9a09a9
Update receive_mode.py 2021-05-13 08:13:43 +00:00
whew
020e9a6a5a
Update chat_mode.py 2021-05-13 08:11:29 +00:00
Miguel Jacq
c91d67c0b0
Merge branch 'develop' into client_auth_v3 2021-05-11 14:40:07 +10:00
Miguel Jacq
d4d6eea500
Move the 'supports_file_requests' attribute into the actual modes rather than the Web class 2021-05-11 09:25:22 +10:00
Miguel Jacq
0b6db6559d
Adds attribute self.mode_supports_file_requests in Web class. Don't send REQUEST_INDIVIDUAL_FILE_STARTED to the frontend if the mode doesn't support this, so that we don't trigger a chain reaction of toggling history widgets and the like. Set this attribute to True by default since most modes use it, but turn it off for Chat mode. Prevents an exception when sending a bad HTTP method or a 404 to a chat room 2021-05-11 08:41:17 +10:00
Miguel Jacq
a55a59e021
Disable OPTIONS on the update-session-username route on Chat mode 2021-05-11 08:39:44 +10:00
Micah Lee
9ba14c7a89
Remove Finnish, add Indonesian and Serbian (latin) 2021-05-10 15:36:53 -07:00
Miguel Jacq
a066c871a9
Merge branch 'develop' into fix_405_error_and_other_methods 2021-05-11 08:15:35 +10:00
Miguel Jacq
dc4eaffa97
Website mode doesn't need to support POST as a method 2021-05-11 08:14:49 +10:00
Miguel Jacq
97922d33d0
Fix HTTP return code for custom 500 internal server error handler 2021-05-10 15:57:23 +10:00
Miguel Jacq
2618e89eda
Register the 405 error handler properly. Enforce the appropriate methods for each route (GET or POST only, with OPTIONS disabled). Add tests for invalid methods. Add a friendlier 500 internal server error handler 2021-05-10 11:23:44 +10:00
Miguel Jacq
296f480b8c
Remind the user to submit contact info if they want a response to a message in Receive Mode 2021-05-07 10:53:13 +10:00
Miguel Jacq
c4cf9f08ec
Rename things with client_auth_v3_ in the name because there is only one type of client_auth now that v2 is gone. 2021-05-06 18:02:40 +10:00
Miguel Jacq
cde46b676e
Allow setting a 'fake' ClientAuth in local-only mode - which will help with tests 2021-05-06 15:06:36 +10:00
Miguel Jacq
ea4466262d
Gracefully avoid sending the client_auth_v3 argument to Stem's create_ephemeral_hidden_service() if the version of Stem we're on does not yet support it 2021-05-06 14:35:11 +10:00
Miguel Jacq
b385d6bac7
merge from develop and fix conflicts, update poetry 2021-05-06 14:30:29 +10:00
Miguel Jacq
e0b378055c
Remove v2 legacy onion support, and its corresponding client auth functionality. Update the v3 Client Auth to take its place in settings 2021-05-06 14:26:00 +10:00
Micah Lee
1b54f7a618
Merge pull request #1345 from micahflee/1275_fix_website_mode
Fix website mode in Windows
2021-05-05 21:14:35 +00:00
Micah Lee
b6d86a8e12
Change version to 2.3.2.dev1 2021-05-04 20:21:10 -07:00
Micah Lee
cab96f3e39
Merge branch 'develop' into version-2.3.2 2021-05-04 20:14:45 -07:00
Micah Lee
0422020de1
Merge branch 'develop' into 1275_fix_website_mode 2021-05-04 20:02:54 -07:00
Micah Lee
34771e3ea9
When building the self.files, use forward slashes instead of backslashes in Windows 2021-05-04 20:01:30 -07:00
Miguel Jacq
c6ccd4de57
Remove unnecessary cleanup_filenames appending in the CompressThread. Ensure we also remove the temp dir that a Zip file is made within, by setting the temp dir in ZipWriter as a variable 2021-05-04 16:42:23 +10:00
Miguel Jacq
04019389da
Move the cleanup() function from Onionshare class to Web class, so that the list of files to be cleaned up is always available (needed for website temp files) 2021-05-04 16:21:42 +10:00
Micah Lee
5d4966cd09
Version bump to 2.3.2 and update changelog, and upgrade PySide to 5.15.2 2021-05-03 18:50:01 -07:00
Micah Lee
ef81895243
Merge branch 'develop' into 1305_receive_messages 2021-05-03 18:13:04 -07:00
Micah Lee
6a9878a33e
Fix javascript bug in receive mode when files is disabled 2021-05-03 17:43:39 -07:00
Miguel Jacq
b48848eb04
Early support for ClientAuth with v3 onions 2021-05-04 10:02:02 +10:00
Miguel Jacq
cd62b08b5e
Update obfs4 built-in bridges to match those of Tor Browser's 2021-05-03 09:57:33 +10:00
Micah Lee
6325662b9c
Fix log colors so it isn't black on black in macOS 2021-05-02 15:49:43 -07:00
Micah Lee
94d5544bda
Use colorama for terminal colors, to get Windows support 2021-05-02 15:13:50 -07:00
Micah Lee
ce7f676527
Fix GUI tests 2021-05-02 14:34:09 -07:00
Micah Lee
17966471ab
GUI displays "Read Message" button when a receive mode submission includes a message 2021-04-30 17:16:02 -07:00
Micah Lee
89bed3c5ac
If no files are uploaded, delete the empty receive mode dir that was created 2021-04-30 15:57:11 -07:00
Micah Lee
95e6985f86
Remove periods from receive mode time folder names, and save the message outside of the time folder 2021-04-30 15:53:23 -07:00
Micah Lee
47e02d781a
If a text message is received, save it in the ReceiveModeRequest object, and add includes_text=True to REQUEST_STARTED 2021-04-30 14:12:41 -07:00
Micah Lee
0a6056e5e6
Fix flake8 issues found in cli 2021-04-29 17:13:05 -07:00
Micah Lee
343e1be3d0
Merge branch 'develop' into 1305_receive_messages 2021-04-29 16:58:33 -07:00
Saptak Sengupta
34554414e9
Merge pull request #1334 from micahflee/ascii_art
Prettier ASCII art
2021-04-29 19:19:52 +05:30
Micah Lee
b8d43ab8ce
Center the version and URL 2021-04-28 20:25:42 -07:00
Micah Lee
66918946ae
Merge pull request #1336 from mig5/1293_support_xdg_config_home_env_var
Use XDG_CONFIG_HOME environment variable if it is present, otherwise fall back to ~/.config
2021-04-29 01:25:03 +00:00
Micah Lee
650bf93128
Merge pull request #1337 from mig5/update_csp
Update the Content-Security-Policy
2021-04-29 01:24:04 +00:00
Miguel Jacq
330e602694
Update the Content-Security-Policy: remove style-src and script-src which are inherited by default-src. Add frame-ancestors, form-action and base-uri which do not inherit default-src 2021-04-29 10:09:44 +10:00
Micah Lee
0de27f9775
WIP: Starting to make messages in receive mode work in GUI 2021-04-28 19:10:26 -04:00
Micah Lee
ffe820398d
Level up the ASCII art 2021-04-28 16:08:20 -07:00
Saptak Sengupta
059a4425bd
Merge pull request #1327 from micahflee/1306_customization
Allow custom title for each onion service
2021-04-28 14:43:10 +05:30
Miguel Jacq
fe64d40e45
Use XDG_CONFIG_HOME environment variable if it is present, otherwise fall back to ~/.config 2021-04-28 15:45:37 +10:00
Micah Lee
ee3761af6c
Move graphical banner into common, and display it in GUI too 2021-04-26 19:29:18 -07:00
Micah Lee
2acdea5229
Allow sending messages as well as uploading files in receive mode 2021-04-25 20:46:06 -04:00
Micah Lee
dac508d06e
Prettier ASCII art 2021-04-25 19:23:10 -04:00
Micah Lee
470fb2bda3
Merge pull request #1321 from SaptakS/range-requests-revisited
Reviving the old range request PR
2021-04-25 18:07:35 -04:00
Micah Lee
2e44dfbbda
Merge pull request #1330 from SaptakS/chat-socket-fix
Force shutdowns the socket server on closing chat server
2021-04-25 17:41:41 -04:00
whew
161f20c1d6
Use socks5h instead of socks5
With `socks5h` the proxy server resolves the domain name, which avoids leaking DNS requests.
2021-04-24 09:59:53 +00:00
Saptak S
a4ae37d203
Force shutdowns the socket server on closing chat server 2021-04-19 02:59:22 +05:30
Micah Lee
1543bb38d2
Show the custom title in all modes 2021-04-12 18:15:51 -04:00
Micah Lee
b5c68fa5ca
Add --title, and make it display the title in chat mode 2021-04-12 17:55:16 -04:00
Saptak Sengupta
530f9547f5
Merge pull request #1326 from micahflee/pretty_verbose
Make verbose output prettier with terminal colors
2021-04-13 02:45:12 +05:30
Micah Lee
cf1debbf3c
Make verbose output prettier with terminal colors 2021-04-12 15:36:08 -04:00
Saptak S
729cf2ef86
Fixes content-length for the range requests logic 2021-04-12 22:57:11 +05:30
Saptak S
157ffc9ba5
Fixes parameters in the test function 2021-04-12 22:57:09 +05:30
Saptak S
4a7c062dbd
Reviving the old range request PR
This commit basically just adds the codes from the PR
https://github.com/micahflee/onionshare/pull/804/commits
on the newly structured and refactored code and also
fixes import dependencies and changed any code that was
relevant with the new code of onionshare
2021-04-12 22:57:08 +05:30
Micah Lee
839b23f87a
Improve webhook label in GUI, improve webhook message that gets POSTed, and display webhook errors without verbose mode 2021-04-12 09:08:47 -07:00
Micah Lee
84958ef7f3
Oops, webhook not websocket 2021-04-11 13:49:51 -07:00
Micah Lee
29970d38ff
Implement receive mode webhooks in CLI 2021-04-11 13:33:58 -07:00
Micah Lee
a08a12d855
Merge pull request #1317 from akshgpt7/chore-refactor-issues
Refactor code quality issues
2021-04-11 11:37:42 -07:00
Micah Lee
cd966424b6
Merge branch 'fix_rendezvous_typo' of https://github.com/mig5/onionshare into mig5-fix_rendezvous_typo 2021-04-11 11:02:47 -07:00
Aksh Gupta
ea8d2cfdfe chore: refactor code quality issues 2021-03-10 22:59:47 +05:30
Miguel Jacq
5b5c3ad87a
Fix the call to start_onion_service in CLI mode when using autostart timer, which had out of date positional args. Fix Tor exception handlers which were also out of date with the start_onion_service function 2021-03-10 15:04:22 +11:00
Kcchouette
a15ac4bc60
Change style to use flex
inspired by PR #1140
2021-03-08 18:56:26 +01:00
Kcchouette
83cafcc9ff
Revert: Adding class to have old style 2021-03-08 18:53:56 +01:00
Kcchouette
d7623d9fd7
Adding class to have old style 2021-03-08 17:29:45 +01:00
Micah Lee
89c1b14a8c
Version bump to 2.3.1 2021-02-22 13:37:21 -08:00
Micah Lee
2a7d9dbd51
Update copyright year to 2021 2021-02-22 13:35:14 -08:00
Micah Lee
ee20c648c6
Merge pull request #1287 from SaptakS/fix-persistent
Fixes issues with persistent mode
2021-02-22 13:26:29 -08:00
Saptak S
8a412fed85
Fixes issues with persistent mode
- adds mode to the persistent file
- adds filenames for share and website mode in persistent file
2021-02-23 02:23:31 +05:30
Saptak S
c88fba59e5
Updates socket.io client to 3.1.1 with the latest Socket.IO and Engine.IO protocols 2021-02-22 22:52:35 +05:30
Micah Lee
fbf1091bb8
Merge branch 'develop' into final-2.3 2021-02-21 10:34:03 -08:00
Micah Lee
c0c4b3da16
Set content-disposition to attachment for /download, to always force a download 2021-02-21 10:22:54 -08:00
Micah Lee
1bd78d778c
Add the final languages 2021-02-15 15:49:54 -08:00