Improve: nicer tun info for RESTful api

Let the restful api still get TunConf even when tun is off.
Otherwise the api will return the default values,
instead of the values that actually take effect after enable.

* Due to this problem, yacd changes the displayed value
back to gvisor immediately after the user selects tun stack.
This commit is contained in:
YanceyChiew 2023-08-15 09:10:41 +08:00 committed by Larvan2
parent 414d8f2162
commit 54fee7bd3a
2 changed files with 2 additions and 1 deletions

View file

@ -129,7 +129,7 @@ func GetGeneral() *config.General {
RedirPort: ports.RedirPort, RedirPort: ports.RedirPort,
TProxyPort: ports.TProxyPort, TProxyPort: ports.TProxyPort,
MixedPort: ports.MixedPort, MixedPort: ports.MixedPort,
Tun: listener.GetTunConf(), Tun: listener.LastTunConf,
TuicServer: listener.GetTuicConf(), TuicServer: listener.GetTuicConf(),
ShadowSocksConfig: ports.ShadowSocksConfig, ShadowSocksConfig: ports.ShadowSocksConfig,
VmessConfig: ports.VmessConfig, VmessConfig: ports.VmessConfig,

View file

@ -516,6 +516,7 @@ func ReCreateTun(tunConf LC.Tun, tcpIn chan<- C.ConnContext, udpIn chan<- C.Pack
defer func() { defer func() {
if err != nil { if err != nil {
log.Errorln("Start TUN listening error: %s", err.Error()) log.Errorln("Start TUN listening error: %s", err.Error())
tunConf.Enable = false
Cleanup(false) Cleanup(false)
} }
}() }()