dae/control/addr.go

27 lines
760 B
Go
Raw Normal View History

2023-02-01 12:14:22 +07:00
/*
* SPDX-License-Identifier: AGPL-3.0-only
* Copyright (c) 2022-2023, v2rayA Organization <team@v2raya.org>
2023-02-01 12:14:22 +07:00
*/
package control
import (
2023-02-13 11:54:04 +07:00
"github.com/v2rayA/dae/common/consts"
2023-02-01 12:14:22 +07:00
"net"
"net/netip"
"strconv"
)
2023-02-13 11:54:04 +07:00
func RefineSourceToShow(src netip.AddrPort, dst netip.Addr, lanWanFlag consts.LanWanFlag) (srcToShow string) {
if lanWanFlag == consts.LanWanFlag_IsWan || src.Addr() == dst {
2023-02-01 12:14:22 +07:00
// If nothing else, this means this packet is sent from localhost.
return net.JoinHostPort("localhost", strconv.Itoa(int(src.Port())))
} else {
return RefineAddrPortToShow(src)
}
}
func RefineAddrPortToShow(addrPort netip.AddrPort) (srcToShow string) {
return net.JoinHostPort(net.IP(addrPort.Addr().AsSlice()).String(), strconv.Itoa(int(addrPort.Port())))
}