gitextract_d00n_ui_/ ├── .github/ │ ├── ISSUE_TEMPLATE/ │ │ └── bug-report.md │ ├── linters/ │ │ └── .golangci.yml │ └── workflows/ │ ├── docker-build.yml │ ├── docker-nightly-build.yml │ ├── gh-pages.yml │ ├── linter.yml │ ├── nightly-build.yml │ ├── release-build.yml │ └── test.yml ├── .gitignore ├── Dockerfile ├── LICENSE ├── Makefile ├── README.md ├── api/ │ ├── api.go │ ├── control/ │ │ └── control.go │ └── service/ │ ├── api.pb.go │ ├── api.proto │ ├── api_grpc.pb.go │ ├── client.go │ ├── client_test.go │ ├── config.go │ ├── gen.sh │ ├── server.go │ └── server_test.go ├── common/ │ ├── common.go │ ├── error.go │ ├── geodata/ │ │ ├── cache.go │ │ ├── decode.go │ │ ├── decode_test.go │ │ ├── interface.go │ │ └── loader.go │ ├── io.go │ ├── io_test.go │ ├── net.go │ └── sync.go ├── component/ │ ├── api.go │ ├── base.go │ ├── client.go │ ├── custom.go │ ├── forward.go │ ├── mysql.go │ ├── nat.go │ ├── other.go │ └── server.go ├── config/ │ ├── config.go │ └── config_test.go ├── constant/ │ └── constant.go ├── docs/ │ ├── .gitignore │ ├── Makefile │ ├── archetypes/ │ │ └── default.md │ ├── config.toml │ └── content/ │ ├── _index.md │ ├── advance/ │ │ ├── _index.md │ │ ├── aead.md │ │ ├── api.md │ │ ├── customize-protocol-stack.md │ │ ├── forward.md │ │ ├── mux.md │ │ ├── nat.md │ │ ├── nginx-relay.md │ │ ├── plugin.md │ │ ├── router.md │ │ └── websocket.md │ ├── basic/ │ │ ├── _index.md │ │ ├── config.md │ │ ├── full-config.md │ │ └── trojan.md │ └── developer/ │ ├── _index.md │ ├── api.md │ ├── build.md │ ├── mux.md │ ├── overview.md │ ├── plugin.md │ ├── simplesocks.md │ ├── trojan.md │ ├── url.md │ └── websocket.md ├── easy/ │ └── easy.go ├── example/ │ ├── client.json │ ├── client.yaml │ ├── server.json │ ├── server.yaml │ ├── trojan-go.service │ └── trojan-go@.service ├── go.mod ├── go.sum ├── log/ │ ├── golog/ │ │ ├── buffer/ │ │ │ ├── buffer.go │ │ │ └── buffer_test.go │ │ ├── colorful/ │ │ │ ├── colorful.go │ │ │ └── colorful_test.go │ │ └── golog.go │ ├── log.go │ └── simplelog/ │ └── simplelog.go ├── main.go ├── option/ │ └── option.go ├── proxy/ │ ├── client/ │ │ ├── client.go │ │ └── config.go │ ├── config.go │ ├── custom/ │ │ ├── config.go │ │ └── custom.go │ ├── forward/ │ │ └── forward.go │ ├── nat/ │ │ ├── nat.go │ │ └── nat_stub.go │ ├── option.go │ ├── proxy.go │ ├── server/ │ │ ├── config.go │ │ └── server.go │ └── stack.go ├── redirector/ │ ├── redirector.go │ └── redirector_test.go ├── statistic/ │ ├── memory/ │ │ ├── config.go │ │ ├── memory.go │ │ └── memory_test.go │ ├── mysql/ │ │ ├── config.go │ │ └── mysql.go │ └── statistics.go ├── test/ │ ├── scenario/ │ │ ├── custom_test.go │ │ └── proxy_test.go │ └── util/ │ ├── target.go │ └── util.go ├── tunnel/ │ ├── adapter/ │ │ ├── config.go │ │ ├── server.go │ │ └── tunnel.go │ ├── dokodemo/ │ │ ├── config.go │ │ ├── conn.go │ │ ├── dokodemo_test.go │ │ ├── server.go │ │ └── tunnel.go │ ├── freedom/ │ │ ├── client.go │ │ ├── config.go │ │ ├── conn.go │ │ ├── freedom_test.go │ │ └── tunnel.go │ ├── http/ │ │ ├── http_test.go │ │ ├── server.go │ │ └── tunnel.go │ ├── metadata.go │ ├── mux/ │ │ ├── client.go │ │ ├── config.go │ │ ├── conn.go │ │ ├── mux_test.go │ │ ├── server.go │ │ └── tunnel.go │ ├── router/ │ │ ├── client.go │ │ ├── config.go │ │ ├── conn.go │ │ ├── data.go │ │ ├── router_test.go │ │ └── tunnel.go │ ├── shadowsocks/ │ │ ├── client.go │ │ ├── config.go │ │ ├── conn.go │ │ ├── server.go │ │ ├── shadowsocks_test.go │ │ └── tunnel.go │ ├── simplesocks/ │ │ ├── client.go │ │ ├── conn.go │ │ ├── server.go │ │ ├── simplesocks_test.go │ │ └── tunnel.go │ ├── socks/ │ │ ├── config.go │ │ ├── conn.go │ │ ├── server.go │ │ ├── socks_test.go │ │ └── tunnel.go │ ├── tls/ │ │ ├── client.go │ │ ├── config.go │ │ ├── fingerprint/ │ │ │ └── tls.go │ │ ├── server.go │ │ ├── tls_test.go │ │ └── tunnel.go │ ├── tproxy/ │ │ ├── config.go │ │ ├── conn.go │ │ ├── getsockopt.go │ │ ├── getsockopt_i386.go │ │ ├── server.go │ │ ├── tcp.go │ │ ├── tproxy_stub.go │ │ ├── tunnel.go │ │ └── udp.go │ ├── transport/ │ │ ├── client.go │ │ ├── config.go │ │ ├── conn.go │ │ ├── server.go │ │ ├── transport_test.go │ │ └── tunnel.go │ ├── trojan/ │ │ ├── client.go │ │ ├── config.go │ │ ├── packet.go │ │ ├── server.go │ │ ├── trojan_test.go │ │ └── tunnel.go │ ├── tunnel.go │ └── websocket/ │ ├── client.go │ ├── config.go │ ├── conn.go │ ├── server.go │ ├── tunnel.go │ └── websocket_test.go ├── url/ │ ├── option.go │ ├── option_test.go │ ├── share_link.go │ └── share_link_test.go └── version/ └── version.go