mirror of
https://github.com/p4gefau1t/trojan-go.git
synced 2024-04-21 12:21:34 +00:00
Merge branch 'dev' of github.com:p4gefau1t/trojan-go into dev
This commit is contained in:
@@ -42,7 +42,7 @@ func (o *apiController) listUsers(apiClient service.TrojanServerServiceClient) e
|
||||
return err
|
||||
}
|
||||
defer stream.CloseSend()
|
||||
result := []service.ListUsersResponse{}
|
||||
result := []*service.ListUsersResponse{}
|
||||
for {
|
||||
resp, err := stream.Recv()
|
||||
if err != nil {
|
||||
@@ -51,7 +51,7 @@ func (o *apiController) listUsers(apiClient service.TrojanServerServiceClient) e
|
||||
}
|
||||
return err
|
||||
}
|
||||
result = append(result, *resp)
|
||||
result = append(result, resp)
|
||||
}
|
||||
data, err := json.Marshal(result)
|
||||
common.Must(err)
|
||||
|
||||
@@ -94,7 +94,9 @@ func (s *Server) Close() error {
|
||||
|
||||
func NewServer(ctx context.Context, _ tunnel.Server) (*Server, error) {
|
||||
cfg := config.FromContext(ctx, Name).(*Config)
|
||||
ctx, cancel := context.WithCancel(ctx)
|
||||
var cancel context.CancelFunc
|
||||
ctx, cancel = context.WithCancel(ctx)
|
||||
|
||||
addr := tunnel.NewAddressFromHostPort("tcp", cfg.LocalHost, cfg.LocalPort)
|
||||
tcpListener, err := net.Listen("tcp", addr.String())
|
||||
if err != nil {
|
||||
|
||||
@@ -253,13 +253,15 @@ func loadCode(cfg *Config, prefix string) []codeInfo {
|
||||
|
||||
func NewClient(ctx context.Context, underlay tunnel.Client) (*Client, error) {
|
||||
cfg := config.FromContext(ctx, Name).(*Config)
|
||||
ctx, cancel := context.WithCancel(ctx)
|
||||
var cancel context.CancelFunc
|
||||
ctx, cancel = context.WithCancel(ctx)
|
||||
|
||||
direct, err := freedom.NewClient(ctx, nil)
|
||||
if err != nil {
|
||||
cancel()
|
||||
return nil, common.NewError("router failed to initialize raw client").Base(err)
|
||||
}
|
||||
|
||||
client := &Client{
|
||||
domains: [3][]*v2router.Domain{},
|
||||
cidrs: [3][]*v2router.CIDR{},
|
||||
|
||||
@@ -40,7 +40,7 @@ func GetClientHelloSpec(name string, websocket bool) (*ClientHelloSpec, error) {
|
||||
&SNIExtension{},
|
||||
&UtlsExtendedMasterSecretExtension{},
|
||||
&RenegotiationInfoExtension{Renegotiation: RenegotiateOnceAsClient},
|
||||
&SupportedCurvesExtension{[]CurveID{
|
||||
&SupportedCurvesExtension{Curves: []CurveID{
|
||||
CurveID(GREASE_PLACEHOLDER),
|
||||
X25519,
|
||||
CurveP256,
|
||||
@@ -63,21 +63,21 @@ func GetClientHelloSpec(name string, websocket bool) (*ClientHelloSpec, error) {
|
||||
PKCS1WithSHA512,
|
||||
}},
|
||||
&SCTExtension{},
|
||||
&KeyShareExtension{[]KeyShare{
|
||||
&KeyShareExtension{KeyShares: []KeyShare{
|
||||
{Group: CurveID(GREASE_PLACEHOLDER), Data: []byte{0}},
|
||||
{Group: X25519},
|
||||
}},
|
||||
&PSKKeyExchangeModesExtension{[]uint8{
|
||||
&PSKKeyExchangeModesExtension{Modes: []uint8{
|
||||
PskModeDHE,
|
||||
}},
|
||||
&SupportedVersionsExtension{[]uint16{
|
||||
&SupportedVersionsExtension{Versions: []uint16{
|
||||
GREASE_PLACEHOLDER,
|
||||
VersionTLS13,
|
||||
VersionTLS12,
|
||||
VersionTLS11,
|
||||
VersionTLS10,
|
||||
}},
|
||||
&FakeCertCompressionAlgsExtension{[]CertCompressionAlgo{
|
||||
&FakeCertCompressionAlgsExtension{Methods: []CertCompressionAlgo{
|
||||
CertCompressionBrotli,
|
||||
}},
|
||||
&UtlsGREASEExtension{},
|
||||
@@ -115,7 +115,7 @@ func GetClientHelloSpec(name string, websocket bool) (*ClientHelloSpec, error) {
|
||||
&SNIExtension{},
|
||||
&UtlsExtendedMasterSecretExtension{},
|
||||
&RenegotiationInfoExtension{Renegotiation: RenegotiateOnceAsClient},
|
||||
&SupportedCurvesExtension{[]CurveID{
|
||||
&SupportedCurvesExtension{Curves: []CurveID{
|
||||
X25519,
|
||||
CurveP256,
|
||||
CurveP384,
|
||||
@@ -129,11 +129,11 @@ func GetClientHelloSpec(name string, websocket bool) (*ClientHelloSpec, error) {
|
||||
&SessionTicketExtension{},
|
||||
&ALPNExtension{AlpnProtocols: []string{"h2", "http/1.1"}},
|
||||
&StatusRequestExtension{},
|
||||
&KeyShareExtension{[]KeyShare{
|
||||
&KeyShareExtension{KeyShares: []KeyShare{
|
||||
{Group: X25519},
|
||||
{Group: CurveP256},
|
||||
}},
|
||||
&SupportedVersionsExtension{[]uint16{
|
||||
&SupportedVersionsExtension{Versions: []uint16{
|
||||
VersionTLS13,
|
||||
VersionTLS12,
|
||||
VersionTLS11,
|
||||
@@ -151,8 +151,8 @@ func GetClientHelloSpec(name string, websocket bool) (*ClientHelloSpec, error) {
|
||||
ECDSAWithSHA1,
|
||||
PKCS1WithSHA1,
|
||||
}},
|
||||
&PSKKeyExchangeModesExtension{[]uint8{1 /*pskModeDHE*/}},
|
||||
&FakeRecordSizeLimitExtension{0x4001},
|
||||
&PSKKeyExchangeModesExtension{Modes: []uint8{1 /*pskModeDHE*/}},
|
||||
&FakeRecordSizeLimitExtension{Limit: 0x4001},
|
||||
&UtlsPaddingExtension{GetPaddingLen: BoringPaddingStyle},
|
||||
}}
|
||||
case "ios":
|
||||
@@ -209,7 +209,7 @@ func GetClientHelloSpec(name string, websocket bool) (*ClientHelloSpec, error) {
|
||||
&SupportedPointsExtension{SupportedPoints: []byte{
|
||||
0, //pointFormatUncompressed,
|
||||
}},
|
||||
&SupportedCurvesExtension{[]CurveID{
|
||||
&SupportedCurvesExtension{Curves: []CurveID{
|
||||
X25519,
|
||||
CurveP256,
|
||||
CurveP384,
|
||||
|
||||
Reference in New Issue
Block a user