wins/pkg/converters/binary.go

31 lines
500 B
Go

package converters
import (
"encoding/binary"
"net"
)
func InetNtoa(ipnr uint32, isBig bool) string {
ip := net.IPv4(0, 0, 0, 0)
var bo binary.ByteOrder
if isBig {
bo = binary.BigEndian
} else {
bo = binary.LittleEndian
}
bo.PutUint32([]byte(ip.To4()), ipnr)
return ip.String()
}
func InetAton(ip string, isBig bool) uint32 {
var bo binary.ByteOrder
if isBig {
bo = binary.BigEndian
} else {
bo = binary.LittleEndian
}
return bo.Uint32(
[]byte(net.ParseIP(ip).To4()),
)
}