{- | 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