Brian Warner
a46a405487
refactor: _get_message() (singular) does unhexlify too
2015-07-24 16:33:29 -07:00
Brian Warner
5e1690cad8
rearrange slightly
2015-07-24 16:26:01 -07:00
Brian Warner
e5fcc6a8c8
rename some methods to make them more private
2015-07-24 16:18:03 -07:00
Brian Warner
effbd27047
minor rearrangement
2015-07-24 16:00:13 -07:00
Brian Warner
cfe51f73c1
replace base asserts with UsageError
2015-07-24 15:55:42 -07:00
Brian Warner
056cf107fc
replace blocking Initiator/Receiver with just symmetric Wormhole
...
first pass, seems to work
2015-07-17 17:23:07 -07:00
Brian Warner
bc54a0bbca
move blocking/eventsource out to a separate file
2015-07-17 16:55:29 -07:00
Brian Warner
f6eeaab0e4
add docs for 0.3.0
2015-06-24 00:26:03 -07:00
Brian Warner
894da44244
relay: make it possible to omit the Transit server
2015-06-21 21:08:21 -07:00
Brian Warner
dc65b4354d
twisted: split allocate_ports() out to util.py
...
so it can be used by downstream projects
2015-06-21 21:04:33 -07:00
Brian Warner
eb18b1359e
Merge branch 'twisted'
2015-06-20 19:21:16 -07:00
Brian Warner
6ee09f5316
add demo of twisted flow, update docs
...
python -m wormhole.twisted.demo send-text TEXT -> CODE
python -m wormhole.twisted.demo receive-text CODE -> TEXT
2015-06-20 19:18:29 -07:00
Brian Warner
25472423c6
make twisted work, get serialization into shape, add proper tests
2015-06-20 19:18:21 -07:00
Brian Warner
0f58f3906d
rough out twisted.SymmetricWormhole
2015-06-20 18:55:08 -07:00
Brian Warner
85dd3ba948
make twisted/ a real package
2015-06-20 18:55:07 -07:00
Brian Warner
951da1a59b
eventsource: add Agent, deliver eventtype correctly
...
import eventual.py from the right place
2015-06-20 18:54:37 -07:00
Brian Warner
5241c07b8c
copy eventsource.py from petmail c98d5a0
2015-06-20 18:34:26 -07:00
Brian Warner
d3c5fdc26a
include .sql file in package_data
2015-06-20 18:30:21 -07:00
Brian Warner
20e35f1b1e
enable travis
2015-06-20 18:30:19 -07:00
Brian Warner
b6b6c6aea4
upgrade to versioneer-0.15, fixes 'setup.py develop'
2015-05-31 16:39:39 -07:00
Brian Warner
ec90ef43da
use sqlite to track channel allocation
2015-05-05 00:14:56 -07:00
Brian Warner
d7415b7053
minor expiration cleanups
2015-05-04 18:28:54 -07:00
Brian Warner
183303e11e
rework expiration, prune after 3 days, check every 2 hours
2015-05-04 18:28:04 -07:00
Brian Warner
dc3f2eee43
server: build ChannelList from db, not self.channels
2015-05-04 18:25:52 -07:00
Brian Warner
1aab908091
allocate_channel_id: use DB to get list of previous allocations
2015-05-04 18:24:23 -07:00
Brian Warner
a03fb3900e
relay: track allocations through DB
2015-05-04 18:24:23 -07:00
Brian Warner
043392ee2a
relay: add database, not used yet
2015-05-04 18:24:23 -07:00
Brian Warner
c3b048a4d3
relay: remove/disable unused code, hush pyflakes
2015-04-20 18:34:45 -07:00
Brian Warner
c393e09e8a
server: add --advertise-version option
2015-04-20 18:34:13 -07:00
Brian Warner
549b348aee
minor typo
2015-04-13 20:11:48 -04:00
Brian Warner
790ae9a0dc
change channel-allocation web API (incompatibly)
...
This will make it easier to manage channel allocation later, when we
switch to a database.
2015-04-10 22:03:08 -05:00
Brian Warner
f7f05b21b8
add missing files
2015-04-10 00:08:01 -05:00
Brian Warner
18c1e125bd
setup.py: finish renaming
2015-04-10 00:02:24 -05:00
Brian Warner
3f662ea68c
add proper README
2015-04-09 23:58:31 -05:00
Brian Warner
819a37476b
add "-0" mode: no codes, no auth, fixed channel
...
Like roulette but with forward security.
2015-04-09 23:06:57 -05:00
Brian Warner
5f35fcee61
send --verify: tell user to include --verify on receiver too
...
In the long run, this needs to be included in the second PAKE message,
and the MitM consequences thought through.
2015-04-09 22:56:39 -05:00
Brian Warner
5e593509b4
allow pre-generated (human-offline-created) codes
...
Just make up a code like NUMBER-STUFF, and add --code= to the
send-text/send-file command. Also don't use tab-completion on the
codewords part of the receiving side, unless you stuck to the even/odd
PGP wordlist. (tab still works for the channel-id).
2015-04-09 22:50:07 -05:00
Brian Warner
3aa7e22708
relay: don't require allocate(): first message creates the Channel
...
this enables pre-generated (human-offline-created) codes, as long as
they use a channel id high enough to avoid colliding with any allocated
ones.
2015-04-09 22:46:18 -05:00
Brian Warner
c8d2fc8750
relay: improve the way we allocate channels
...
Now the server allocates a channel randomly from set of available ids
with the shortest possible length. So concurrency=1 will always yield a
channel-id between 1 and 9 (inclusive). If we have 9 simultaneous
sessions, we'll start allocating channels from 10 to 99. 100
simultaneous connections kicks us into the 100-999 bucket, etc.
2015-04-09 22:45:04 -05:00
Brian Warner
ecc04ff675
display message-of-the-day, if the server offers one
2015-04-09 12:45:12 -07:00
Brian Warner
5ff59c92e0
display current-version-is-different even when erroring out
2015-04-09 12:35:07 -07:00
Brian Warner
e881d169a6
error out if server gives a "sorry we're closed" error
2015-04-09 12:29:26 -07:00
Brian Warner
3a728d4a06
ignore twistd.pid
2015-04-09 11:47:01 -07:00
Brian Warner
6da9f3ec3a
warn (to stderr) if the client version differs from the server's
...
This is a proxy for the other client's version, and encourages both
sides to upgrade to the current version each time the server is
upgraded (which will be once per release).
2015-04-09 11:46:23 -07:00
Brian Warner
782214813b
server+client: fix SSE alternate-event-type handling
...
I think the server needs to put blank lines after *every* field, not
just the data: fields.
2015-04-09 11:37:50 -07:00
Brian Warner
830ba18fe7
require spake2==0.2, which uses Ed25519 as a default
2015-04-09 10:40:16 -07:00
Brian Warner
9d7cd1d7de
server: add "welcome message" to all responses, including server version
2015-04-08 21:03:27 -07:00
Brian Warner
dc9bc0c575
Use "wormhole server start" to launch a relay server.
2015-04-08 18:39:33 -07:00
Brian Warner
cf592d0766
CLI: avoid importing anything until command is actually run
...
In prep for moving the server launch command into the main CLI path,
without imposing dependency on pynacl/etc.
2015-04-01 16:01:32 -07:00
Brian Warner
beb9e240d4
update API docs
2015-03-25 17:02:57 -07:00