From 40a80dae8d5d9ae1801b8c9bb94033f99e9f4f7e Mon Sep 17 00:00:00 2001 From: eyedeekay Date: Wed, 20 Nov 2024 18:09:42 -0500 Subject: [PATCH] add structure --- CONTRIBUTING.md | 36 ++++++++++++++++++++++++++++++++++++ README.md | 34 +--------------------------------- cmd/doc.md | 0 cmd/http/client/doc.md | 0 cmd/http/doc.md | 0 cmd/http/server/doc.md | 0 cmd/irc/client/doc.md | 0 cmd/irc/doc.md | 0 cmd/irc/server/doc.md | 0 cmd/socks/client/doc.md | 0 cmd/socks/doc.md | 0 cmd/standard/client/doc.md | 0 cmd/standard/doc.md | 0 cmd/standard/server/doc.md | 0 cmd/udp/client/doc.md | 0 cmd/udp/doc.md | 0 cmd/udp/server/doc.md | 0 lib/doc.md | 0 lib/http/client/doc.md | 0 lib/http/doc.md | 0 lib/http/server/doc.md | 0 lib/irc/client/doc.md | 0 lib/irc/doc.md | 0 lib/irc/server/doc.md | 0 lib/socks/client/doc.md | 0 lib/socks/doc.md | 0 lib/standard/client/doc.md | 0 lib/standard/doc.md | 0 lib/standard/server/doc.md | 0 lib/tun/client/doc.md | 0 lib/tun/doc.md | 0 lib/udp/client/doc.md | 0 lib/udp/doc.md | 0 lib/udp/server/doc.md | 0 34 files changed, 37 insertions(+), 33 deletions(-) create mode 100644 CONTRIBUTING.md create mode 100644 cmd/doc.md create mode 100644 cmd/http/client/doc.md create mode 100644 cmd/http/doc.md create mode 100644 cmd/http/server/doc.md create mode 100644 cmd/irc/client/doc.md create mode 100644 cmd/irc/doc.md create mode 100644 cmd/irc/server/doc.md create mode 100644 cmd/socks/client/doc.md create mode 100644 cmd/socks/doc.md create mode 100644 cmd/standard/client/doc.md create mode 100644 cmd/standard/doc.md create mode 100644 cmd/standard/server/doc.md create mode 100644 cmd/udp/client/doc.md create mode 100644 cmd/udp/doc.md create mode 100644 cmd/udp/server/doc.md create mode 100644 lib/doc.md create mode 100644 lib/http/client/doc.md create mode 100644 lib/http/doc.md create mode 100644 lib/http/server/doc.md create mode 100644 lib/irc/client/doc.md create mode 100644 lib/irc/doc.md create mode 100644 lib/irc/server/doc.md create mode 100644 lib/socks/client/doc.md create mode 100644 lib/socks/doc.md create mode 100644 lib/standard/client/doc.md create mode 100644 lib/standard/doc.md create mode 100644 lib/standard/server/doc.md create mode 100644 lib/tun/client/doc.md create mode 100644 lib/tun/doc.md create mode 100644 lib/udp/client/doc.md create mode 100644 lib/udp/doc.md create mode 100644 lib/udp/server/doc.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..8392d11 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,36 @@ +Contributing +============ + +Project Structure +----------------- + +```md +# Libraries: + +lib/http/client # high level http.Client implementation, filtering middleware, HTTP outproxy client, encrypted leaseSet middleware +lib/http/server # high level http.Server implementation +lib/http/server/listener # high level net.Listener implementation, filtering middleware +lib/irc/client # high level net.Conn implementation, filtering middleware, ??encrypted leaseSet middleware?? +lib/irc/socksclient # high level net.Dialer implementation, filtering middleware, ??encrypted leaseSet middleware?? +lib/irc/server # high level net.Listener implementation, filtering middleware +lib/socks/client # high level net.Conn implementation, filtering middleware, SOCKS outproxy client, ??encrypted leaseSet middleware?? +lib/standard/client # high level net.Dialer implementation, filtering middleware +lib/standard/server # high level net.Listener implementation, filtering middleware +lib/udp/client # high level net.Conn implementation, filtering middleware +lib/udp/server # high level net.Listener implementation, filtering middleware +lib/tun/client # high level songgao.Water implementation using SOCKS5 backend, configuration tooling + +# Commands + +cmd/http/client # starts an HTTP proxy listening on a port, forwarding requests to lib/http/client's http.Client +cmd/http/server # starts a client connected to a local port, forwarding requests to and lib/http/service/listener's custom net.Listener +cmd/irc/client # starts a proxy listening on a port, forwarding requests to lib/irc/client's custom net.Conn implementation +cmd/irc/socksclient # starts a SOCKS proxy listening on a port forwarding requests to lib/irc/socksclient's custom net.Dialer +cmd/irc/server # starts a client connected to a port, forwarding requests to lib/irc/server's custom net.Listener +cmd/socks/client # starts a SOCKS5 proxy lisening on a port forwarding requests to lib/irc/server's custom net.Dialer +cmd/standard/client # starts a proxy listening on a port forwarding requests to lib/standard/client's custom net.Conn +cmd/standard/server # start a client connected to a local port forwarding requests to lib/standard/server's custom net.Listener +cmd/udp/client # start a "quasi-server" which forwards datagrams to and from lib/udp/client's custom net.Conn +cmd/udp/server # start a "quasi-client" which forwards datagrams to and from lib/udp/server's custom net.Listener +cmd/tun/client # start a TUN device forwarding to a SOCKS proxy +``` \ No newline at end of file diff --git a/README.md b/README.md index a4414ce..e07aaf8 100644 --- a/README.md +++ b/README.md @@ -21,45 +21,13 @@ I2PTunnel Client - [] SOCKS Proxy Client - [] SOCKS IRC Client - [] UDP Client(Not in I2PTunnel Java) - - [] TUN Device(Not in I2PTunnel Java, may require root) + - [] TUN Device(Not in I2PTunnel Java, may require root or linux namespaces) Omitted: -------- - [] SOCKS4* Client -### Structure - -```md -# Libraries: - -lib/http/client # high level http.Client implementation, filtering middleware, encrypted leaseSet middleware -lib/http/server # high level http.Server implementation -lib/http/server/listener # high level net.Listener implementation, filtering middleware -lib/irc/client # high level net.Conn implementation, filtering middleware, ??encrypted leaseSet middleware?? -lib/irc/socksclient # high level net.Dialer implementation, filtering middleware, ??encrypted leaseSet middleware?? -lib/irc/server # high level net.Listener implementation, filtering middleware -lib/socks/client # high level net.Conn implementation, filtering middleware, ??encrypted leaseSet middleware?? -lib/standard/client # high level net.Dialer implementation, filtering middleware -lib/standard/server # high level net.Listener implementation, filtering middleware -lib/udp/client # high level net.Conn implementation, filtering middleware -lib/udp/server # high level net.Listener implementation, filtering middleware -lib/tun/client # high level songgao.Water implementation using SOCKS5 backend, configuration tooling - -# Commands - -cmd/http/client # starts an HTTP proxy listening on a port, forwarding requests to lib/http/client's http.Client -cmd/http/server # starts a client connected to a local port, forwarding requests to and lib/http/service/listener's custom net.Listener -cmd/irc/client # starts a proxy listening on a port, forwarding requests to lib/irc/client's custom net.Conn implementation -cmd/irc/socksclient # starts a SOCKS proxy listening on a port forwarding requests to lib/irc/socksclient's custom net.Dialer -cmd/irc/server # starts a client connected to a port, forwarding requests to lib/irc/server's custom net.Listener -cmd/socks/client # starts a SOCKS5 proxy lisening on a port forwarding requests to lib/irc/server's custom net.Dialer -cmd/standard/client # starts a proxy listening on a port forwarding requests to lib/standard/client's custom net.Conn -cmd/standard/server # start a client connected to a local port forwarding requests to lib/standard/server's custom net.Listener -cmd/udp/client # start a "quasi-server" which forwards datagrams to and from lib/udp/client's custom net.Conn -cmd/udp/server # start a "quasi-client" which forwards datagrams to and from lib/udp/server's custom net.Listener -``` - ### Usage ```Go diff --git a/cmd/doc.md b/cmd/doc.md new file mode 100644 index 0000000..e69de29 diff --git a/cmd/http/client/doc.md b/cmd/http/client/doc.md new file mode 100644 index 0000000..e69de29 diff --git a/cmd/http/doc.md b/cmd/http/doc.md new file mode 100644 index 0000000..e69de29 diff --git a/cmd/http/server/doc.md b/cmd/http/server/doc.md new file mode 100644 index 0000000..e69de29 diff --git a/cmd/irc/client/doc.md b/cmd/irc/client/doc.md new file mode 100644 index 0000000..e69de29 diff --git a/cmd/irc/doc.md b/cmd/irc/doc.md new file mode 100644 index 0000000..e69de29 diff --git a/cmd/irc/server/doc.md b/cmd/irc/server/doc.md new file mode 100644 index 0000000..e69de29 diff --git a/cmd/socks/client/doc.md b/cmd/socks/client/doc.md new file mode 100644 index 0000000..e69de29 diff --git a/cmd/socks/doc.md b/cmd/socks/doc.md new file mode 100644 index 0000000..e69de29 diff --git a/cmd/standard/client/doc.md b/cmd/standard/client/doc.md new file mode 100644 index 0000000..e69de29 diff --git a/cmd/standard/doc.md b/cmd/standard/doc.md new file mode 100644 index 0000000..e69de29 diff --git a/cmd/standard/server/doc.md b/cmd/standard/server/doc.md new file mode 100644 index 0000000..e69de29 diff --git a/cmd/udp/client/doc.md b/cmd/udp/client/doc.md new file mode 100644 index 0000000..e69de29 diff --git a/cmd/udp/doc.md b/cmd/udp/doc.md new file mode 100644 index 0000000..e69de29 diff --git a/cmd/udp/server/doc.md b/cmd/udp/server/doc.md new file mode 100644 index 0000000..e69de29 diff --git a/lib/doc.md b/lib/doc.md new file mode 100644 index 0000000..e69de29 diff --git a/lib/http/client/doc.md b/lib/http/client/doc.md new file mode 100644 index 0000000..e69de29 diff --git a/lib/http/doc.md b/lib/http/doc.md new file mode 100644 index 0000000..e69de29 diff --git a/lib/http/server/doc.md b/lib/http/server/doc.md new file mode 100644 index 0000000..e69de29 diff --git a/lib/irc/client/doc.md b/lib/irc/client/doc.md new file mode 100644 index 0000000..e69de29 diff --git a/lib/irc/doc.md b/lib/irc/doc.md new file mode 100644 index 0000000..e69de29 diff --git a/lib/irc/server/doc.md b/lib/irc/server/doc.md new file mode 100644 index 0000000..e69de29 diff --git a/lib/socks/client/doc.md b/lib/socks/client/doc.md new file mode 100644 index 0000000..e69de29 diff --git a/lib/socks/doc.md b/lib/socks/doc.md new file mode 100644 index 0000000..e69de29 diff --git a/lib/standard/client/doc.md b/lib/standard/client/doc.md new file mode 100644 index 0000000..e69de29 diff --git a/lib/standard/doc.md b/lib/standard/doc.md new file mode 100644 index 0000000..e69de29 diff --git a/lib/standard/server/doc.md b/lib/standard/server/doc.md new file mode 100644 index 0000000..e69de29 diff --git a/lib/tun/client/doc.md b/lib/tun/client/doc.md new file mode 100644 index 0000000..e69de29 diff --git a/lib/tun/doc.md b/lib/tun/doc.md new file mode 100644 index 0000000..e69de29 diff --git a/lib/udp/client/doc.md b/lib/udp/client/doc.md new file mode 100644 index 0000000..e69de29 diff --git a/lib/udp/doc.md b/lib/udp/doc.md new file mode 100644 index 0000000..e69de29 diff --git a/lib/udp/server/doc.md b/lib/udp/server/doc.md new file mode 100644 index 0000000..e69de29