Versions in this module Expand all Collapse all v1 v1.0.0 Dec 6, 2022 Changes in this version + const MaxEpochDiff + const MaxTimeDiff + const MessageTypeRequest + const MessageTypeResponse + const ReplayWindowDuration + const RequestPacketSize + const ResponsePacketSize + var ErrBadMessageType = errors.New("bad message type") + var ErrBadPacketSize = errors.New("bad packet size") + var ErrBadTimestamp = errors.New("time offset too large") + var ErrRepeatedNonce = errors.New("repeated nonce") + func CheckUnixEpochTimestamp(b []byte) error + type Client struct + func NewClient(psk []byte) (*Client, error) + func (c *Client) ParseResponse(resp []byte) (netip.AddrPort, error) + func (c *Client) PutRequest(req []byte) + type Server struct + func NewServer(psk []byte) (*Server, error) + func (s *Server) Handle(clientAddrPort netip.AddrPort, req []byte, resp []byte) error