Remove some irrelevant parts and add some info to the readme.
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@ -3,3 +3,4 @@ bin/*
|
|||||||
.go
|
.go
|
||||||
*.i2pkeys
|
*.i2pkeys
|
||||||
*/*.i2pkeys
|
*/*.i2pkeys
|
||||||
|
README.md.asc
|
||||||
|
@ -1,8 +1,5 @@
|
|||||||
# sam-forwarder
|
# sam-forwarder
|
||||||
|
|
||||||
*think of it as a shell-scriptable re-implementation of i2ptunnel. That's*
|
|
||||||
*pretty much it.*
|
|
||||||
|
|
||||||
Forward a local port to i2p over the SAM API, or proxy a destination to a port
|
Forward a local port to i2p over the SAM API, or proxy a destination to a port
|
||||||
on the local host. This is a work-in-progress, but the basic functionality is,
|
on the local host. This is a work-in-progress, but the basic functionality is,
|
||||||
there and it's already pretty useful. Everything TCP works, but UDP forwarding
|
there and it's already pretty useful. Everything TCP works, but UDP forwarding
|
||||||
@ -62,7 +59,8 @@ It doesn't encrypt the .i2pkeys file by default, so if someone can steal them,
|
|||||||
then they can use them to construct tunnels to impersonate you. Experimental
|
then they can use them to construct tunnels to impersonate you. Experimental
|
||||||
support for encrypted saves has been added. The idea is that only the person
|
support for encrypted saves has been added. The idea is that only the person
|
||||||
with the key will be able to decrypt and start the tunnels. It is up to the user
|
with the key will be able to decrypt and start the tunnels. It is up to the user
|
||||||
to determine how to go about managing these keys.
|
to determine how to go about managing these keys. Right now this system is
|
||||||
|
pretty bad. I'll be addressing that soon too.
|
||||||
|
|
||||||
TCP and UDP are both working now. Additional functionality might be added by
|
TCP and UDP are both working now. Additional functionality might be added by
|
||||||
adding other kinds of protocols overtop the TCP and UDP tunnels as a primitive.
|
adding other kinds of protocols overtop the TCP and UDP tunnels as a primitive.
|
||||||
@ -106,9 +104,6 @@ in a different repo though. This is looking a little cluttered.
|
|||||||
|
|
||||||
TLS configuration is experimental.
|
TLS configuration is experimental.
|
||||||
|
|
||||||
I'm eventually going to make the manager implement net.Conn. This won't be
|
|
||||||
exposed in the default application probably though, but rather as a library.
|
|
||||||
|
|
||||||
## Stuff that's using it:
|
## Stuff that's using it:
|
||||||
|
|
||||||
Mostly mine, but this is all Free-as-in-Freedom for anyone to use:
|
Mostly mine, but this is all Free-as-in-Freedom for anyone to use:
|
||||||
|
@ -1,11 +1,8 @@
|
|||||||
-----BEGIN PGP SIGNED MESSAGE-----
|
-----BEGIN PGP SIGNED MESSAGE-----
|
||||||
Hash: SHA256
|
Hash: SHA512
|
||||||
|
|
||||||
# sam-forwarder
|
# sam-forwarder
|
||||||
|
|
||||||
*think of it as a shell-scriptable re-implementation of i2ptunnel. That's*
|
|
||||||
*pretty much it.*
|
|
||||||
|
|
||||||
Forward a local port to i2p over the SAM API, or proxy a destination to a port
|
Forward a local port to i2p over the SAM API, or proxy a destination to a port
|
||||||
on the local host. This is a work-in-progress, but the basic functionality is,
|
on the local host. This is a work-in-progress, but the basic functionality is,
|
||||||
there and it's already pretty useful. Everything TCP works, but UDP forwarding
|
there and it's already pretty useful. Everything TCP works, but UDP forwarding
|
||||||
@ -65,7 +62,8 @@ It doesn't encrypt the .i2pkeys file by default, so if someone can steal them,
|
|||||||
then they can use them to construct tunnels to impersonate you. Experimental
|
then they can use them to construct tunnels to impersonate you. Experimental
|
||||||
support for encrypted saves has been added. The idea is that only the person
|
support for encrypted saves has been added. The idea is that only the person
|
||||||
with the key will be able to decrypt and start the tunnels. It is up to the user
|
with the key will be able to decrypt and start the tunnels. It is up to the user
|
||||||
to determine how to go about managing these keys.
|
to determine how to go about managing these keys. Right now this system is
|
||||||
|
pretty bad. I'll be addressing that soon too.
|
||||||
|
|
||||||
TCP and UDP are both working now. Additional functionality might be added by
|
TCP and UDP are both working now. Additional functionality might be added by
|
||||||
adding other kinds of protocols overtop the TCP and UDP tunnels as a primitive.
|
adding other kinds of protocols overtop the TCP and UDP tunnels as a primitive.
|
||||||
@ -109,9 +107,6 @@ in a different repo though. This is looking a little cluttered.
|
|||||||
|
|
||||||
TLS configuration is experimental.
|
TLS configuration is experimental.
|
||||||
|
|
||||||
I'm eventually going to make the manager implement net.Conn. This won't be
|
|
||||||
exposed in the default application probably though, but rather as a library.
|
|
||||||
|
|
||||||
## Stuff that's using it:
|
## Stuff that's using it:
|
||||||
|
|
||||||
Mostly mine, but this is all Free-as-in-Freedom for anyone to use:
|
Mostly mine, but this is all Free-as-in-Freedom for anyone to use:
|
||||||
@ -132,12 +127,12 @@ Donate
|
|||||||
BTC:159M8MEUwhTzE9RXmcZxtigKaEjgfwRbHt
|
BTC:159M8MEUwhTzE9RXmcZxtigKaEjgfwRbHt
|
||||||
-----BEGIN PGP SIGNATURE-----
|
-----BEGIN PGP SIGNATURE-----
|
||||||
|
|
||||||
iQEzBAEBCAAdFiEEcNIGBzi++AUjrK/311wDs5teFOEFAlwcRIAACgkQ11wDs5te
|
iQEzBAEBCgAdFiEEcNIGBzi++AUjrK/311wDs5teFOEFAlxHleQACgkQ11wDs5te
|
||||||
FOHvmQf/aUCM5KCHoeXX1ZErxCXVaIJRE/s425Ajr4jnn9WKK0YqA47cdKplaUfU
|
FOEXEwf9HRs1h27cwE8VqH2iOCXuzED6ShPWY6HX5zc6lWaYwWqoP0254RUKjQa5
|
||||||
yHWouCJ5pLwQMppysvpFE90bqc3XJG7BLUgZGiBiDk5NIZ+4i1UAk3kqTQTyx2jg
|
8ZcTKs+H/AIxzDrlRj4L9TBlyoG1bQsrTbJ42RIJsY0yj02YQEe0M1cH6zvf5zwr
|
||||||
HCQuQlQH2E94Y+MUq9ebhbZ/nA5oXBJuZJYWVywZEzmAVteNvTDfbPVtyAZr0HZM
|
Pee8HXpZV4hEx7KMd33yQGyvZ35FGNvxGrp6LaUYb/SR/BJ8plB8a4QGqPZEPi60
|
||||||
Q70sHNB76gg0mDI5quoly0Xa/p8jNidx4RSGQvdo3bCOkEKtuWVgHny9baCxXpu/
|
6Xz3hafunpjo8pi4lpnVOvFxfAjq2n7dmPFfwxPHxEL6q9srwN9XzfpIg9C30diF
|
||||||
GjSSlx7NBfnXBVEDkD6lOa0cpLjEzBqLAaDV14kzFZOnTc0roqURNROlTC+SlwLN
|
ncoqUj81LaDejWSOtJBv99Kxj3PcsS3JSdPMTPkdAy5kaAdauX3wlGI+i1CdKBoV
|
||||||
/JFkjD+tRWvGK6EiWc9Gt+wjpwVZ5g==
|
eVV7h7wRPaPzPkdaBKPJZbQhP3UEqQ==
|
||||||
=aPVO
|
=pqBI
|
||||||
-----END PGP SIGNATURE-----
|
-----END PGP SIGNATURE-----
|
||||||
|
@ -11,20 +11,20 @@ import (
|
|||||||
var longcount = 60
|
var longcount = 60
|
||||||
|
|
||||||
func countdown(i int) {
|
func countdown(i int) {
|
||||||
for i > 0 {
|
for i > 0 {
|
||||||
time.Sleep(1*time.Second)
|
time.Sleep(1 * time.Second)
|
||||||
i--
|
i--
|
||||||
log.Println("waiting", i, "more seconds.")
|
log.Println("waiting", i, "more seconds.")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestTCP(t *testing.T) {
|
func TestTCP(t *testing.T) {
|
||||||
go serve()
|
go serve()
|
||||||
countdown(longcount)
|
countdown(longcount)
|
||||||
go client()
|
go client()
|
||||||
countdown(longcount)
|
countdown(longcount)
|
||||||
resp, err := http.Get("http://127.0.0.1:" + cport + "/test.html")
|
resp, err := http.Get("http://127.0.0.1:" + cport + "/test.html")
|
||||||
log.Println("requesting http://127.0.0.1:" + cport + "/test.html")
|
log.Println("requesting http://127.0.0.1:" + cport + "/test.html")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatal(err)
|
t.Fatal(err)
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user