mirror of
https://github.com/nadoo/glider.git
synced 2025-02-23 17:35:40 +08:00
general: use dialer's address if there's no self address
This commit is contained in:
parent
f6fae13d88
commit
e320dc5508
@ -212,7 +212,12 @@ func (s *HTTP) servHTTPS(method, requestURI, proto string, c net.Conn) {
|
||||
}
|
||||
|
||||
// Addr returns forwarder's address
|
||||
func (s *HTTP) Addr() string { return s.addr }
|
||||
func (s *HTTP) Addr() string {
|
||||
if s.addr == "" {
|
||||
return s.dialer.Addr()
|
||||
}
|
||||
return s.addr
|
||||
}
|
||||
|
||||
// NextDialer returns the next dialer
|
||||
func (s *HTTP) NextDialer(dstAddr string) proxy.Dialer { return s.dialer.NextDialer(dstAddr) }
|
||||
|
@ -213,7 +213,12 @@ func (s *SOCKS5) ListenAndServeUDP() {
|
||||
}
|
||||
|
||||
// Addr returns forwarder's address
|
||||
func (s *SOCKS5) Addr() string { return s.addr }
|
||||
func (s *SOCKS5) Addr() string {
|
||||
if s.addr == "" {
|
||||
return s.dialer.Addr()
|
||||
}
|
||||
return s.addr
|
||||
}
|
||||
|
||||
// NextDialer returns the next dialer
|
||||
func (s *SOCKS5) NextDialer(dstAddr string) proxy.Dialer { return s.dialer.NextDialer(dstAddr) }
|
||||
|
@ -231,7 +231,12 @@ func ListCipher() string {
|
||||
}
|
||||
|
||||
// Addr returns forwarder's address
|
||||
func (s *SS) Addr() string { return s.addr }
|
||||
func (s *SS) Addr() string {
|
||||
if s.addr == "" {
|
||||
return s.dialer.Addr()
|
||||
}
|
||||
return s.addr
|
||||
}
|
||||
|
||||
// NextDialer returns the next dialer
|
||||
func (s *SS) NextDialer(dstAddr string) proxy.Dialer { return s.dialer.NextDialer(dstAddr) }
|
||||
|
@ -24,9 +24,9 @@ const (
|
||||
|
||||
// SEC types
|
||||
const (
|
||||
SecTypeUnknown byte = 0
|
||||
SecTypeLegacy byte = 1
|
||||
SecTypeAuto byte = 2
|
||||
SecTypeUnknown byte = 0 // don't use in client
|
||||
SecTypeLegacy byte = 1 // don't use in client (aes-128-cfb)
|
||||
SecTypeAuto byte = 2 // don't use in client
|
||||
SecTypeAES128GCM byte = 3
|
||||
SecTypeChacha20Poly1305 byte = 4
|
||||
SecTypeNone byte = 5
|
||||
|
@ -8,8 +8,6 @@ import (
|
||||
"errors"
|
||||
"strings"
|
||||
"time"
|
||||
|
||||
"github.com/nadoo/glider/common/log"
|
||||
)
|
||||
|
||||
// User of vmess client
|
||||
@ -32,7 +30,6 @@ func nextID(oldID [16]byte) (newID [16]byte) {
|
||||
for {
|
||||
md5hash.Sum(newID[:0])
|
||||
if !bytes.Equal(oldID[:], newID[:]) {
|
||||
log.F("oldID: %x, newID: %x", oldID, newID)
|
||||
return
|
||||
}
|
||||
md5hash.Write([]byte("533eff8a-4113-4b10-b5ce-0f5d76b98cd2"))
|
||||
|
@ -82,7 +82,12 @@ func NewVMessDialer(s string, dialer proxy.Dialer) (proxy.Dialer, error) {
|
||||
}
|
||||
|
||||
// Addr returns forwarder's address
|
||||
func (s *VMess) Addr() string { return s.addr }
|
||||
func (s *VMess) Addr() string {
|
||||
if s.addr == "" {
|
||||
return s.dialer.Addr()
|
||||
}
|
||||
return s.addr
|
||||
}
|
||||
|
||||
// NextDialer returns the next dialer
|
||||
func (s *VMess) NextDialer(dstAddr string) proxy.Dialer { return s.dialer.NextDialer(dstAddr) }
|
||||
|
Loading…
Reference in New Issue
Block a user