Micah Lee
ec7fa4ef16
Solve obnoxious cx_Freeze issue that broke websockets by enforcing async_mode=gevent, and including the correct modules in the build
2021-12-21 16:55:59 -08:00
Micah Lee
3da0b7a3ea
Enable websocket logs in verbose mode
2021-12-21 15:01:35 -08:00
Micah Lee
7e55e8e816
Fix permission denied error in Windows, which was introduced using tempfile.NamedTemporaryFile, by using a TemporaryDirectory instead
2021-12-21 14:28:23 -08:00
Micah Lee
f4fb212dbc
Fix finding tor binary paths in Windows
2021-12-21 14:15:52 -08:00
Micah Lee
bd12949652
Update python dependencies
2021-12-21 14:15:20 -08:00
Micah Lee
4ab5e0003c
Merge pull request #1489 from mig5/meek_stdout_cleanup_fix
...
Don't enqueue stdout from Meek subprocess in a Thread
2021-12-20 12:13:21 -08:00
Miguel Jacq
a385e1ffed
Add a CensorshipCircumventionError class that is raised if there's a requests exception connecting to the Tor API
2021-12-20 14:50:09 +11:00
Miguel Jacq
e6a17bc743
Force the MIME type for .js files to be text/javascript, to override silly OS databases/registries with incorrect settings, which Flask would otherwise depend on
2021-12-17 17:53:15 +11:00
Miguel Jacq
2689f35635
Don't enqueue stdout from Meek subprocess in a Thread, just read it as it comes. Solves infinite loop queue read issue on cleanup()
2021-12-15 18:28:55 +11:00
Miguel Jacq
4f40a9b501
Tweaks to CensorshipCircumvention and also Meek cleanup fixes that were causing a crazy read loop on the stdout queue
2021-12-15 18:22:18 +11:00
Miguel Jacq
12b725e821
Need to reconnect to Tor with the curr_settings Settings object after obtaining new bridges
2021-12-14 14:57:01 +11:00
Miguel Jacq
1aa67f8406
Fix the saving of bridges received from CensorshipCircumvention API - need to also save the bridges_enabled setting else TorSettingsTab doesn't show them
2021-12-14 14:32:00 +11:00
Miguel Jacq
3f4cb6a02e
Use the CensorshipCircumvention methods to fetch bridges for the country/autodetection
2021-12-14 10:48:47 +11:00
Micah Lee
8fe54afe13
Merge branch 'censorship' into 1422_autodetect_location
2021-12-12 10:27:01 -08:00
Miguel Jacq
be8a2a894f
Update our bridge templates with the latest built-in bridges in the get-tor scripts
2021-12-10 16:48:39 +11:00
Micah Lee
8416d089f4
Make automatic detection flip through country names while it's running meek
2021-12-06 20:54:03 -08:00
Micah Lee
feaecc9e4d
Merge branch 'mig5-censorship_automatically_attempt_and_reconnect' into 1422_autodetect_location
2021-12-06 20:11:41 -08:00
Micah Lee
09ac74a1be
Add country dropdown
2021-12-06 20:01:28 -08:00
Micah Lee
08ed7dab65
Oops, default connect_timeout should still be 120s
2021-12-06 19:42:43 -08:00
Micah Lee
339fc9338e
Start making UseBridgeWidget, and add json files that list country names for each enabled locale
2021-12-06 19:39:44 -08:00
Micah Lee
75d286386b
Merge branch 'censorship_automatically_attempt_and_reconnect' of https://github.com/mig5/onionshare into mig5-censorship_automatically_attempt_and_reconnect
2021-12-04 20:40:58 -08:00
Micah Lee
a71a4f9baa
Merge branch 'develop' of https://github.com/a1346054/onionshare into a1346054-develop
2021-12-04 20:34:07 -08:00
Micah Lee
20c291161e
Merge pull request #1432 from nyxnor/cli-shell-instructions
...
POSIX compliant input path on any shell
2021-12-04 20:31:25 -08:00
Micah Lee
27ee69a220
Merge pull request #1478 from mig5/fetch-builtin-bridges
...
Fetch the built-in bridges from Tor's Censorship Circumvention API, rather than hardcode them
2021-12-04 20:28:04 -08:00
Saptak S
5ca7236f0c
Fixes CLI tests
2021-12-03 20:03:22 +05:30
Micah Lee
1dde6f6deb
Add temp file to cleanup list just once when its first created
2021-12-02 18:51:06 -08:00
Micah Lee
b3d53ca2f2
Fix CLI tests
2021-12-01 21:01:32 -08:00
Micah Lee
c8ba508d26
Merge branch 'develop' into 1470_tempfiles
2021-12-01 20:37:45 -08:00
Micah Lee
8ec9a24af1
Explicitly cleanup temp files and dirs
2021-12-01 20:34:54 -08:00
Micah Lee
109d63a10c
Use NamedTemporaryFile instead of TemporaryFile, to fix crash when sharing one file
2021-12-01 20:10:51 -08:00
Miguel Jacq
81cf9aabe8
Fix conflicts
2021-11-30 10:54:17 +11:00
Miguel Jacq
3273832da7
Make the saving of the automatically-obtained bridges reusable (move it to CensorshipCircumvention class). Add the same functionality used in TorConnectionWidget to TorConnectionDialog.
2021-11-30 10:50:47 +11:00
Miguel Jacq
b151eeb3c3
Make sanity checking of bridges a reusable component in cli.Common, so we can reuse it for automatic bridge fetching in censorship circumvention
2021-11-30 10:01:14 +11:00
Saptak S
98f6f3b7d7
Checks if username is ASCII string else throw an error
2021-11-30 01:19:29 +05:30
Miguel Jacq
546633ac62
remove import of requests module in Onion
2021-11-27 11:14:05 +11:00
Miguel Jacq
55c8ada6ef
Move the ability to use Tor vs Meek into the CensorshipCircumvention class so that we can use those endpoints over Tor elsewhere later
2021-11-27 10:35:25 +11:00
Miguel Jacq
06a3599fe1
Built-in bridge refactoring.
...
Store the built-in bridges in OnionShare settings as a dict, and try writing those into the torrc if present.
If they aren't present in OnionShare settings, use the hardcoded templates instead.
Fetch the latest built-in bridges over Tor, once connected to Tor.
If we can't fetch the bridges over Tor, fall back to Meek (domain-fronting) and try again.
Then write those as the dict to the OnionShare settings, to take precedence next time.
2021-11-24 17:55:47 +11:00
Micah Lee
a4985e7029
Support sending a custom Content-Security-Policy header in Website mode
2021-11-23 18:44:14 -08:00
Miguel Jacq
f8dd9547cd
Raise exception if the API didn't return bridges for a specific bridge type, or if the bridge type wasn't recognized
2021-11-23 15:36:41 +11:00
Miguel Jacq
19072503a9
Fetch the built-in bridges from Tor's Censorship Circumvention API, rather than hardcode them
2021-11-23 15:28:40 +11:00
Saptak S
3422364fa1
Merge branch 'censorship' of github.com:onionshare/onionshare into auto-connect-ui
2021-11-19 18:29:47 +05:30
Saptak S
2a68b5bce1
Removes invisible whitespace characters from username in chat
2021-11-19 15:25:10 +05:30
Micah Lee
b659eccfbf
Use a NamedTemporaryFile instead of TemporaryFile for streamed gzip files
2021-11-18 20:17:39 -08:00
Micah Lee
1d0d30458c
Merge pull request #1447 from tladesignz/develop
...
Fixed send.js table sorting.
2021-11-18 20:14:14 -08:00
Micah Lee
f5b60de2e6
Use high level tempfile classes that clean up after themselves
2021-11-18 20:03:18 -08:00
Micah Lee
627f44c423
Merge branch 'advisory-fix-1' of github.com:onionshare/onionshare-ghsa-jh82-c5jw-pxpc into ros-fixes
2021-11-18 19:16:00 -08:00
Micah Lee
5f5b761fcf
Merge branch 'chat-session-handling' of github.com:onionshare/onionshare-ghsa-gjj5-998g-v36v into ros-fixes
2021-11-18 19:15:24 -08:00
Micah Lee
09d2c2a7f8
Merge branch 'advisory-fix-1' of github.com:onionshare/onionshare-ghsa-h29c-wcm8-883h into ros-fixes
2021-11-18 19:13:41 -08:00
Micah Lee
221eb1cbac
Fix comment
2021-11-16 18:10:25 -08:00
Micah Lee
267e9eb1e4
Exception handling on printing the banner
2021-11-15 18:16:10 -08:00
Micah Lee
a4db0d26c9
Fix for meek to working in snapcraft
2021-11-15 18:07:57 -08:00
Saptak S
8ec28da4fe
Fixes typo
2021-11-15 19:53:02 +05:30
Micah Lee
99c85f55e2
Fix bug that was preventing tor from connecting in snapcraft
2021-11-14 20:53:22 -08:00
Micah Lee
f09bb66425
Snap successfully builds meek-client, and WIP getting tor to connect
2021-11-14 17:52:40 -08:00
Micah Lee
0f63c89a59
Detect Flatpak via environment variable
2021-11-14 17:16:21 -08:00
Micah Lee
70248ed4a5
Upgrade to cepa 1.8.3
2021-11-14 16:24:36 -08:00
Micah Lee
365ddc5e34
Merge branch 'develop' into 1459_linux_packaging
2021-11-14 13:28:45 -08:00
Saptak S
b9d9f14916
Refuses connection if another session is already active
2021-11-14 23:44:16 +05:30
Saptak S
6429392a40
Adds username validation for socketio event handler as well
2021-11-14 23:28:17 +05:30
Saptak S
2a7c3d6867
Renames message event to chat_message
2021-11-14 21:06:47 +05:30
Saptak S
f4ade1ba8d
Removed room from chat
...
- Uses the global room instead of adding and leaving room for users
- Removes the joining event and triggers connection status from
server as soon as a connection event is received in server side
2021-11-14 20:58:21 +05:30
Micah Lee
f00d2cc0b0
Switch stem with cepa, and update CLI packages
2021-11-12 15:47:33 -08:00
Miguel Jacq
80e7316249
Allow website mode to stop even if people have viewed it
2021-11-12 11:58:48 +11:00
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
1fa82818c3
Add meek_client stuff to CLI tests
2021-10-20 15:55:24 +11: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
64973a00ec
Fix CLI tests
2021-10-15 09:21:58 -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
343a8cccc1
Update dependencies
2021-10-11 20:44:42 -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
nyxnor
99f86815d7
s/source/./
2021-09-20 17:21:05 +02:00
nyxnor
ffd9327761
POSIX compliant input path on any shell
2021-09-11 08:10:37 +02: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
3d2f8a6c18
Version bump to 2.4
2021-09-10 12:45:21 -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
b09c3bc48b
Merge pull request #1411 from nyxnor/cli-installation-instructions
...
Cli installation instructions
2021-09-03 14:38:03 -07:00
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
Saptak Sengupta
810288b9c4
Merge pull request #1358 from whew/add_security_headers
...
Add security headers to every response
2021-09-04 00:12:21 +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
Kushal Das
e4178cff49
Fixes typos about Linux as platform name
...
It is `linux` not 'Linux' in sys.platform
2021-09-02 08:31:30 +05:30
nyxnor
a0e322a906
remove duplicated comma
2021-08-31 11:59:07 +02:00
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
nyxnor
10a0c522bf
site refer to readme and README corrections
2021-08-31 03:34:44 +02:00
nyxnor
80b2fe15f1
correct formatting
2021-08-30 22:56:25 +02:00
nyxnor
f0d823bdcc
installation instructions
2021-08-30 22:54:24 +02: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
f63e0c37d1
Upgrade to Stem 1.8.1 (our fork) to satisfy wheel build. Raise minimumHeight to avoid cutoff of client auth option in sharing settings
2021-08-27 10:07: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
58e16e29b0
Updated test cli settings
...
Added theme key in test_cli_settings.py.
2021-07-22 02:37:24 +05:30
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
d79e2323c0
Update release docs, and update CLI poetry lock
2021-06-01 19:39:34 -07: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
d7ce658628
Pin Flask at 1.1.4 to avoid Flask 2.0.0 which requires Jinja2 3.0.0 but the latter of which conflicts with Briefcase
2021-05-17 09:02:47 +10: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