gi-gio-2.0.38: Gio bindings
CopyrightWill Thompson and Iñaki García Etxebarria
LicenseLGPL-2.1
MaintainerIñaki García Etxebarria
Safe HaskellNone
LanguageHaskell2010

GI.Gio.Objects.IPv6TclassMessage

Description

Contains the Traffic Class byte of an IPv6 header.

This consists of the DSCP field as per RFC 2474, and the ECN field as per RFC 3168.

It may be received using socketReceiveMessage over UDP sockets (i.e. sockets in the G_SOCKET_FAMILY_IPV6 family with G_SOCKET_TYPE_DATAGRAM type). The message is not meant for sending. To set Traffic Class field to be used in datagrams sent on a Socket use:

c code

g_socket_set_option (socket, IPPROTO_IPV6, IPV6_TCLASS, <TC value>, &error);

Since: 2.88

Synopsis

Exported types

newtype IPv6TclassMessage Source #

Memory-managed wrapper type.

Instances

Instances details
Eq IPv6TclassMessage Source # 
Instance details

Defined in GI.Gio.Objects.IPv6TclassMessage

GObject IPv6TclassMessage Source # 
Instance details

Defined in GI.Gio.Objects.IPv6TclassMessage

ManagedPtrNewtype IPv6TclassMessage Source # 
Instance details

Defined in GI.Gio.Objects.IPv6TclassMessage

TypedObject IPv6TclassMessage Source # 
Instance details

Defined in GI.Gio.Objects.IPv6TclassMessage

Methods

glibType :: IO GType #

HasParentTypes IPv6TclassMessage Source # 
Instance details

Defined in GI.Gio.Objects.IPv6TclassMessage

IsGValue (Maybe IPv6TclassMessage) Source #

Convert IPv6TclassMessage to and from GValue. See toGValue and fromGValue.

Instance details

Defined in GI.Gio.Objects.IPv6TclassMessage

Methods

gvalueGType_ :: IO GType #

gvalueSet_ :: Ptr GValue -> Maybe IPv6TclassMessage -> IO () #

gvalueGet_ :: Ptr GValue -> IO (Maybe IPv6TclassMessage) #

type ParentTypes IPv6TclassMessage Source # 
Instance details

Defined in GI.Gio.Objects.IPv6TclassMessage

type ParentTypes IPv6TclassMessage = '[SocketControlMessage, Object]

class (GObject o, IsDescendantOf IPv6TclassMessage o) => IsIPv6TclassMessage o Source #

Type class for types which can be safely cast to IPv6TclassMessage, for instance with toIPv6TclassMessage.

Instances

Instances details
(GObject o, IsDescendantOf IPv6TclassMessage o) => IsIPv6TclassMessage o Source # 
Instance details

Defined in GI.Gio.Objects.IPv6TclassMessage

toIPv6TclassMessage :: (MonadIO m, IsIPv6TclassMessage o) => o -> m IPv6TclassMessage Source #

Cast to IPv6TclassMessage, for types for which this is known to be safe. For general casts, use castTo.

Methods

getDscp

iPv6TclassMessageGetDscp Source #

Arguments

:: (HasCallStack, MonadIO m, IsIPv6TclassMessage a) 
=> a

message: a traffic class message

-> m Word8

Returns: A DSCP value as described in RFC 2474.

Gets the differentiated services code point stored in message.

Since: 2.88

getEcn

iPv6TclassMessageGetEcn Source #

Arguments

:: (HasCallStack, MonadIO m, IsIPv6TclassMessage a) 
=> a

message: a traffic class message

-> m EcnCodePoint

Returns: An ECN value as described in RFC 3168.

Gets the Explicit Congestion Notification code point stored in message.

Since: 2.88

new

iPv6TclassMessageNew Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> Word8

dscp: the DSCP value of the message

-> EcnCodePoint

ecn: the ECN value of the message

-> m IPv6TclassMessage

Returns: a new traffic class message

Creates a new traffic class message with given DSCP and ECN values.

Since: 2.88