Micah Lee
4ff23fa9bd
Merge branch 'develop' into upgrade-flask
2022-03-28 18:18:57 -07:00
Miguel Jacq
9c4a598fc0
Support for Censorship Circumvention API's /default route.
...
Fall back to trying Censorship API's /default route if no other bridges found.
At time of writing, this returns a couple of built-in obfs4 bridges.
If even that request fails, we will still fall back to our own full list of
obfs4 bridges.
2022-03-28 12:31:07 +11:00
Micah Lee
52cb5cf71a
Merge pull request #1560 from mig5/fix_censorship_builtin_bridges_response
...
Remove meek workaround in Censorship Circumvention API's built-in bridges response
2022-03-27 17:27:03 -07:00
Miguel Jacq
5cbd9ae66d
Remove meek workaround in Censorship Circumvention API's built-in bridges response
2022-03-28 10:45:23 +11:00
Micah Lee
06e9b3d3fc
Fix built-in bridge detection, and update built-in bridges. Also update README after setting up Windows dev environment
2022-03-27 12:44:41 -07:00
Miguel Jacq
21243fd9bd
More verbose and consistent Meek exception logging
2022-03-22 14:29:02 +11:00
Micah Lee
782a9e1909
Merge branch 'develop' into censorship
2022-03-06 13:55:36 -08:00
Micah Lee
b068e83852
Update flask to 2.0.3, flask-socketio to 5.1.1, update socketio js, and the rest of the pip deps
2022-03-06 11:35:01 -08:00
Micah Lee
e168080b77
Merge branch 'develop' into censorship
2022-02-13 11:28:16 -08:00
Micah Lee
305abff13c
Remove cleanup_tempfiles altogether because they are not being used
2022-02-13 10:40:55 -08:00
Micah Lee
33fd639f2a
Use a TemporaryDirectory instead of NamedTemporaryFile to avoid opening an already open file in Windows
2022-02-09 18:19:50 -08:00
Micah Lee
cb49c30025
Update final locales for 2.5
2022-01-17 10:33:13 -08:00
Micah Lee
c8ea770223
Merge branch 'ros-fixes' into release-2.5
2022-01-17 09:51:25 -08:00
Micah Lee
4729af5598
Actually bump version to 2.5
2022-01-17 09:51:04 -08:00
Micah Lee
ababc2de46
Update copyright year to 2022
2022-01-16 16:15:49 -08:00
Micah Lee
a5f97b6c88
Version bump to 2.4.1
2022-01-16 16:06:29 -08:00
Micah Lee
9e99ad8b8d
Merge branch 'develop' of github.com:onionshare/onionshare into ros-fixes
2022-01-16 15:49:33 -08:00
Micah Lee
a47e25b45b
Merge branch 'cx_freeze-packaging' into develop
2022-01-16 13:50:56 -08:00
Micah Lee
c8745cd8dc
Also codesign libevent-2.1.7.dylib
2022-01-16 11:44:30 -08:00
Micah Lee
40b4d8f84c
Allow onionshare-cli binary made by cx_Freeze find tor binaries in macOS
2021-12-22 13:08:01 -08:00
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
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
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
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
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
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
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
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