{-| Module: Network.CoAP.Transport Description: CoAP transport library Maintainer: ulf.lilleengen@gmail.com License: BSD3 The CoAP transport API is intended to provide different transports available for CoAP. Currently only UDP transport is supported. -} module Network.CoAP.Transport ( createUDPTransport , Endpoint(..) , Transport(..) ) where import Network.CoAP.Types import qualified Network.Socket.ByteString as N import Network.Socket hiding (send, sendTo, recv, recvFrom) import Data.ByteString -- | Create UDP transport instance for a given socket. createUDPTransport :: Socket -> Transport createUDPTransport sock = Transport { sendTo = N.sendTo sock , recvFrom = N.recvFrom sock 65535 , localEndpoint = getSocketName sock }