fix: Fix connection interface binding, JSON lease DB
This commit is contained in:
@@ -1,5 +1,37 @@
|
||||
package types
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"net"
|
||||
)
|
||||
|
||||
type TxId [4]byte
|
||||
type Ipv4Addr [4]byte
|
||||
type HwAddr [16]byte
|
||||
|
||||
const (
|
||||
ServerPort = 67
|
||||
ClientPort = 68
|
||||
)
|
||||
|
||||
func Ipv4AddrFromNetIP(ip net.IP) Ipv4Addr {
|
||||
ipv4 := ip.To4()
|
||||
return Ipv4Addr{ipv4[0], ipv4[1], ipv4[2], ipv4[3]}
|
||||
}
|
||||
|
||||
func (addr Ipv4Addr) ToNetIPv4() net.IP {
|
||||
return net.IPv4(addr[0], addr[1], addr[2], addr[3])
|
||||
}
|
||||
|
||||
func (addr Ipv4Addr) String() string {
|
||||
return addr.ToNetIPv4().String()
|
||||
}
|
||||
|
||||
func (addr HwAddr) String() string {
|
||||
return fmt.Sprintf("%02x:%02x:%02x:%02x:%02x:%02x", addr[0], addr[1], addr[2], addr[3], addr[4], addr[5])
|
||||
}
|
||||
|
||||
func HwAddrFromString(s string) (addr HwAddr, err error) {
|
||||
_, err = fmt.Sscanf(s, "%02x:%02x:%02x:%02x:%02x:%02x", &addr[0], &addr[1], &addr[2], &addr[3], &addr[4], &addr[5])
|
||||
return addr, err
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user