John-Mark Gurney
0f837e8c5a
add more complete docs on running tests... add target for systems w/o
the entr command...
5 years ago
John-Mark Gurney
c817243512
fix entry_points so that ntunnel is installed as an executable...
5 years ago
John-Mark Gurney
c47d74f353
make -m ntunnel work, and use that now that we've made ntunnel into
a proper package..
5 years ago
John-Mark Gurney
3798779670
Turn this into a proper python module using setup.py...
Use requirements in setup.py for dev via requirements.txt...
5 years ago
John-Mark Gurney
b9be29ec82
add comment about passing protocol version to the getconnection method
so that it can decide what paramaters are to be used...
5 years ago
John-Mark Gurney
75d5780afb
convert to using a class for validating connections and getting the
connection pair.. This makes it easier to handle the future case
where we might want to connect a specific client to a resource, AND
if we expand the protocol negotiation to include additional data,
to possibly allow clients to request specific resources...
5 years ago
John-Mark Gurney
189bbb7bd3
wait for clean up to happen before progressing..
This is to make sure that we don't have a run away resoruce
utilization.. probably unneeded..
5 years ago
John-Mark Gurney
74ff15da8c
use an asynccontextmanager to make sure that subprocesses are terminated
5 years ago
John-Mark Gurney
acb6eac238
clean up the tests better, shame there isn't a context handler for processes...
5 years ago
John-Mark Gurney
e79d8273f4
add protocol version checking, so we fail if the version mismatches...
5 years ago
John-Mark Gurney
8003d4e84c
add sending a protocol version, so we can extend the protocol in the future...
5 years ago
John-Mark Gurney
93a5211373
add docs to parsesockstr, and drop the _ to make it first class. this
allows us to reference it's docs from where it's used...
5 years ago
John-Mark Gurney
1a77fc8067
add tests for _parsesockstr/connectsockstr/listensockstr, add support
for TCP for them...
clean up a bunch of the test sockets, need to document how to clean up
the various services...
Stream line some of the test code so that it is properly all covered.
5 years ago
John-Mark Gurney
ce245084c2
comment about code coverage..
5 years ago
John-Mark Gurney
838657479b
update the readme as we now support verifying the client key...
document issue w/ task cleanup...
5 years ago
John-Mark Gurney
27daaa0c36
reduce time out so tests run a bit faster... not sure what the best
way to test for this condition is...
5 years ago
John-Mark Gurney
2f8a62aa16
eliminate a bunch of sleeps, in one place use an Event to syncronize
5 years ago
John-Mark Gurney
ef95a6f276
add test to make sure that the server checks the client's key and
only allows the key that was specified
5 years ago
John-Mark Gurney
d33583e340
change ptpair to a function and pass in the remote static key (if
we're the responder) so that the responder can validate and possibly
change the route based upon it...
5 years ago
John-Mark Gurney
a78291b2a3
include the program used to generate the handshake message lengths
array..
5 years ago
John-Mark Gurney
99cafdd847
note that ntunnel uses 3.7, there are some asyncio features that
ntunnel uses that weren't introduced till 3.7...
note that it should be usable w/ TCP streams as well, though that
feature is yet to be implemented...
5 years ago
John-Mark Gurney
07228d1f8a
add bugs/future features section
5 years ago
John-Mark Gurney
d42812f96a
add a quick example to show how to use it.
5 years ago
John-Mark Gurney
95afbe5737
This should make things work now! both client and server can be run...
5 years ago
John-Mark Gurney
647a2a113a
add option to not use pipes, to make it easier to see the output...
start adding an end to end test
5 years ago
John-Mark Gurney
52460a3912
clean up how we check that the process runs... This is better as it
allows to check output, and prevents spamming to test console. It
also sets up the environment closer to a real run.
5 years ago
John-Mark Gurney
f002ce41d1
add comment about how to improve this...
5 years ago
John-Mark Gurney
9acd8dac9a
add a generate key command..
5 years ago
John-Mark Gurney
05e577f738
move the function locally since it looks like this is the way forward..
5 years ago
John-Mark Gurney
be2e5fd6da
minor reorg work..
make both pairs come from an awaitable object, this will be needed for
future work...
keep lines under 80 chars...
Minor reorg of the main loop to make it clearer...
5 years ago
John-Mark Gurney
beb82c02e5
get the other side working... This was a lot easier to get functional
than I expected...
5 years ago
John-Mark Gurney
7f60466d35
get the responder side of things working, including COMPLETE! shutdown...
not fully tested on the various errors...
5 years ago
John-Mark Gurney
1112dfb6dc
last bit of work on the twisted version before I stopped...
5 years ago
John-Mark Gurney
59d4a88ac3
talk about the VIRTUALENV and *ARGS options to make..
5 years ago
John-Mark Gurney
0f275cf7f7
don't need twisted as moving to asyncio... allow the python binary to be set to
allow pypy to possibly be used..
5 years ago
John-Mark Gurney
349295cda7
trying to figure out how to shut things down cleanly... making some progress..
and one quarter of things shutdown properly so far..
5 years ago
John-Mark Gurney
fa9a3d20dc
switch to using asyncio. It's so much cleaner than twisted.
5 years ago
John-Mark Gurney
36cd3a25d8
add start of vanila version of tunnel.. this is a check point to see
if async will work out or not..
5 years ago
John-Mark Gurney
7c51fbd77b
more refactoring and prep for client work...
5 years ago
John-Mark Gurney
29ae6fec65
minor rework, and add some documentation...
5 years ago
John-Mark Gurney
01b664048e
minor rearchitecting to support client..
5 years ago
John-Mark Gurney
bd6eccc344
add text on how to hide message lengths...
5 years ago
John-Mark Gurney
b0754aee2a
add license text..
5 years ago
John-Mark Gurney
d8407f7ef1
get data flowing in the opposite direction... now we need to work
on the client part of things..
5 years ago
John-Mark Gurney
6ec6d41340
add a few comments for the tests..
5 years ago
John-Mark Gurney
523773d3bd
convert over to unix sockets so we don't have to search for ports...
This is going to be what will be eventually used anyways, so it's
good to test it a bit early...
5 years ago
John-Mark Gurney
2888bc3a73
make a basic version of this work...
5 years ago
John-Mark Gurney
dfcd36caab
check point for some work... Changing directions, but don't want
to lose the work of mocking the client connection..
5 years ago
John-Mark Gurney
4082cd67ce
fix link
5 years ago
John-Mark Gurney
504c5eef2d
add overview of project
5 years ago