Improve error messages for Linux TUN and redirect operations

This commit is contained in:
世界 2026-03-15 14:43:38 +08:00
parent 82d14b26de
commit 1ab008e1e6
No known key found for this signature in database
GPG key ID: CD109927C34A63C4
9 changed files with 98 additions and 84 deletions

View file

@ -154,17 +154,24 @@ func (r *autoRedirect) Start() error {
}
r.cleanupNFTables()
err = r.setupNFTables()
if err == nil && r.tunOptions.AutoRedirectMarkMode {
if err != nil {
return E.Cause(err, "setup nftables")
}
if r.tunOptions.AutoRedirectMarkMode {
err = r.setupRedirectRoutes()
if err != nil {
r.cleanupNFTables()
return E.Cause(err, "setup redirect routes")
}
}
} else {
r.cleanupIPTables()
err = r.setupIPTables()
if err != nil {
return E.Cause(err, "setup iptables")
}
}
return err
return nil
}
func (r *autoRedirect) Close() error {