Documentation
¶
Index ¶
- Constants
- Variables
- func ParseDestConnFrom(src net.Conn) (net.Conn, error)
- func Transfer(srcEncrypted net.Conn, closed bool, config *sstrans.ShadowSocksConfig, ...) (chan iokit.Direction, error)
- func TransferFromListen(lAddr *net.TCPAddr, config *sstrans.ShadowSocksConfig, keepListening bool, ...) error
- func TransferFromListenAddress(lAddress string, config *sstrans.ShadowSocksConfig, keepListening bool, ...) error
- type SSAlgorithm
- type SSConn
- type SSDetailPacket
- type SSServer
- type SSTemplate
- type SSTransferContext
Constants ¶
View Source
const MaxAddrLen = 1 + 1 + 255 + 2
Variables ¶
View Source
var ErrRepeatedSalt = errors.New("repeated salt detected")
ErrRepeatedSalt means detected a reused salt
Functions ¶
func TransferFromListen ¶
func TransferFromListen(lAddr *net.TCPAddr, config *sstrans.ShadowSocksConfig, keepListening bool, output *SSTransferContext) error
func TransferFromListenAddress ¶
func TransferFromListenAddress(lAddress string, config *sstrans.ShadowSocksConfig, keepListening bool, output *SSTransferContext) error
-s 'ss://AEAD_CHACHA20_POLY1305:123456@:8388' -verbose
Types ¶
type SSAlgorithm ¶
type SSAlgorithm struct {
Password *string
}
type SSConn ¶
type SSConn struct { net.Conn Password string AES aeskit.AESTemplate Algorithm SSAlgorithm // contains filtered or unexported fields }
type SSDetailPacket ¶
*
+----+-----+-------+------+----------+----------+ |VER | CMD | RSV | ATYP | DST.ADDR | DST.PORT | +----+-----+-------+------+----------+----------+ | 1 | 1 | X'00' | 1 | Variable | 2 | +----+-----+-------+------+----------+----------+
func (SSDetailPacket) GetAddr ¶
func (p SSDetailPacket) GetAddr() (string, error)
func (SSDetailPacket) GetAddress ¶
func (p SSDetailPacket) GetAddress() (string, error)
func (SSDetailPacket) GetPort ¶
func (p SSDetailPacket) GetPort() int
type SSServer ¶
func (SSServer) ParseIntoPacket ¶
func (s SSServer) ParseIntoPacket() (*SSDetailPacket, error)
type SSTemplate ¶
type SSTemplate struct {
AES aeskit.AESTemplate
}
type SSTransferContext ¶
type SSTransferContext struct { LAddr *net.TCPAddr DAddr *net.TCPAddr KeepListening bool LListener *net.TCPListener DListener *net.TCPListener StopChan *chan os.Signal }
func BuildTransfer ¶
func BuildTransfer(lAddress string, keepListening bool) (*SSTransferContext, error)
func (SSTransferContext) GetDListener ¶
func (t SSTransferContext) GetDListener() *net.TCPListener
func (SSTransferContext) GetLListener ¶
func (t SSTransferContext) GetLListener() *net.TCPListener
func (SSTransferContext) Stop ¶
func (t SSTransferContext) Stop()
func (SSTransferContext) TransferFromListen ¶
func (t SSTransferContext) TransferFromListen(config *sstrans.ShadowSocksConfig) error
Click to show internal directories.
Click to hide internal directories.