gi-ostree-1.0.8: GI/OSTree/Objects/GpgVerifyResult.hs
{- |
Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte
License : LGPL-2.1
Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)
/No description available in the introspection data./
-}
#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
&& !defined(__HADDOCK_VERSION__))
module GI.OSTree.Objects.GpgVerifyResult
(
-- * Exported types
GpgVerifyResult(..) ,
IsGpgVerifyResult ,
toGpgVerifyResult ,
noGpgVerifyResult ,
-- * Methods
-- ** countAll #method:countAll#
#if ENABLE_OVERLOADING
GpgVerifyResultCountAllMethodInfo ,
#endif
gpgVerifyResultCountAll ,
-- ** countValid #method:countValid#
#if ENABLE_OVERLOADING
GpgVerifyResultCountValidMethodInfo ,
#endif
gpgVerifyResultCountValid ,
-- ** describe #method:describe#
#if ENABLE_OVERLOADING
GpgVerifyResultDescribeMethodInfo ,
#endif
gpgVerifyResultDescribe ,
-- ** describeVariant #method:describeVariant#
gpgVerifyResultDescribeVariant ,
-- ** get #method:get#
#if ENABLE_OVERLOADING
GpgVerifyResultGetMethodInfo ,
#endif
gpgVerifyResultGet ,
-- ** getAll #method:getAll#
#if ENABLE_OVERLOADING
GpgVerifyResultGetAllMethodInfo ,
#endif
gpgVerifyResultGetAll ,
-- ** lookup #method:lookup#
#if ENABLE_OVERLOADING
GpgVerifyResultLookupMethodInfo ,
#endif
gpgVerifyResultLookup ,
-- ** requireValidSignature #method:requireValidSignature#
#if ENABLE_OVERLOADING
GpgVerifyResultRequireValidSignatureMethodInfo,
#endif
gpgVerifyResultRequireValidSignature ,
) where
import Data.GI.Base.ShortPrelude
import qualified Data.GI.Base.ShortPrelude as SP
import qualified Data.GI.Base.Overloading as O
import qualified Prelude as P
import qualified Data.GI.Base.Attributes as GI.Attributes
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GValue as B.GValue
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
import qualified Data.GI.Base.Properties as B.Properties
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import qualified Foreign.Ptr as FP
import qualified GHC.OverloadedLabels as OL
import qualified GI.GLib.Structs.String as GLib.String
import qualified GI.GObject.Objects.Object as GObject.Object
import qualified GI.Gio.Interfaces.Initable as Gio.Initable
import {-# SOURCE #-} qualified GI.OSTree.Enums as OSTree.Enums
-- | Memory-managed wrapper type.
newtype GpgVerifyResult = GpgVerifyResult (ManagedPtr GpgVerifyResult)
foreign import ccall "ostree_gpg_verify_result_get_type"
c_ostree_gpg_verify_result_get_type :: IO GType
instance GObject GpgVerifyResult where
gobjectType = c_ostree_gpg_verify_result_get_type
-- | Type class for types which can be safely cast to `GpgVerifyResult`, for instance with `toGpgVerifyResult`.
class (GObject o, O.IsDescendantOf GpgVerifyResult o) => IsGpgVerifyResult o
instance (GObject o, O.IsDescendantOf GpgVerifyResult o) => IsGpgVerifyResult o
instance O.HasParentTypes GpgVerifyResult
type instance O.ParentTypes GpgVerifyResult = '[GObject.Object.Object, Gio.Initable.Initable]
-- | Cast to `GpgVerifyResult`, for types for which this is known to be safe. For general casts, use `Data.GI.Base.ManagedPtr.castTo`.
toGpgVerifyResult :: (MonadIO m, IsGpgVerifyResult o) => o -> m GpgVerifyResult
toGpgVerifyResult = liftIO . unsafeCastTo GpgVerifyResult
-- | A convenience alias for `Nothing` :: `Maybe` `GpgVerifyResult`.
noGpgVerifyResult :: Maybe GpgVerifyResult
noGpgVerifyResult = Nothing
#if ENABLE_OVERLOADING
type family ResolveGpgVerifyResultMethod (t :: Symbol) (o :: *) :: * where
ResolveGpgVerifyResultMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveGpgVerifyResultMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveGpgVerifyResultMethod "countAll" o = GpgVerifyResultCountAllMethodInfo
ResolveGpgVerifyResultMethod "countValid" o = GpgVerifyResultCountValidMethodInfo
ResolveGpgVerifyResultMethod "describe" o = GpgVerifyResultDescribeMethodInfo
ResolveGpgVerifyResultMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveGpgVerifyResultMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveGpgVerifyResultMethod "get" o = GpgVerifyResultGetMethodInfo
ResolveGpgVerifyResultMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveGpgVerifyResultMethod "init" o = Gio.Initable.InitableInitMethodInfo
ResolveGpgVerifyResultMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveGpgVerifyResultMethod "lookup" o = GpgVerifyResultLookupMethodInfo
ResolveGpgVerifyResultMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveGpgVerifyResultMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveGpgVerifyResultMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveGpgVerifyResultMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveGpgVerifyResultMethod "requireValidSignature" o = GpgVerifyResultRequireValidSignatureMethodInfo
ResolveGpgVerifyResultMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveGpgVerifyResultMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveGpgVerifyResultMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveGpgVerifyResultMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveGpgVerifyResultMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveGpgVerifyResultMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveGpgVerifyResultMethod "getAll" o = GpgVerifyResultGetAllMethodInfo
ResolveGpgVerifyResultMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveGpgVerifyResultMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveGpgVerifyResultMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveGpgVerifyResultMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveGpgVerifyResultMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveGpgVerifyResultMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveGpgVerifyResultMethod t GpgVerifyResult, O.MethodInfo info GpgVerifyResult p) => OL.IsLabel t (GpgVerifyResult -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#else
fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#endif
#endif
#if ENABLE_OVERLOADING
instance O.HasAttributeList GpgVerifyResult
type instance O.AttributeList GpgVerifyResult = GpgVerifyResultAttributeList
type GpgVerifyResultAttributeList = ('[ ] :: [(Symbol, *)])
#endif
#if ENABLE_OVERLOADING
#endif
#if ENABLE_OVERLOADING
type instance O.SignalList GpgVerifyResult = GpgVerifyResultSignalList
type GpgVerifyResultSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)])
#endif
-- method GpgVerifyResult::count_all
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "result", argType = TInterface (Name {namespace = "OSTree", name = "GpgVerifyResult"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "an #OstreeGpgVerifyResult", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (TBasicType TUInt)
-- throws : False
-- Skip return : False
foreign import ccall "ostree_gpg_verify_result_count_all" ostree_gpg_verify_result_count_all ::
Ptr GpgVerifyResult -> -- result : TInterface (Name {namespace = "OSTree", name = "GpgVerifyResult"})
IO Word32
{- |
Counts all the signatures in /@result@/.
-}
gpgVerifyResultCountAll ::
(B.CallStack.HasCallStack, MonadIO m, IsGpgVerifyResult a) =>
a
{- ^ /@result@/: an 'GI.OSTree.Objects.GpgVerifyResult.GpgVerifyResult' -}
-> m Word32
{- ^ __Returns:__ signature count -}
gpgVerifyResultCountAll result_ = liftIO $ do
result_' <- unsafeManagedPtrCastPtr result_
result <- ostree_gpg_verify_result_count_all result_'
touchManagedPtr result_
return result
#if ENABLE_OVERLOADING
data GpgVerifyResultCountAllMethodInfo
instance (signature ~ (m Word32), MonadIO m, IsGpgVerifyResult a) => O.MethodInfo GpgVerifyResultCountAllMethodInfo a signature where
overloadedMethod _ = gpgVerifyResultCountAll
#endif
-- method GpgVerifyResult::count_valid
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "result", argType = TInterface (Name {namespace = "OSTree", name = "GpgVerifyResult"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "an #OstreeGpgVerifyResult", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (TBasicType TUInt)
-- throws : False
-- Skip return : False
foreign import ccall "ostree_gpg_verify_result_count_valid" ostree_gpg_verify_result_count_valid ::
Ptr GpgVerifyResult -> -- result : TInterface (Name {namespace = "OSTree", name = "GpgVerifyResult"})
IO Word32
{- |
Counts only the valid signatures in /@result@/.
-}
gpgVerifyResultCountValid ::
(B.CallStack.HasCallStack, MonadIO m, IsGpgVerifyResult a) =>
a
{- ^ /@result@/: an 'GI.OSTree.Objects.GpgVerifyResult.GpgVerifyResult' -}
-> m Word32
{- ^ __Returns:__ valid signature count -}
gpgVerifyResultCountValid result_ = liftIO $ do
result_' <- unsafeManagedPtrCastPtr result_
result <- ostree_gpg_verify_result_count_valid result_'
touchManagedPtr result_
return result
#if ENABLE_OVERLOADING
data GpgVerifyResultCountValidMethodInfo
instance (signature ~ (m Word32), MonadIO m, IsGpgVerifyResult a) => O.MethodInfo GpgVerifyResultCountValidMethodInfo a signature where
overloadedMethod _ = gpgVerifyResultCountValid
#endif
-- method GpgVerifyResult::describe
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "result", argType = TInterface (Name {namespace = "OSTree", name = "GpgVerifyResult"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "an #OstreeGpgVerifyResult", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "signature_index", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "which signature to describe", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "output_buffer", argType = TInterface (Name {namespace = "GLib", name = "String"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GString to hold the description", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "line_prefix", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "optional line prefix string", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flags", argType = TInterface (Name {namespace = "OSTree", name = "GpgSignatureFormatFlags"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "flags to adjust the description format", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Nothing
-- throws : False
-- Skip return : False
foreign import ccall "ostree_gpg_verify_result_describe" ostree_gpg_verify_result_describe ::
Ptr GpgVerifyResult -> -- result : TInterface (Name {namespace = "OSTree", name = "GpgVerifyResult"})
Word32 -> -- signature_index : TBasicType TUInt
Ptr GLib.String.String -> -- output_buffer : TInterface (Name {namespace = "GLib", name = "String"})
CString -> -- line_prefix : TBasicType TUTF8
CUInt -> -- flags : TInterface (Name {namespace = "OSTree", name = "GpgSignatureFormatFlags"})
IO ()
{- |
Appends a brief, human-readable description of the GPG signature at
/@signatureIndex@/ in /@result@/ to the /@outputBuffer@/. The description
spans multiple lines. A /@linePrefix@/ string, if given, will precede
each line of the description.
The /@flags@/ argument is reserved for future variations to the description
format. Currently must be 0.
It is a programmer error to request an invalid /@signatureIndex@/. Use
'GI.OSTree.Objects.GpgVerifyResult.gpgVerifyResultCountAll' to find the number of signatures in
/@result@/.
-}
gpgVerifyResultDescribe ::
(B.CallStack.HasCallStack, MonadIO m, IsGpgVerifyResult a) =>
a
{- ^ /@result@/: an 'GI.OSTree.Objects.GpgVerifyResult.GpgVerifyResult' -}
-> Word32
{- ^ /@signatureIndex@/: which signature to describe -}
-> GLib.String.String
{- ^ /@outputBuffer@/: a 'GI.GLib.Structs.String.String' to hold the description -}
-> Maybe (T.Text)
{- ^ /@linePrefix@/: optional line prefix string -}
-> OSTree.Enums.GpgSignatureFormatFlags
{- ^ /@flags@/: flags to adjust the description format -}
-> m ()
gpgVerifyResultDescribe result_ signatureIndex outputBuffer linePrefix flags = liftIO $ do
result_' <- unsafeManagedPtrCastPtr result_
outputBuffer' <- unsafeManagedPtrGetPtr outputBuffer
maybeLinePrefix <- case linePrefix of
Nothing -> return nullPtr
Just jLinePrefix -> do
jLinePrefix' <- textToCString jLinePrefix
return jLinePrefix'
let flags' = (fromIntegral . fromEnum) flags
ostree_gpg_verify_result_describe result_' signatureIndex outputBuffer' maybeLinePrefix flags'
touchManagedPtr result_
touchManagedPtr outputBuffer
freeMem maybeLinePrefix
return ()
#if ENABLE_OVERLOADING
data GpgVerifyResultDescribeMethodInfo
instance (signature ~ (Word32 -> GLib.String.String -> Maybe (T.Text) -> OSTree.Enums.GpgSignatureFormatFlags -> m ()), MonadIO m, IsGpgVerifyResult a) => O.MethodInfo GpgVerifyResultDescribeMethodInfo a signature where
overloadedMethod _ = gpgVerifyResultDescribe
#endif
-- method GpgVerifyResult::get
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "result", argType = TInterface (Name {namespace = "OSTree", name = "GpgVerifyResult"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "an #OstreeGpgVerifyResult", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "signature_index", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "which signature to get attributes from", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "attrs", argType = TCArray False (-1) 3 (TInterface (Name {namespace = "OSTree", name = "GpgSignatureAttr"})), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Array of requested attributes", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "n_attrs", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Length of the @attrs array", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : [Arg {argCName = "n_attrs", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Length of the @attrs array", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- returnType : Just TVariant
-- throws : False
-- Skip return : False
foreign import ccall "ostree_gpg_verify_result_get" ostree_gpg_verify_result_get ::
Ptr GpgVerifyResult -> -- result : TInterface (Name {namespace = "OSTree", name = "GpgVerifyResult"})
Word32 -> -- signature_index : TBasicType TUInt
Ptr CUInt -> -- attrs : TCArray False (-1) 3 (TInterface (Name {namespace = "OSTree", name = "GpgSignatureAttr"}))
Word32 -> -- n_attrs : TBasicType TUInt
IO (Ptr GVariant)
{- |
Builds a 'GVariant' tuple of requested attributes for the GPG signature at
/@signatureIndex@/ in /@result@/. See the 'GI.OSTree.Enums.GpgSignatureAttr' description
for the 'GI.GLib.Structs.VariantType.VariantType' of each available attribute.
It is a programmer error to request an invalid 'GI.OSTree.Enums.GpgSignatureAttr' or
an invalid /@signatureIndex@/. Use 'GI.OSTree.Objects.GpgVerifyResult.gpgVerifyResultCountAll' to
find the number of signatures in /@result@/.
-}
gpgVerifyResultGet ::
(B.CallStack.HasCallStack, MonadIO m, IsGpgVerifyResult a) =>
a
{- ^ /@result@/: an 'GI.OSTree.Objects.GpgVerifyResult.GpgVerifyResult' -}
-> Word32
{- ^ /@signatureIndex@/: which signature to get attributes from -}
-> [OSTree.Enums.GpgSignatureAttr]
{- ^ /@attrs@/: Array of requested attributes -}
-> m GVariant
{- ^ __Returns:__ a new, floating, 'GVariant' tuple -}
gpgVerifyResultGet result_ signatureIndex attrs = liftIO $ do
let nAttrs = fromIntegral $ length attrs
result_' <- unsafeManagedPtrCastPtr result_
let attrs' = map (fromIntegral . fromEnum) attrs
attrs'' <- packStorableArray attrs'
result <- ostree_gpg_verify_result_get result_' signatureIndex attrs'' nAttrs
checkUnexpectedReturnNULL "gpgVerifyResultGet" result
result' <- B.GVariant.wrapGVariantPtr result
touchManagedPtr result_
freeMem attrs''
return result'
#if ENABLE_OVERLOADING
data GpgVerifyResultGetMethodInfo
instance (signature ~ (Word32 -> [OSTree.Enums.GpgSignatureAttr] -> m GVariant), MonadIO m, IsGpgVerifyResult a) => O.MethodInfo GpgVerifyResultGetMethodInfo a signature where
overloadedMethod _ = gpgVerifyResultGet
#endif
-- method GpgVerifyResult::get_all
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "result", argType = TInterface (Name {namespace = "OSTree", name = "GpgVerifyResult"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "an #OstreeGpgVerifyResult", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "signature_index", argType = TBasicType TUInt, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "which signature to get attributes from", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just TVariant
-- throws : False
-- Skip return : False
foreign import ccall "ostree_gpg_verify_result_get_all" ostree_gpg_verify_result_get_all ::
Ptr GpgVerifyResult -> -- result : TInterface (Name {namespace = "OSTree", name = "GpgVerifyResult"})
Word32 -> -- signature_index : TBasicType TUInt
IO (Ptr GVariant)
{- |
Builds a 'GVariant' tuple of all available attributes for the GPG signature
at /@signatureIndex@/ in /@result@/.
The child values in the returned 'GVariant' tuple are ordered to match the
'GI.OSTree.Enums.GpgSignatureAttr' enumeration, which means the enum values can be
used as index values in functions like @/g_variant_get_child()/@. See the
'GI.OSTree.Enums.GpgSignatureAttr' description for the 'GI.GLib.Structs.VariantType.VariantType' of each
available attribute.
\<note>
\<para>
The 'GI.OSTree.Enums.GpgSignatureAttr' enumeration may be extended in the future
with new attributes, which would affect the 'GVariant' tuple returned by
this function. While the position and type of current child values in
the 'GVariant' tuple will not change, to avoid backward-compatibility
issues \<emphasis>please do not depend on the tuple\'s overall size or
type signature\<\/emphasis>.
\<\/para>
\<\/note>
It is a programmer error to request an invalid /@signatureIndex@/. Use
'GI.OSTree.Objects.GpgVerifyResult.gpgVerifyResultCountAll' to find the number of signatures in
/@result@/.
-}
gpgVerifyResultGetAll ::
(B.CallStack.HasCallStack, MonadIO m, IsGpgVerifyResult a) =>
a
{- ^ /@result@/: an 'GI.OSTree.Objects.GpgVerifyResult.GpgVerifyResult' -}
-> Word32
{- ^ /@signatureIndex@/: which signature to get attributes from -}
-> m GVariant
{- ^ __Returns:__ a new, floating, 'GVariant' tuple -}
gpgVerifyResultGetAll result_ signatureIndex = liftIO $ do
result_' <- unsafeManagedPtrCastPtr result_
result <- ostree_gpg_verify_result_get_all result_' signatureIndex
checkUnexpectedReturnNULL "gpgVerifyResultGetAll" result
result' <- B.GVariant.wrapGVariantPtr result
touchManagedPtr result_
return result'
#if ENABLE_OVERLOADING
data GpgVerifyResultGetAllMethodInfo
instance (signature ~ (Word32 -> m GVariant), MonadIO m, IsGpgVerifyResult a) => O.MethodInfo GpgVerifyResultGetAllMethodInfo a signature where
overloadedMethod _ = gpgVerifyResultGetAll
#endif
-- method GpgVerifyResult::lookup
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "result", argType = TInterface (Name {namespace = "OSTree", name = "GpgVerifyResult"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "an #OstreeGpgVerifyResult", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "key_id", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a GPG key ID or fingerprint", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "out_signature_index", argType = TBasicType TUInt, direction = DirectionOut, mayBeNull = False, argDoc = Documentation {rawDocText = Just "return location for the index of the signature\n signed by @key_id, or %NULL", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferEverything}]
-- Lengths : []
-- returnType : Just (TBasicType TBoolean)
-- throws : False
-- Skip return : False
foreign import ccall "ostree_gpg_verify_result_lookup" ostree_gpg_verify_result_lookup ::
Ptr GpgVerifyResult -> -- result : TInterface (Name {namespace = "OSTree", name = "GpgVerifyResult"})
CString -> -- key_id : TBasicType TUTF8
Ptr Word32 -> -- out_signature_index : TBasicType TUInt
IO CInt
{- |
Searches /@result@/ for a signature signed by /@keyId@/. If a match is found,
the function returns 'True' and sets /@outSignatureIndex@/ so that further
signature details can be obtained through 'GI.OSTree.Objects.GpgVerifyResult.gpgVerifyResultGet'.
If no match is found, the function returns 'False' and leaves
/@outSignatureIndex@/ unchanged.
-}
gpgVerifyResultLookup ::
(B.CallStack.HasCallStack, MonadIO m, IsGpgVerifyResult a) =>
a
{- ^ /@result@/: an 'GI.OSTree.Objects.GpgVerifyResult.GpgVerifyResult' -}
-> T.Text
{- ^ /@keyId@/: a GPG key ID or fingerprint -}
-> m ((Bool, Word32))
{- ^ __Returns:__ 'True' on success, 'False' on failure -}
gpgVerifyResultLookup result_ keyId = liftIO $ do
result_' <- unsafeManagedPtrCastPtr result_
keyId' <- textToCString keyId
outSignatureIndex <- allocMem :: IO (Ptr Word32)
result <- ostree_gpg_verify_result_lookup result_' keyId' outSignatureIndex
let result' = (/= 0) result
outSignatureIndex' <- peek outSignatureIndex
touchManagedPtr result_
freeMem keyId'
freeMem outSignatureIndex
return (result', outSignatureIndex')
#if ENABLE_OVERLOADING
data GpgVerifyResultLookupMethodInfo
instance (signature ~ (T.Text -> m ((Bool, Word32))), MonadIO m, IsGpgVerifyResult a) => O.MethodInfo GpgVerifyResultLookupMethodInfo a signature where
overloadedMethod _ = gpgVerifyResultLookup
#endif
-- method GpgVerifyResult::require_valid_signature
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "result", argType = TInterface (Name {namespace = "OSTree", name = "GpgVerifyResult"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "an #OstreeGpgVerifyResult", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (TBasicType TBoolean)
-- throws : True
-- Skip return : False
foreign import ccall "ostree_gpg_verify_result_require_valid_signature" ostree_gpg_verify_result_require_valid_signature ::
Ptr GpgVerifyResult -> -- result : TInterface (Name {namespace = "OSTree", name = "GpgVerifyResult"})
Ptr (Ptr GError) -> -- error
IO CInt
{- |
Checks if the result contains at least one signature from the
trusted keyring. You can call this function immediately after
'GI.OSTree.Objects.Repo.repoVerifySummary' or 'GI.OSTree.Objects.Repo.repoVerifyCommitExt' -
it will handle the 'Nothing' /@result@/ and filled /@error@/ too.
-}
gpgVerifyResultRequireValidSignature ::
(B.CallStack.HasCallStack, MonadIO m, IsGpgVerifyResult a) =>
a
{- ^ /@result@/: an 'GI.OSTree.Objects.GpgVerifyResult.GpgVerifyResult' -}
-> m ()
{- ^ /(Can throw 'Data.GI.Base.GError.GError')/ -}
gpgVerifyResultRequireValidSignature result_ = liftIO $ do
result_' <- unsafeManagedPtrCastPtr result_
onException (do
_ <- propagateGError $ ostree_gpg_verify_result_require_valid_signature result_'
touchManagedPtr result_
return ()
) (do
return ()
)
#if ENABLE_OVERLOADING
data GpgVerifyResultRequireValidSignatureMethodInfo
instance (signature ~ (m ()), MonadIO m, IsGpgVerifyResult a) => O.MethodInfo GpgVerifyResultRequireValidSignatureMethodInfo a signature where
overloadedMethod _ = gpgVerifyResultRequireValidSignature
#endif
-- method GpgVerifyResult::describe_variant
-- method type : MemberFunction
-- Args : [Arg {argCName = "variant", argType = TVariant, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GVariant from ostree_gpg_verify_result_get_all()", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "output_buffer", argType = TInterface (Name {namespace = "GLib", name = "String"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GString to hold the description", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "line_prefix", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "optional line prefix string", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "flags", argType = TInterface (Name {namespace = "OSTree", name = "GpgSignatureFormatFlags"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "flags to adjust the description format", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Nothing
-- throws : False
-- Skip return : False
foreign import ccall "ostree_gpg_verify_result_describe_variant" ostree_gpg_verify_result_describe_variant ::
Ptr GVariant -> -- variant : TVariant
Ptr GLib.String.String -> -- output_buffer : TInterface (Name {namespace = "GLib", name = "String"})
CString -> -- line_prefix : TBasicType TUTF8
CUInt -> -- flags : TInterface (Name {namespace = "OSTree", name = "GpgSignatureFormatFlags"})
IO ()
{- |
Similar to 'GI.OSTree.Objects.GpgVerifyResult.gpgVerifyResultDescribe' but takes a 'GVariant' of
all attributes for a GPG signature instead of an 'GI.OSTree.Objects.GpgVerifyResult.GpgVerifyResult'
and signature index.
The /@variant@/ \<emphasis>MUST\<\/emphasis> have been created by
'GI.OSTree.Objects.GpgVerifyResult.gpgVerifyResultGetAll'.
-}
gpgVerifyResultDescribeVariant ::
(B.CallStack.HasCallStack, MonadIO m) =>
GVariant
{- ^ /@variant@/: a 'GVariant' from 'GI.OSTree.Objects.GpgVerifyResult.gpgVerifyResultGetAll' -}
-> GLib.String.String
{- ^ /@outputBuffer@/: a 'GI.GLib.Structs.String.String' to hold the description -}
-> Maybe (T.Text)
{- ^ /@linePrefix@/: optional line prefix string -}
-> OSTree.Enums.GpgSignatureFormatFlags
{- ^ /@flags@/: flags to adjust the description format -}
-> m ()
gpgVerifyResultDescribeVariant variant outputBuffer linePrefix flags = liftIO $ do
variant' <- unsafeManagedPtrGetPtr variant
outputBuffer' <- unsafeManagedPtrGetPtr outputBuffer
maybeLinePrefix <- case linePrefix of
Nothing -> return nullPtr
Just jLinePrefix -> do
jLinePrefix' <- textToCString jLinePrefix
return jLinePrefix'
let flags' = (fromIntegral . fromEnum) flags
ostree_gpg_verify_result_describe_variant variant' outputBuffer' maybeLinePrefix flags'
touchManagedPtr variant
touchManagedPtr outputBuffer
freeMem maybeLinePrefix
return ()
#if ENABLE_OVERLOADING
#endif