sockets-0.4.0.0: High-level network sockets

Safe HaskellNone
LanguageHaskell2010

Socket.Stream.Uninterruptible.Addr

Synopsis

Documentation

send Source #

Arguments

:: Connection

Connection

-> Addr

Start of buffer

-> Int

Number of bytes to send

-> IO (Either (SendException Uninterruptible) ()) 

Send an exact number of bytes starting from a given address. If needed, this calls POSIX send repeatedly until the requested number of bytes has been sent.

receiveExactly Source #

Arguments

:: Connection

Connection

-> Addr

Start of buffer

-> Int

Exact number of bytes to receive

-> IO (Either (ReceiveException Uninterruptible) ()) 

Receive the requested number of bytes into memory beginning at the specified address. If needed, this may call recv repeatedly until the requested number of bytes have been received.

receiveOnce Source #

Arguments

:: Connection

Connection

-> Addr

Start of buffer

-> Int

Maximum number of bytes to receive

-> IO (Either (ReceiveException Uninterruptible) Int) 

Receive at most the specified number of bytes. This only makes multiple calls to POSIX recv if EAGAIN is returned. It makes at most one recv call that successfully fills the buffer.

receiveBetween Source #

Arguments

:: Connection

Connection

-> Addr

Start of buffer

-> Int

Minimum number of bytes to receive

-> Int

Maximum number of bytes to receive

-> IO (Either (ReceiveException Uninterruptible) Int) 

Receive a number of bytes that is between the inclusive lower and upper bounds. If needed, this may call recv repeatedly until the minimum requested number of bytes have been received.