SYMBOL INDEX (190 symbols across 16 files) FILE: config.go function initConfig (line 19) | func initConfig() (err error) { function poster (line 120) | func poster() { function tlsBytes (line 132) | func tlsBytes(cert, key string) (certBytes, keyBytes []byte) { FILE: main.go constant APP_VERSION (line 12) | APP_VERSION = "3.0" function main (line 14) | func main() { function Clean (line 21) | func Clean(s *services.Service) { FILE: services/args.go constant TYPE_TCP (line 7) | TYPE_TCP = "tcp" constant TYPE_UDP (line 8) | TYPE_UDP = "udp" constant TYPE_HTTP (line 9) | TYPE_HTTP = "http" constant TYPE_TLS (line 10) | TYPE_TLS = "tls" constant CONN_CONTROL (line 11) | CONN_CONTROL = uint8(1) constant CONN_SERVER (line 12) | CONN_SERVER = uint8(2) constant CONN_CLIENT (line 13) | CONN_CLIENT = uint8(3) type Args (line 16) | type Args struct type TunnelServerArgs (line 22) | type TunnelServerArgs struct type TunnelClientArgs (line 28) | type TunnelClientArgs struct type TunnelBridgeArgs (line 34) | type TunnelBridgeArgs struct type TCPArgs (line 38) | type TCPArgs struct method Protocol (line 70) | func (a *TCPArgs) Protocol() string { type HTTPArgs (line 47) | type HTTPArgs struct type UDPArgs (line 62) | type UDPArgs struct FILE: services/http.go type HTTP (line 13) | type HTTP struct method InitService (line 28) | func (s *HTTP) InitService() { method StopService (line 34) | func (s *HTTP) StopService() { method Start (line 39) | func (s *HTTP) Start(args interface{}) (err error) { method Clean (line 63) | func (s *HTTP) Clean() { method callback (line 66) | func (s *HTTP) callback(inConn net.Conn) { method OutToTCP (line 109) | func (s *HTTP) OutToTCP(useProxy bool, address string, inConn *net.Con... method OutToUDP (line 150) | func (s *HTTP) OutToUDP(inConn *net.Conn) (err error) { method InitOutConnPool (line 153) | func (s *HTTP) InitOutConnPool() { method InitBasicAuth (line 168) | func (s *HTTP) InitBasicAuth() (err error) { method IsBasicAuth (line 185) | func (s *HTTP) IsBasicAuth() bool { method IsDeadLoop (line 188) | func (s *HTTP) IsDeadLoop(inLocalAddr string, host string) bool { function NewHTTP (line 20) | func NewHTTP() Service { FILE: services/service.go type Service (line 9) | type Service interface type ServiceItem (line 13) | type ServiceItem struct function Regist (line 21) | func Regist(name string, s Service, args interface{}) { function Run (line 28) | func Run(name string) (service *ServiceItem, err error) { FILE: services/tcp.go type TCP (line 15) | type TCP struct method InitService (line 26) | func (s *TCP) InitService() { method StopService (line 29) | func (s *TCP) StopService() { method Start (line 34) | func (s *TCP) Start(args interface{}) (err error) { method Clean (line 59) | func (s *TCP) Clean() { method callback (line 62) | func (s *TCP) callback(inConn net.Conn) { method OutToTCP (line 84) | func (s *TCP) OutToTCP(inConn *net.Conn) (err error) { method OutToUDP (line 108) | func (s *TCP) OutToUDP(inConn *net.Conn) (err error) { method InitOutConnPool (line 156) | func (s *TCP) InitOutConnPool() { function NewTCP (line 20) | func NewTCP() Service { FILE: services/tunnel_bridge.go type BridgeItem (line 15) | type BridgeItem struct type TunnelBridge (line 22) | type TunnelBridge struct method InitService (line 34) | func (s *TunnelBridge) InitService() { method Check (line 37) | func (s *TunnelBridge) Check() { method StopService (line 43) | func (s *TunnelBridge) StopService() { method Start (line 46) | func (s *TunnelBridge) Start(args interface{}) (err error) { method Clean (line 99) | func (s *TunnelBridge) Clean() { method ClientConn (line 102) | func (s *TunnelBridge) ClientConn(inConn *net.Conn, key string) { method ServerConn (line 106) | func (s *TunnelBridge) ServerConn(inConn *net.Conn, key string) { method ClientControlConn (line 110) | func (s *TunnelBridge) ClientControlConn(inConn *net.Conn, key string) { method ConnChn (line 120) | func (s *TunnelBridge) ConnChn(key string, typ uint8) (chn chan *net.C... method ChnDeamon (line 139) | func (s *TunnelBridge) ChnDeamon(item *BridgeItem) { function NewTunnelBridge (line 27) | func NewTunnelBridge() Service { FILE: services/tunnel_client.go type TunnelClient (line 15) | type TunnelClient struct method InitService (line 25) | func (s *TunnelClient) InitService() { method Check (line 27) | func (s *TunnelClient) Check() { method StopService (line 37) | func (s *TunnelClient) StopService() { method Start (line 39) | func (s *TunnelClient) Start(args interface{}) (err error) { method Clean (line 77) | func (s *TunnelClient) Clean() { method GetInConn (line 80) | func (s *TunnelClient) GetInConn(typ uint8) (outConn net.Conn, err err... method GetConn (line 100) | func (s *TunnelClient) GetConn() (conn net.Conn, err error) { method ServeUDP (line 108) | func (s *TunnelClient) ServeUDP() { method processUDPPacket (line 136) | func (s *TunnelClient) processUDPPacket(inConn *net.Conn, srcAddr stri... method ServeConn (line 172) | func (s *TunnelClient) ServeConn() { function NewTunnelClient (line 19) | func NewTunnelClient() Service { FILE: services/tunnel_server.go type TunnelServer (line 18) | type TunnelServer struct method InitService (line 37) | func (s *TunnelServer) InitService() { method Check (line 40) | func (s *TunnelServer) Check() { method StopService (line 50) | func (s *TunnelServer) StopService() { method Start (line 52) | func (s *TunnelServer) Start(args interface{}) (err error) { method Clean (line 107) | func (s *TunnelServer) Clean() { method GetOutConn (line 110) | func (s *TunnelServer) GetOutConn() (outConn net.Conn, err error) { method GetConn (line 130) | func (s *TunnelServer) GetConn() (conn net.Conn, err error) { method UDPConnDeamon (line 138) | func (s *TunnelServer) UDPConnDeamon() { function NewTunnelServer (line 24) | func NewTunnelServer() Service { type UDPItem (line 31) | type UDPItem struct FILE: services/udp.go type UDP (line 17) | type UDP struct method InitService (line 30) | func (s *UDP) InitService() { method StopService (line 35) | func (s *UDP) StopService() { method Start (line 40) | func (s *UDP) Start(args interface{}) (err error) { method Clean (line 62) | func (s *UDP) Clean() { method callback (line 65) | func (s *UDP) callback(packet []byte, localAddr, srcAddr *net.UDPAddr) { method GetConn (line 86) | func (s *UDP) GetConn(connKey string) (conn net.Conn, isNew bool, err ... method OutToTCP (line 101) | func (s *UDP) OutToTCP(packet []byte, localAddr, srcAddr *net.UDPAddr)... method OutToUDP (line 162) | func (s *UDP) OutToUDP(packet []byte, localAddr, srcAddr *net.UDPAddr)... method InitOutConnPool (line 197) | func (s *UDP) InitOutConnPool() { function NewUDP (line 24) | func NewUDP() Service { FILE: utils/functions.go function IoBind (line 25) | func IoBind(dst io.ReadWriter, src io.ReadWriter, fn func(isSrcErr bool,... function ioCopy (line 79) | func ioCopy(dst io.Writer, src io.Reader, fn ...func(count int)) (writte... function TlsConnectHost (line 108) | func TlsConnectHost(host string, timeout int, certBytes, keyBytes []byte... function TlsConnect (line 114) | func TlsConnect(host string, port, timeout int, certBytes, keyBytes []by... function getRequestTlsConfig (line 125) | func getRequestTlsConfig(certBytes, keyBytes []byte) (conf *tls.Config, ... function ConnectHost (line 145) | func ConnectHost(hostAndPort string, timeout int) (conn net.Conn, err er... function ListenTls (line 149) | func ListenTls(ip string, port int, certBytes, keyBytes []byte) (ln *net... function PathExists (line 172) | func PathExists(_path string) bool { function HTTPGet (line 179) | func HTTPGet(URL string, timeout int) (err error) { function CloseConn (line 197) | func CloseConn(conn *net.Conn) { function Keygen (line 203) | func Keygen() (err error) { function GetAllInterfaceAddr (line 220) | func GetAllInterfaceAddr() ([]net.IP, error) { function UDPPacket (line 264) | func UDPPacket(srcAddr string, packet []byte) []byte { function ReadUDPPacket (line 275) | func ReadUDPPacket(conn *net.Conn) (srcAddr string, packet []byte, err e... FILE: utils/io-limiter.go constant burstLimit (line 11) | burstLimit = 1000 * 1000 * 1000 type Reader (line 13) | type Reader struct method SetRateLimit (line 58) | func (s *Reader) SetRateLimit(bytesPerSec float64) { method Read (line 64) | func (s *Reader) Read(p []byte) (int, error) { type Writer (line 19) | type Writer struct method SetRateLimit (line 79) | func (s *Writer) SetRateLimit(bytesPerSec float64) { method Write (line 85) | func (s *Writer) Write(p []byte) (int, error) { function NewReader (line 26) | func NewReader(r io.Reader) *Reader { function NewReaderWithContext (line 34) | func NewReaderWithContext(r io.Reader, ctx context.Context) *Reader { function NewWriter (line 42) | func NewWriter(w io.Writer) *Writer { function NewWriterWithContext (line 50) | func NewWriterWithContext(w io.Writer, ctx context.Context) *Writer { FILE: utils/map.go type ConcurrentMap (line 12) | type ConcurrentMap method GetShard (line 30) | func (m ConcurrentMap) GetShard(key string) *ConcurrentMapShared { method MSet (line 34) | func (m ConcurrentMap) MSet(data map[string]interface{}) { method Set (line 44) | func (m ConcurrentMap) Set(key string, value interface{}) { method Upsert (line 59) | func (m ConcurrentMap) Upsert(key string, value interface{}, cb Upsert... method SetIfAbsent (line 70) | func (m ConcurrentMap) SetIfAbsent(key string, value interface{}) bool { method Get (line 83) | func (m ConcurrentMap) Get(key string) (interface{}, bool) { method Count (line 94) | func (m ConcurrentMap) Count() int { method Has (line 106) | func (m ConcurrentMap) Has(key string) bool { method Remove (line 117) | func (m ConcurrentMap) Remove(key string) { method Pop (line 126) | func (m ConcurrentMap) Pop(key string) (v interface{}, exists bool) { method IsEmpty (line 137) | func (m ConcurrentMap) IsEmpty() bool { method Iter (line 150) | func (m ConcurrentMap) Iter() <-chan Tuple { method IterBuffered (line 158) | func (m ConcurrentMap) IterBuffered() <-chan Tuple { method Items (line 212) | func (m ConcurrentMap) Items() map[string]interface{} { method IterCb (line 231) | func (m ConcurrentMap) IterCb(fn IterCb) { method Keys (line 243) | func (m ConcurrentMap) Keys() []string { method MarshalJSON (line 274) | func (m ConcurrentMap) MarshalJSON() ([]byte, error) { type ConcurrentMapShared (line 15) | type ConcurrentMapShared struct function NewConcurrentMap (line 21) | func NewConcurrentMap() ConcurrentMap { type UpsertCb (line 56) | type UpsertCb type Tuple (line 142) | type Tuple struct function snapshot (line 173) | func snapshot(m ConcurrentMap) (chans []chan Tuple) { function fanIn (line 196) | func fanIn(chans []chan Tuple, out chan Tuple) { type IterCb (line 227) | type IterCb function fnv32 (line 285) | func fnv32(key string) uint32 { FILE: utils/pool.go type ConnPool (line 10) | type ConnPool interface type poolConfig (line 16) | type poolConfig struct function NewConnPool (line 24) | func NewConnPool(poolConfig poolConfig) (pool ConnPool, err error) { type netPool (line 40) | type netPool struct method initAutoFill (line 46) | func (p *netPool) initAutoFill(async bool) (err error) { method Get (line 94) | func (p *netPool) Get() (conn interface{}, err error) { method Put (line 118) | func (p *netPool) Put(conn interface{}) { method ReleaseAll (line 133) | func (p *netPool) ReleaseAll() { method Len (line 143) | func (p *netPool) Len() (length int) { FILE: utils/serve-channel.go type ServerChannel (line 10) | type ServerChannel struct method SetErrAcceptHandler (line 27) | func (sc *ServerChannel) SetErrAcceptHandler(fn func(err error)) { method ListenTls (line 30) | func (sc *ServerChannel) ListenTls(certBytes, keyBytes []byte, fn func... method ListenTCP (line 62) | func (sc *ServerChannel) ListenTCP(fn func(conn net.Conn)) (err error) { method ListenUDP (line 94) | func (sc *ServerChannel) ListenUDP(fn func(packet []byte, localAddr, s... function NewServerChannel (line 18) | func NewServerChannel(ip string, port int) ServerChannel { FILE: utils/structs.go type Checker (line 17) | type Checker struct method loadMap (line 56) | func (c *Checker) loadMap(f string) (dataMap ConcurrentMap) { method start (line 73) | func (c *Checker) start() { method isNeedCheck (line 104) | func (c *Checker) isNeedCheck(item CheckerItem) bool { method IsBlocked (line 114) | func (c *Checker) IsBlocked(address string) (blocked bool, failN, succ... method domainIsInMap (line 133) | func (c *Checker) domainIsInMap(address string, blockedMap bool) bool { method Add (line 156) | func (c *Checker) Add(address string, isHTTPS bool, method, URL string... type CheckerItem (line 24) | type CheckerItem struct function NewChecker (line 38) | func NewChecker(timeout int, interval int64, blockedFile, directFile str... type BasicAuth (line 176) | type BasicAuth struct method AddFromFile (line 185) | func (ba *BasicAuth) AddFromFile(file string) (n int, err error) { method Add (line 204) | func (ba *BasicAuth) Add(userpassArr []string) (n int) { method Check (line 215) | func (ba *BasicAuth) Check(userpass string) (ok bool) { method Total (line 224) | func (ba *BasicAuth) Total() (n int) { function NewBasicAuth (line 180) | func NewBasicAuth() BasicAuth { type HTTPRequest (line 229) | type HTTPRequest struct method HTTP (line 279) | func (req *HTTPRequest) HTTP() (err error) { method HTTPS (line 294) | func (req *HTTPRequest) HTTPS() (err error) { method HTTPSReply (line 300) | func (req *HTTPRequest) HTTPSReply() (err error) { method IsHTTPS (line 304) | func (req *HTTPRequest) IsHTTPS() bool { method BasicAuth (line 308) | func (req *HTTPRequest) BasicAuth() (err error) { method getHTTPURL (line 340) | func (req *HTTPRequest) getHTTPURL() (URL string, err error) { method getHeader (line 351) | func (req *HTTPRequest) getHeader(key string) (val string, err error) { method addPortIfNot (line 369) | func (req *HTTPRequest) addPortIfNot() (newHost string) { function NewHTTPRequest (line 240) | func NewHTTPRequest(inConn *net.Conn, bufSize int, isBasicAuth bool, bas... type OutPool (line 383) | type OutPool struct method getConn (line 431) | func (op *OutPool) getConn() (conn interface{}, err error) { method initPoolDeamon (line 444) | func (op *OutPool) initPoolDeamon() { function NewOutPool (line 393) | func NewOutPool(dur int, isTLS bool, certBytes, keyBytes []byte, address...