]> Sergey Matveev's repositories - vors.git/blob - internal/resolve.go
Forgotten version raise
[vors.git] / internal / resolve.go
1 package internal
2
3 import (
4         "log"
5         "net"
6 )
7
8 const DefaultPort = 12978
9
10 var PreferIPv4 bool
11
12 func MustResolveTCP(s string) (addr *net.TCPAddr) {
13         var err error
14         if !PreferIPv4 {
15                 addr, err = net.ResolveTCPAddr("tcp6", s)
16                 if err == nil {
17                         return addr
18                 }
19         }
20         addr, err = net.ResolveTCPAddr("tcp4", s)
21         if err != nil {
22                 log.Fatal(err)
23         }
24         return
25 }
26
27 func MustResolveUDP(s string) (addr *net.UDPAddr) {
28         var err error
29         if !PreferIPv4 {
30                 addr, err = net.ResolveUDPAddr("udp6", s)
31                 if err == nil {
32                         return addr
33                 }
34         }
35         addr, err = net.ResolveUDPAddr("udp4", s)
36         if err != nil {
37                 log.Fatal(err)
38         }
39         return
40 }