mirror of
https://github.com/xjasonlyu/tun2socks.git
synced 2025-10-05 16:56:54 +08:00
Chore: with engine
This commit is contained in:
@@ -62,13 +62,11 @@ func (e *engine) start() error {
|
||||
}
|
||||
|
||||
for _, f := range []func() error{
|
||||
e.applyLogLevel,
|
||||
e.applyDialer,
|
||||
e.applyRestAPI,
|
||||
e.applyUDPTimeout,
|
||||
e.applyProxy,
|
||||
e.applyDevice,
|
||||
e.applyStack,
|
||||
e.withGeneral,
|
||||
e.withRestAPI,
|
||||
e.withProxy,
|
||||
e.withDevice,
|
||||
e.withStack,
|
||||
} {
|
||||
if err := f(); err != nil {
|
||||
return err
|
||||
@@ -92,28 +90,30 @@ func (e *engine) insert(k *Key) {
|
||||
e.Key = k
|
||||
}
|
||||
|
||||
func (e *engine) applyLogLevel() error {
|
||||
func (e *engine) withGeneral() error {
|
||||
level, err := log.ParseLevel(e.LogLevel)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
log.SetLevel(level)
|
||||
return nil
|
||||
}
|
||||
|
||||
func (e *engine) applyDialer() error {
|
||||
if e.Interface != "" {
|
||||
dialer.DefaultInterfaceName.Store(e.Interface)
|
||||
log.Infof("[DIALER] bind to interface: %s", e.Interface)
|
||||
}
|
||||
|
||||
if e.Mark != 0 {
|
||||
dialer.DefaultRoutingMark.Store(int32(e.Mark))
|
||||
log.Infof("[DIALER] set fwmark: %#x", e.Mark)
|
||||
}
|
||||
|
||||
if e.UDPTimeout > 0 {
|
||||
tunnel.SetUDPTimeout(e.UDPTimeout)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (e *engine) applyRestAPI() error {
|
||||
func (e *engine) withRestAPI() error {
|
||||
if e.RestAPI != "" {
|
||||
u, err := parseRestAPI(e.RestAPI)
|
||||
if err != nil {
|
||||
@@ -131,14 +131,7 @@ func (e *engine) applyRestAPI() error {
|
||||
return nil
|
||||
}
|
||||
|
||||
func (e *engine) applyUDPTimeout() error {
|
||||
if e.UDPTimeout > 0 {
|
||||
tunnel.SetUDPTimeout(e.UDPTimeout)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (e *engine) applyProxy() (err error) {
|
||||
func (e *engine) withProxy() (err error) {
|
||||
if e.Proxy == "" {
|
||||
return errors.New("empty proxy")
|
||||
}
|
||||
@@ -148,7 +141,7 @@ func (e *engine) applyProxy() (err error) {
|
||||
return
|
||||
}
|
||||
|
||||
func (e *engine) applyDevice() (err error) {
|
||||
func (e *engine) withDevice() (err error) {
|
||||
if e.Device == "" {
|
||||
return errors.New("empty device")
|
||||
}
|
||||
@@ -157,7 +150,7 @@ func (e *engine) applyDevice() (err error) {
|
||||
return
|
||||
}
|
||||
|
||||
func (e *engine) applyStack() (err error) {
|
||||
func (e *engine) withStack() (err error) {
|
||||
defer func() {
|
||||
if err == nil {
|
||||
log.Infof(
|
||||
|
Reference in New Issue
Block a user