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

GI.Gio.Objects.UnixCredentialsMessage

Description

This SocketControlMessage contains a Credentials instance. It may be sent using socketSendMessage and received using socketReceiveMessage over UNIX sockets (ie: sockets in the G_SOCKET_FAMILY_UNIX family).

For an easier way to send and receive credentials over stream-oriented UNIX sockets, see unixConnectionSendCredentials and unixConnectionReceiveCredentials. To receive credentials of a foreign process connected to a socket, use socketGetCredentials.

Since GLib 2.72, GUnixCredentialMessage is available on all platforms. It requires underlying system support (such as Windows 10 with AF_UNIX) at run time.

Before GLib 2.72, <gio/gunixcredentialsmessage.h> belonged to the UNIX-specific GIO interfaces, thus you had to use the gio-unix-2.0.pc pkg-config file when using it. This is no longer necessary since GLib 2.72.

Since: 2.26

Synopsis

Exported types

newtype UnixCredentialsMessage Source #

Memory-managed wrapper type.

Instances

Instances details
Eq UnixCredentialsMessage Source # 
Instance details

Defined in GI.Gio.Objects.UnixCredentialsMessage

GObject UnixCredentialsMessage Source # 
Instance details

Defined in GI.Gio.Objects.UnixCredentialsMessage

ManagedPtrNewtype UnixCredentialsMessage Source # 
Instance details

Defined in GI.Gio.Objects.UnixCredentialsMessage

TypedObject UnixCredentialsMessage Source # 
Instance details

Defined in GI.Gio.Objects.UnixCredentialsMessage

Methods

glibType :: IO GType #

HasParentTypes UnixCredentialsMessage Source # 
Instance details

Defined in GI.Gio.Objects.UnixCredentialsMessage

HasAttributeList UnixCredentialsMessage Source # 
Instance details

Defined in GI.Gio.Objects.UnixCredentialsMessage

(info ~ ResolveUnixCredentialsMessageMethod t UnixCredentialsMessage, OverloadedMethod info UnixCredentialsMessage p, HasField t UnixCredentialsMessage p) => HasField (t :: Symbol) UnixCredentialsMessage (p :: Type) Source # 
Instance details

Defined in GI.Gio.Objects.UnixCredentialsMessage

(info ~ ResolveUnixCredentialsMessageMethod t UnixCredentialsMessage, OverloadedMethodInfo info UnixCredentialsMessage) => IsLabel t (MethodProxy info UnixCredentialsMessage) Source # 
Instance details

Defined in GI.Gio.Objects.UnixCredentialsMessage

(info ~ ResolveUnixCredentialsMessageMethod t UnixCredentialsMessage, OverloadedMethod info UnixCredentialsMessage p) => IsLabel t (UnixCredentialsMessage -> p) Source # 
Instance details

Defined in GI.Gio.Objects.UnixCredentialsMessage

IsGValue (Maybe UnixCredentialsMessage) Source #

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

Instance details

Defined in GI.Gio.Objects.UnixCredentialsMessage

type AttributeList UnixCredentialsMessage Source # 
Instance details

Defined in GI.Gio.Objects.UnixCredentialsMessage

type ParentTypes UnixCredentialsMessage Source # 
Instance details

Defined in GI.Gio.Objects.UnixCredentialsMessage

type SignalList UnixCredentialsMessage Source # 
Instance details

Defined in GI.Gio.Objects.UnixCredentialsMessage

class (GObject o, IsDescendantOf UnixCredentialsMessage o) => IsUnixCredentialsMessage o Source #

Type class for types which can be safely cast to UnixCredentialsMessage, for instance with toUnixCredentialsMessage.

toUnixCredentialsMessage :: (MonadIO m, IsUnixCredentialsMessage o) => o -> m UnixCredentialsMessage Source #

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

Methods

type family ResolveUnixCredentialsMessageMethod (t :: Symbol) o where ... Source #

Equations

ResolveUnixCredentialsMessageMethod "bindProperty" o = ObjectBindPropertyMethodInfo 
ResolveUnixCredentialsMessageMethod "bindPropertyFull" o = ObjectBindPropertyFullMethodInfo 
ResolveUnixCredentialsMessageMethod "forceFloating" o = ObjectForceFloatingMethodInfo 
ResolveUnixCredentialsMessageMethod "freezeNotify" o = ObjectFreezeNotifyMethodInfo 
ResolveUnixCredentialsMessageMethod "getv" o = ObjectGetvMethodInfo 
ResolveUnixCredentialsMessageMethod "isFloating" o = ObjectIsFloatingMethodInfo 
ResolveUnixCredentialsMessageMethod "notify" o = ObjectNotifyMethodInfo 
ResolveUnixCredentialsMessageMethod "notifyByPspec" o = ObjectNotifyByPspecMethodInfo 
ResolveUnixCredentialsMessageMethod "ref" o = ObjectRefMethodInfo 
ResolveUnixCredentialsMessageMethod "refSink" o = ObjectRefSinkMethodInfo 
ResolveUnixCredentialsMessageMethod "runDispose" o = ObjectRunDisposeMethodInfo 
ResolveUnixCredentialsMessageMethod "serialize" o = SocketControlMessageSerializeMethodInfo 
ResolveUnixCredentialsMessageMethod "stealData" o = ObjectStealDataMethodInfo 
ResolveUnixCredentialsMessageMethod "stealQdata" o = ObjectStealQdataMethodInfo 
ResolveUnixCredentialsMessageMethod "thawNotify" o = ObjectThawNotifyMethodInfo 
ResolveUnixCredentialsMessageMethod "unref" o = ObjectUnrefMethodInfo 
ResolveUnixCredentialsMessageMethod "watchClosure" o = ObjectWatchClosureMethodInfo 
ResolveUnixCredentialsMessageMethod "getCredentials" o = UnixCredentialsMessageGetCredentialsMethodInfo 
ResolveUnixCredentialsMessageMethod "getData" o = ObjectGetDataMethodInfo 
ResolveUnixCredentialsMessageMethod "getLevel" o = SocketControlMessageGetLevelMethodInfo 
ResolveUnixCredentialsMessageMethod "getMsgType" o = SocketControlMessageGetMsgTypeMethodInfo 
ResolveUnixCredentialsMessageMethod "getProperty" o = ObjectGetPropertyMethodInfo 
ResolveUnixCredentialsMessageMethod "getQdata" o = ObjectGetQdataMethodInfo 
ResolveUnixCredentialsMessageMethod "getSize" o = SocketControlMessageGetSizeMethodInfo 
ResolveUnixCredentialsMessageMethod "setData" o = ObjectSetDataMethodInfo 
ResolveUnixCredentialsMessageMethod "setDataFull" o = ObjectSetDataFullMethodInfo 
ResolveUnixCredentialsMessageMethod "setProperty" o = ObjectSetPropertyMethodInfo 
ResolveUnixCredentialsMessageMethod l o = MethodResolutionFailed l o :: Type 

