socket-0.8.2.0: An extensible socket library.

Copyright(c) Lars Petersen 2015
LicenseMIT
Maintainerinfo@lars-petersen.net
Stabilityexperimental
Safe HaskellNone
LanguageHaskell2010

System.Socket.Family.Inet

Contents

Description

 
Synopsis

Inet

data Inet Source #

Instances
Family Inet Source # 
Instance details

Defined in System.Socket.Family.Inet

Associated Types

data SocketAddress Inet :: Type Source #

HasNameInfo Inet Source # 
Instance details

Defined in System.Socket.Internal.AddressInfo

HasAddressInfo Inet Source # 
Instance details

Defined in System.Socket.Internal.AddressInfo

Eq (SocketAddress Inet) Source # 
Instance details

Defined in System.Socket.Family.Inet

Show (SocketAddress Inet) Source # 
Instance details

Defined in System.Socket.Family.Inet

Storable (SocketAddress Inet) Source # 
Instance details

Defined in System.Socket.Family.Inet

data SocketAddress Inet Source # 
Instance details

Defined in System.Socket.Family.Inet

InetAddress

data InetAddress Source #

To avoid errors with endianess it was decided to keep this type abstract.

Use inetAddressFromTuple and inetAddressToTuple for constructing and deconstructing custom addresses.

Hint: Use the Storable instance. It exposes it exactly as found within an IP packet (big endian if you insist on interpreting it as a number).

Another hint: Use getAddressInfo for parsing and suppress nameserver lookups:

> getAddressInfo (Just "127.0.0.1") Nothing aiNumericHost :: IO [AddressInfo Inet Stream TCP]
[AddressInfo {addressInfoFlags = AddressInfoFlags 4, socketAddress = SocketAddressInet {inetAddress = InetAddress 127.0.0.1, inetPort = InetPort 0}, canonicalName = Nothing}]

InetPort

data InetPort Source #

Instances
Enum InetPort Source # 
Instance details

Defined in System.Socket.Family.Inet

Eq InetPort Source # 
Instance details

Defined in System.Socket.Family.Inet

Integral InetPort Source # 
Instance details

Defined in System.Socket.Family.Inet

Num InetPort Source # 
Instance details

Defined in System.Socket.Family.Inet

Ord InetPort Source # 
Instance details

Defined in System.Socket.Family.Inet

Real InetPort Source # 
Instance details

Defined in System.Socket.Family.Inet

Show InetPort Source # 
Instance details

Defined in System.Socket.Family.Inet

Storable InetPort Source # 
Instance details

Defined in System.Socket.Family.Inet

data family SocketAddress f Source #

The SocketAddress type is a data family. This allows to provide different data constructors depending on the socket family without knowing all of them in advance or the need to extend this core library.

SocketAddressInet  inetLoopback  8080     :: SocketAddress Inet
SocketAddressInet6 inet6Loopback 8080 0 0 :: SocketAddress Inet6
Instances
Eq (SocketAddress Inet) Source # 
Instance details

Defined in System.Socket.Family.Inet

Eq (SocketAddress Inet6) Source # 
Instance details

Defined in System.Socket.Family.Inet6

Show (SocketAddress Inet) Source # 
Instance details

Defined in System.Socket.Family.Inet

Show (SocketAddress Inet6) Source # 
Instance details

Defined in System.Socket.Family.Inet6

Storable (SocketAddress Inet) Source # 
Instance details

Defined in System.Socket.Family.Inet

Storable (SocketAddress Inet6) Source # 
Instance details

Defined in System.Socket.Family.Inet6

data SocketAddress Inet Source # 
Instance details

Defined in System.Socket.Family.Inet

data SocketAddress Inet6 Source # 
Instance details

Defined in System.Socket.Family.Inet6

Custom addresses

inetAddressFromTuple

inetAddressFromTuple :: (Word8, Word8, Word8, Word8) -> InetAddress Source #

Constructs a custom InetAddress.

inetAddressFromTuple (127,0,0,1) == inetLoopback

inetAddressToTuple

Special addresses

inetAllHostsGroup

inetAny

inetBroadcast

inetBroadcast :: InetAddress Source #

255.255.255.255

inetLoopback

inetMaxLocalGroup

inetNone

inetNone :: InetAddress Source #

255.255.255.255

inetUnspecificGroup