Fix: should not log rule when rule = nil

This commit is contained in:
gVisor bot 2020-11-22 23:38:12 +08:00
parent 212a3de654
commit 0649a919f4

View file

@ -218,7 +218,11 @@ func handleUDPConn(packet *inbound.PacketAdapter) {
rawPc, err := proxy.DialUDP(metadata)
if err != nil {
log.Warnln("[UDP] dial %s (match %s/%s) to %s error: %s", proxy.Name(), rule.RuleType().String(), rule.Payload(), metadata.String(), err.Error())
if rule == nil {
log.Warnln("[UDP] dial %s to %s error: %s", proxy.Name(), metadata.String(), err.Error())
} else {
log.Warnln("[UDP] dial %s (match %s/%s) to %s error: %s", proxy.Name(), rule.RuleType().String(), rule.Payload(), metadata.String(), err.Error())
}
return
}
pc := newUDPTracker(rawPc, DefaultManager, metadata, rule)
@ -263,7 +267,11 @@ func handleTCPConn(localConn C.ServerAdapter) {
remoteConn, err := proxy.Dial(metadata)
if err != nil {
log.Warnln("[TCP] dial %s (match %s/%s) to %s error: %s", proxy.Name(), rule.RuleType().String(), rule.Payload(), metadata.String(), err.Error())
if rule == nil {
log.Warnln("[TCP] dial %s to %s error: %s", proxy.Name(), metadata.String(), err.Error())
} else {
log.Warnln("[TCP] dial %s (match %s/%s) to %s error: %s", proxy.Name(), rule.RuleType().String(), rule.Payload(), metadata.String(), err.Error())
}
return
}
remoteConn = newTCPTracker(remoteConn, DefaultManager, metadata, rule)