getCredentials

unixCredentialsMessageGetCredentials Source #

Arguments

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

message: A UnixCredentialsMessage.

-> m Credentials

Returns: A Credentials instance. Do not free, it is owned by message.

Gets the credentials stored in message.

Since: 2.26

isSupported

unixCredentialsMessageIsSupported Source #

Arguments

:: (HasCallStack, MonadIO m) 
=> m Bool

Returns: True if supported, False otherwise

Checks if passing Credentials on a Socket is supported on this platform.

Since: 2.26

new

unixCredentialsMessageNew Source #

Creates a new UnixCredentialsMessage with credentials matching the current processes.

Since: 2.26

newWithCredentials

unixCredentialsMessageNewWithCredentials Source #

Arguments

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

credentials: A Credentials object.

-> m UnixCredentialsMessage

Returns: a new UnixCredentialsMessage

Creates a new UnixCredentialsMessage holding credentials.

Since: 2.26

Properties

credentials

The credentials stored in the message.

Since: 2.26

data UnixCredentialsMessageCredentialsPropertyInfo Source #

Instances

Instances details
AttrInfo UnixCredentialsMessageCredentialsPropertyInfo Source # 
Instance details

Defined in GI.Gio.Objects.UnixCredentialsMessage

Associated Types

type AttrAllowedOps UnixCredentialsMessageCredentialsPropertyInfo 
Instance details

Defined in GI.Gio.Objects.UnixCredentialsMessage

type AttrBaseTypeConstraint UnixCredentialsMessageCredentialsPropertyInfo 
Instance details

Defined in GI.Gio.Objects.UnixCredentialsMessage

type AttrGetType UnixCredentialsMessageCredentialsPropertyInfo 
Instance details

Defined in GI.Gio.Objects.UnixCredentialsMessage

type AttrSetTypeConstraint UnixCredentialsMessageCredentialsPropertyInfo 
Instance details

Defined in GI.Gio.Objects.UnixCredentialsMessage

type AttrTransferTypeConstraint UnixCredentialsMessageCredentialsPropertyInfo 
Instance details

Defined in GI.Gio.Objects.UnixCredentialsMessage

type AttrTransferType UnixCredentialsMessageCredentialsPropertyInfo 
Instance details

Defined in GI.Gio.Objects.UnixCredentialsMessage

type AttrLabel UnixCredentialsMessageCredentialsPropertyInfo 
Instance details

Defined in GI.Gio.Objects.UnixCredentialsMessage

type AttrOrigin UnixCredentialsMessageCredentialsPropertyInfo 
Instance details

Defined in GI.Gio.Objects.UnixCredentialsMessage

type AttrAllowedOps UnixCredentialsMessageCredentialsPropertyInfo Source # 
Instance details

Defined in GI.Gio.Objects.UnixCredentialsMessage

type AttrBaseTypeConstraint UnixCredentialsMessageCredentialsPropertyInfo Source # 
Instance details

Defined in GI.Gio.Objects.UnixCredentialsMessage

type AttrGetType UnixCredentialsMessageCredentialsPropertyInfo Source # 
Instance details

Defined in GI.Gio.Objects.UnixCredentialsMessage

type AttrLabel UnixCredentialsMessageCredentialsPropertyInfo Source # 
Instance details

Defined in GI.Gio.Objects.UnixCredentialsMessage

type AttrOrigin UnixCredentialsMessageCredentialsPropertyInfo Source # 
Instance details

Defined in GI.Gio.Objects.UnixCredentialsMessage

type AttrSetTypeConstraint UnixCredentialsMessageCredentialsPropertyInfo Source # 
Instance details

Defined in GI.Gio.Objects.UnixCredentialsMessage

type AttrTransferType UnixCredentialsMessageCredentialsPropertyInfo Source # 
Instance details

Defined in GI.Gio.Objects.UnixCredentialsMessage

type AttrTransferTypeConstraint UnixCredentialsMessageCredentialsPropertyInfo Source # 
Instance details

Defined in GI.Gio.Objects.UnixCredentialsMessage

constructUnixCredentialsMessageCredentials :: (IsUnixCredentialsMessage o, MonadIO m, IsCredentials a) => a -> m (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “credentials” property. This is rarely needed directly, but it is used by new.

getUnixCredentialsMessageCredentials :: (MonadIO m, IsUnixCredentialsMessage o) => o -> m Credentials Source #

Get the value of the “credentials” property. When overloading is enabled, this is equivalent to

get unixCredentialsMessage #credentials