Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/MHSanaei/3x-ui.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorПавел <88343304+BlackkkMaster@users.noreply.github.com>2025-04-29 16:32:54 +0300
committerGitHub <noreply@github.com>2025-04-29 16:32:54 +0300
commit255ff9cc209155f1bb3878cf86b99d2d9269f52f (patch)
tree1abea8c87a0b2d2bd0972b8ab163277f68a3f9f7
parent2fbb1ca6c97cb4124910caf7d32ec21ff3ca87ab (diff)
refactror: add check ipv6 path
fix issues #1669 #2882
-rw-r--r--util/sys/sys_linux.go17
1 files changed, 13 insertions, 4 deletions
diff --git a/util/sys/sys_linux.go b/util/sys/sys_linux.go
index 097ff7c7..d4e6e8ae 100644
--- a/util/sys/sys_linux.go
+++ b/util/sys/sys_linux.go
@@ -44,11 +44,11 @@ func getLinesNum(filename string) (int, error) {
func GetTCPCount() (int, error) {
root := HostProc()
- tcp4, err := getLinesNum(fmt.Sprintf("%v/net/tcp", root))
+ tcp4, err := safeGetLinesNum(fmt.Sprintf("%v/net/tcp", root))
if err != nil {
return 0, err
}
- tcp6, err := getLinesNum(fmt.Sprintf("%v/net/tcp6", root))
+ tcp6, err := safeGetLinesNum(fmt.Sprintf("%v/net/tcp6", root))
if err != nil {
return 0, err
}
@@ -59,14 +59,23 @@ func GetTCPCount() (int, error) {
func GetUDPCount() (int, error) {
root := HostProc()
- udp4, err := getLinesNum(fmt.Sprintf("%v/net/udp", root))
+ udp4, err := safeGetLinesNum(fmt.Sprintf("%v/net/udp", root))
if err != nil {
return 0, err
}
- udp6, err := getLinesNum(fmt.Sprintf("%v/net/udp6", root))
+ udp6, err := safeGetLinesNum(fmt.Sprintf("%v/net/udp6", root))
if err != nil {
return 0, err
}
return udp4 + udp6, nil
}
+
+func safeGetLinesNum(path string) (int, error) {
+ if _, err := os.Stat(path); os.IsNotExist(err) {
+ return 0, nil
+ } else if err != nil {
+ return 0, err
+ }
+ return getLinesNum(path)
+}