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.Inet6

Contents

Description

 
Synopsis

Inet6

data Inet6 Source #

Instances
Family Inet6 Source # 
Instance details

Defined in System.Socket.Family.Inet6

Associated Types

data SocketAddress Inet6 :: Type Source #

HasNameInfo Inet6 Source # 
Instance details

Defined in System.Socket.Internal.AddressInfo

HasAddressInfo Inet6 Source # 
Instance details

Defined in System.Socket.Internal.AddressInfo

Eq (SocketAddress Inet6) Source # 
Instance details

Defined in System.Socket.Family.Inet6

Show (SocketAddress Inet6) Source # 
Instance details

Defined in System.Socket.Family.Inet6

Storable (SocketAddress Inet6) Source # 
Instance details

Defined in System.Socket.Family.Inet6

data SocketAddress Inet6 Source # 
Instance details

Defined in System.Socket.Family.Inet6

Inet6Address

data Inet6Address Source #

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

Use inet6AddressFromTuple and inet6AddressToTuple 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 "::1") Nothing aiNumericHost :: IO [AddressInfo SocketAddressInet6 Stream TCP]
[AddressInfo {
   addressInfoFlags = AddressInfoFlags 4,
   socketAddress    = SocketAddressInet6 {inet6Address = Inet6Address 0000:0000:0000:0000:0000:0000:0000:0001, inet6Port = Inet6Port 0, inet6FlowInfo = Inet6FlowInfo 0, inet6ScopeId = Inet6ScopeId 0},
   canonicalName    = Nothing }]

Inet6Port

data Inet6Port Source #

Instances
Enum Inet6Port Source # 
Instance details

Defined in System.Socket.Family.Inet6

Eq Inet6Port Source # 
Instance details

Defined in System.Socket.Family.Inet6

Integral Inet6Port Source # 
Instance details

Defined in System.Socket.Family.Inet6

Num Inet6Port Source # 
Instance details

Defined in System.Socket.Family.Inet6

Ord Inet6Port Source # 
Instance details

Defined in System.Socket.Family.Inet6

Real Inet6Port Source # 
Instance details

Defined in System.Socket.Family.Inet6

Show Inet6Port Source # 
Instance details

Defined in System.Socket.Family.Inet6

Storable Inet6Port Source # 
Instance details

Defined in System.Socket.Family.Inet6

Inet6FlowInfo

data Inet6FlowInfo Source #

Instances
Enum Inet6FlowInfo Source # 
Instance details

Defined in System.Socket.Family.Inet6

Eq Inet6FlowInfo Source # 
Instance details

Defined in System.Socket.Family.Inet6

Integral Inet6FlowInfo Source # 
Instance details

Defined in System.Socket.Family.Inet6

Num Inet6FlowInfo Source # 
Instance details

Defined in System.Socket.Family.Inet6

Ord Inet6FlowInfo Source # 
Instance details

Defined in System.Socket.Family.Inet6

Real Inet6FlowInfo Source # 
Instance details

Defined in System.Socket.Family.Inet6

Show Inet6FlowInfo Source # 
Instance details

Defined in System.Socket.Family.Inet6

Storable Inet6FlowInfo Source # 
Instance details

Defined in System.Socket.Family.Inet6

Inet6ScopeId

data Inet6ScopeId Source #

Instances
Enum Inet6ScopeId Source # 
Instance details

Defined in System.Socket.Family.Inet6

Eq Inet6ScopeId Source # 
Instance details

Defined in System.Socket.Family.Inet6

Integral Inet6ScopeId Source # 
Instance details

Defined in System.Socket.Family.Inet6

Num Inet6ScopeId Source # 
Instance details

Defined in System.Socket.Family.Inet6

Ord Inet6ScopeId Source # 
Instance details

Defined in System.Socket.Family.Inet6

Real Inet6ScopeId Source # 
Instance details

Defined in System.Socket.Family.Inet6

Show Inet6ScopeId Source # 
Instance details

Defined in System.Socket.Family.Inet6

Storable Inet6ScopeId Source # 
Instance details

Defined in System.Socket.Family.Inet6

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

inet6AddressFromTuple

inet6AddressFromTuple :: (Word16, Word16, Word16, Word16, Word16, Word16, Word16, Word16) -> Inet6Address Source #

Constructs a custom Inet6Address.

inet6AddressFromTuple (0,0,0,0,0,0,0,1) == inet6Loopback

inet6AddressToTuple

Special addresses

inet6Any

inet6Loopback

Socket options

V6Only

data V6Only Source #

IPV6_V6ONLY

Constructors

V6Only Bool 
Instances
Eq V6Only Source # 
Instance details

Defined in System.Socket.Family.Inet6

Methods

(==) :: V6Only -> V6Only -> Bool #

(/=) :: V6Only -> V6Only -> Bool #

Ord V6Only Source # 
Instance details

Defined in System.Socket.Family.Inet6

Show V6Only Source # 
Instance details

Defined in System.Socket.Family.Inet6

SocketOption V6Only Source # 
Instance details

Defined in System.Socket.Family.Inet6