Add system stack

This commit is contained in:
世界 2022-09-06 19:24:47 +08:00
parent 0efafc9963
commit 2f15b0cd3f
No known key found for this signature in database
GPG key ID: CD109927C34A63C4
26 changed files with 1713 additions and 79 deletions

View file

@ -41,25 +41,20 @@ type GVisorTun interface {
}
func NewGVisor(
ctx context.Context,
tun Tun,
tunMtu uint32,
endpointIndependentNat bool,
udpTimeout int64,
handler Handler,
options StackOptions,
) (Stack, error) {
gTun, isGTun := tun.(GVisorTun)
gTun, isGTun := options.Tun.(GVisorTun)
if !isGTun {
return nil, ErrGVisorUnsupported
}
return &GVisor{
ctx: ctx,
ctx: options.Context,
tun: gTun,
tunMtu: tunMtu,
endpointIndependentNat: endpointIndependentNat,
udpTimeout: udpTimeout,
handler: handler,
tunMtu: options.MTU,
endpointIndependentNat: options.EndpointIndependentNat,
udpTimeout: options.UDPTimeout,
handler: options.Handler,
}, nil
}