Commit graph

1245 commits

Author SHA1 Message Date
David Fifield
cfca47674e Build the websocket-server.
Patch server.go to refer to out-of-tree websocket library.
2016-03-26 15:24:56 -07:00
David Fifield
e53705519e Add a copy of websocket-server in the server directory.
From commit ea3ee6b5cf035a9465c02b4a2b38882c9c6a7050 in
https://git.torproject.org/pluggable-transports/websocket.git
2016-03-26 15:24:56 -07:00
David Fifield
c4cfc7f8ba Move server to server-webrtc.
To make room for the WebSocket server we're actually going to use as a
primary server. Move server-webrtc docs to server-webrtc/README.md.
2016-03-26 15:24:44 -07:00
David Fifield
2d871a1a4f We don't need to worry about the base64 WebSockets.
That's only for very very old Firefox. Even for flash proxy it was only
relevant for a short time.
2016-03-26 14:23:22 -07:00
David Fifield
7248cf92f3 Add a note that you need to pass "manual" for copy-paste. 2016-03-26 13:21:38 -07:00
David Fifield
0fc2c8b22e Fix local web server URL (127.0.0.1 not 0.0.0.0). 2016-03-26 13:20:48 -07:00
David Fifield
6efb5cb8ef Typo. 2016-03-26 10:41:38 -07:00
Arlo Breault
ed60c74686 Redundant close 2016-03-20 08:48:49 -07:00
Serene Han
b8815627bd defer conn.Close for simplicity and remove unnecessary goroutines, improve error handling (close #12) 2016-03-19 22:36:17 -07:00
Arlo Breault
598e2a3bfb Close SocksConn when WebRTC connection is reset
* This will induce the tor client to establish a new SocksConn,
   which in turn will dial a new WebRTC connection.

   To be improved upon.

 * Part of #12
2016-03-18 21:29:31 -07:00
Arlo Breault
cf1b0a49f1 Close connections before unloading
Noticed a long delay after the window closed before the datachannel
 timed out.

 2016/03/18 13:53:16 Traffic Bytes (in|out): 202576 | 8087
 2016/03/18 13:58:10 WebRTC: DataChannel.OnClose [remotely]
2016-03-18 14:22:34 -07:00
Arlo Breault
2ac12c5b8d Fix receiving cp/paste offer 2016-03-18 13:11:45 -07:00
Arlo Breault
df2ea126c8 Fix input handler 2016-03-18 11:58:01 -07:00
Serene Han
afd814773a snowflake proxy continues to poll broker until at capacity (#11) 2016-03-17 15:57:38 -07:00
Serene Han
490b8b33b7 better checks on receiveOffer (#11) 2016-03-15 20:13:39 -07:00
Serene Han
b1e76420bd per-proxypair Snowflake ID generation instead of just one for the Broker (#11) 2016-03-14 22:12:52 -07:00
Arlo Breault
422717f36f Update proxy readme for npm 2016-03-14 20:46:52 -07:00
Arlo Breault
9867730e34 Run client tests in travis too 2016-03-14 19:38:59 -07:00
Serene Han
3339b9f172 simplify proxypair relay onclose 2016-03-13 23:25:47 -07:00
Serene Han
5e318b6219 prepare for multiplexed snowflake (#11) 2016-03-12 22:29:56 -08:00
Serene Han
6b5a36ac84 begin FAQ section for readme 2016-03-11 20:10:41 -08:00
Serene Han
ba7b59f80e clarify webRTCConn errorChannel and error handling 2016-03-10 17:14:45 -08:00
Serene Han
f91b8faa0a more informative broker error messages (close #26) 2016-03-09 14:37:45 -08:00
Arlo Breault
e5f284ca56 Update for go1.6 2016-03-09 13:08:36 -08:00
Serene Han
960a136c64 retry client offers immediately instead of reset, combine sendOffer and receiveAnswer into exchangeSDP 2016-03-08 20:33:39 -08:00
Serene Han
d61534b3a0 keep readme up to date 2016-03-08 18:23:41 -08:00
Serene Han
39be8403a4 provide 'silent' param on snowflake proxy to disable confirmation dialog 2016-03-07 22:58:23 -08:00
Serene Han
91673a4abe fix datachannel remote vs. local closing during client's peerconnection cleanup 2016-03-06 11:40:05 -08:00
Serene Han
9daa6c4b71 multiple arbitrary ice servers can be passed as client flag (close #24) 2016-03-05 17:01:33 -08:00
Serene Han
4e6bba559a provide IceServerList flag as variadic arg to webrtc Configuration (#24) 2016-03-04 13:21:56 -08:00
Serene Han
3ec771df01 prepare IceServerList client flag (#24) 2016-03-03 22:51:10 -08:00
Serene Han
d2e61e315c confirmation dialog on proxy close (close #23) 2016-03-02 05:45:27 -08:00
Serene Han
8a8273e972 use const LogTimeInterval 2016-02-28 13:16:12 -08:00
Serene Han
5aae41c901 rendezvous / BrokerChannel tests for client 2016-02-27 14:45:53 -08:00
Serene Han
5edac195f6 move endWebRTC() mostly into webRTCConn.Close() 2016-02-26 14:35:20 -08:00
Serene Han
f3e0abe0e1 only flush datachannel with nonzero bytes, which prevents Tor from marking the SOCKS for close (#12) 2016-02-25 01:24:06 -08:00
Serene Han
38999e02de update README and include TOC 2016-02-24 07:47:17 -08:00
Serene Han
d4efe774d1 remove webRTCConn SendLoop and simplify Write without additional channel, as net.Conn is already safe 2016-02-23 17:34:51 -08:00
Serene Han
3a7e0ea620 simplify client handler & dialWebRTC with independent webRTCConn constructor 2016-02-23 17:01:44 -08:00
Serene Han
f86f5b5b07 move webRTCConn into separate file 2016-02-21 22:03:19 -08:00
Serene Han
ef5cb162c0 fix SendData channel syncing 2016-02-21 22:00:51 -08:00
Serene Han
26f5caf404 add ReceiveAnswer test to client 2016-02-20 16:11:45 -08:00
Serene Han
c3ada1b545 Use a channel to safely synchronize datachannel writes, (#12)
clean up ice candidate log message.
still need to debug the copy loop break.
2016-02-19 16:25:08 -08:00
Serene Han
c4215b5614 log traffic bytes only once every few seconds, along with OnMessage & datachannel.Send counts, to prevent flooded logs 2016-02-18 14:15:22 -08:00
Serene Han
a1b7e01c54 Include answer channel as part of the webRTCConn struct (#12) 2016-02-17 20:41:33 -08:00
Serene Han
e35687b587 Disconnections from websocket side also resets browser proxy 2016-02-17 19:55:43 -08:00
Serene Han
8a2e7a6041 Use reconnect timeout on client (#12) 2016-02-17 19:53:11 -08:00
Serene Han
f205a0be59 Snowflake client now using a reconnect loop (#12) 2016-02-17 19:19:16 -08:00
Serene Han
eb7eb04ac0 Buffer writes to DataChannel, remove blocking on openChannel (#12) 2016-02-17 18:38:52 -08:00
Serene Han
760dee8a0f prepare snowflake client for buffered datachannel writes, separate out dialWebRTC (#12) 2016-02-17 17:42:00 -08:00