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
|
// 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
|
// NextDialer returns the next dialer
|
||||||
func (s *HTTP) NextDialer(dstAddr string) proxy.Dialer { return s.dialer.NextDialer(dstAddr) }
|
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
|
// 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
|
// NextDialer returns the next dialer
|
||||||
func (s *SOCKS5) NextDialer(dstAddr string) proxy.Dialer { return s.dialer.NextDialer(dstAddr) }
|
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
|
// 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
|
// NextDialer returns the next dialer
|
||||||
func (s *SS) NextDialer(dstAddr string) proxy.Dialer { return s.dialer.NextDialer(dstAddr) }
|
func (s *SS) NextDialer(dstAddr string) proxy.Dialer { return s.dialer.NextDialer(dstAddr) }
|
||||||
|
@ -24,9 +24,9 @@ const (
|
|||||||
|
|
||||||
// SEC types
|
// SEC types
|
||||||
const (
|
const (
|
||||||
SecTypeUnknown byte = 0
|
SecTypeUnknown byte = 0 // don't use in client
|
||||||
SecTypeLegacy byte = 1
|
SecTypeLegacy byte = 1 // don't use in client (aes-128-cfb)
|
||||||
SecTypeAuto byte = 2
|
SecTypeAuto byte = 2 // don't use in client
|
||||||
SecTypeAES128GCM byte = 3
|
SecTypeAES128GCM byte = 3
|
||||||
SecTypeChacha20Poly1305 byte = 4
|
SecTypeChacha20Poly1305 byte = 4
|
||||||
SecTypeNone byte = 5
|
SecTypeNone byte = 5
|
||||||
|
@ -8,8 +8,6 @@ import (
|
|||||||
"errors"
|
"errors"
|
||||||
"strings"
|
"strings"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/nadoo/glider/common/log"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
// User of vmess client
|
// User of vmess client
|
||||||
@ -32,7 +30,6 @@ func nextID(oldID [16]byte) (newID [16]byte) {
|
|||||||
for {
|
for {
|
||||||
md5hash.Sum(newID[:0])
|
md5hash.Sum(newID[:0])
|
||||||
if !bytes.Equal(oldID[:], newID[:]) {
|
if !bytes.Equal(oldID[:], newID[:]) {
|
||||||
log.F("oldID: %x, newID: %x", oldID, newID)
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
md5hash.Write([]byte("533eff8a-4113-4b10-b5ce-0f5d76b98cd2"))
|
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
|
// 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
|
// NextDialer returns the next dialer
|
||||||
func (s *VMess) NextDialer(dstAddr string) proxy.Dialer { return s.dialer.NextDialer(dstAddr) }
|
func (s *VMess) NextDialer(dstAddr string) proxy.Dialer { return s.dialer.NextDialer(dstAddr) }
|
||||||
|
Loading…
Reference in New Issue
Block a user