diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 7348c98..c764ab3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -64,6 +64,10 @@ jobs: ghc-version: "9.6" cabal-version: "3.16" botan-version: "3.0.0" + - sys: { os: ubuntu-latest, shell: bash } + ghc-version: "9.6" + cabal-version: "3.16" + botan-version: "3.1.0" - sys: { os: ubuntu-latest, shell: bash } ghc-version: "9.6" cabal-version: "3.16" @@ -84,21 +88,33 @@ jobs: ghc-version: "9.6" cabal-version: "3.16" botan-version: "3.5.0" + - sys: { os: ubuntu-latest, shell: bash } + ghc-version: "9.6" + cabal-version: "3.16" + botan-version: "3.6.0" - sys: { os: ubuntu-latest, shell: bash } ghc-version: "9.6" cabal-version: "3.16" botan-version: "3.6.1" + - sys: { os: ubuntu-latest, shell: bash } + ghc-version: "9.6" + cabal-version: "3.16" + botan-version: "3.7.0" - sys: { os: ubuntu-latest, shell: bash } ghc-version: "9.6" cabal-version: "3.16" botan-version: "3.7.1" + - sys: { os: ubuntu-latest, shell: bash } + ghc-version: "9.6" + cabal-version: "3.16" + botan-version: "3.8.0" - sys: { os: ubuntu-latest, shell: bash } ghc-version: "9.6" cabal-version: "3.16" botan-version: "3.8.1" - sys: { os: ubuntu-latest, shell: bash } ghc-version: "9.6" - cabal-version: "3.12" + cabal-version: "3.16" botan-version: "3.9.0" steps: @@ -204,15 +220,18 @@ jobs: run: | cabal test all -j1 --test-show-details=direct - - name: ๐Ÿ› ๏ธ Setup cabal-docspec (Linux) - if: ${{ runner.os == 'Linux' && !startsWith(matrix.ghc-version, '9.2') && !startsWith(matrix.ghc-version, '9.4') }} - uses: jorisdral/actions/setup-cabal-docspec@main + # TODO: temporarily disabled testing with cabal-docspec, because it can not + # parse the cabal file now that it has a custom-setup component - - name: ๐Ÿงช Test with cabal-docspec (Linux) - if: ${{ runner.os == 'Linux' && !startsWith(matrix.ghc-version, '9.2') && !startsWith(matrix.ghc-version, '9.4') }} - run: ./scripts/test-cabal-docspec.sh - env: - SKIP_CABAL_BUILD: true + # - name: ๐Ÿ› ๏ธ Setup cabal-docspec (Linux) + # if: ${{ runner.os == 'Linux' && !startsWith(matrix.ghc-version, '9.2') && !startsWith(matrix.ghc-version, '9.4') }} + # uses: jorisdral/actions/setup-cabal-docspec@setup-cabal-docspec-v0 + + # - name: ๐Ÿงช Test with cabal-docspec (Linux) + # if: ${{ runner.os == 'Linux' && !startsWith(matrix.ghc-version, '9.2') && !startsWith(matrix.ghc-version, '9.4') }} + # run: ./scripts/test-cabal-docspec.sh + # env: + # SKIP_CABAL_BUILD: true ################################################################################ # Lint with cabal-gild @@ -299,7 +318,7 @@ jobs: # The index-state is fixed to enable caching and ensure that the version # regardless of the current state of Hackage head. # If you want a newer version of stylish-haskell, use a more recent time. - hackage-index-state: "2025-09-15T11:44:03Z" + hackage-index-state: "2025-12-08T00:00:00Z" - name: ๐ŸŽ—๏ธ Lint with stylish-haskell run: ./scripts/format-stylish-haskell.sh && git diff --exit-code diff --git a/botan-bindings/KnownVersions.cfg b/botan-bindings/KnownVersions.cfg new file mode 100644 index 0000000..304447e --- /dev/null +++ b/botan-bindings/KnownVersions.cfg @@ -0,0 +1,16 @@ +[ Version 3 10 0 +, Version 3 9 0 +, Version 3 8 1 +, Version 3 8 0 +, Version 3 7 1 +, Version 3 7 0 +, Version 3 6 1 +, Version 3 6 0 +, Version 3 5 0 +, Version 3 4 0 +, Version 3 3 0 +, Version 3 2 0 +, Version 3 1 1 +, Version 3 1 0 +, Version 3 0 0 +] \ No newline at end of file diff --git a/botan-bindings/SetupHooks.hs b/botan-bindings/SetupHooks.hs new file mode 100644 index 0000000..82fcb41 --- /dev/null +++ b/botan-bindings/SetupHooks.hs @@ -0,0 +1,671 @@ +{-# LANGUAGE CPP #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE DeriveAnyClass #-} +{-# LANGUAGE DerivingStrategies #-} +{-# LANGUAGE LambdaCase #-} +{-# LANGUAGE OverloadedRecordDot #-} + +-- Copied from @common warnings@ +{-# OPTIONS_GHC + -Wall + -Wcompat + -Wincomplete-uni-patterns + -Wincomplete-record-updates + -Wpartial-fields + -Widentities + -Wredundant-constraints + -Wmissing-export-lists + -Wno-unticked-promoted-constructors + -Wunused-packages + -Wmissing-deriving-strategies + #-} + +{-# OPTIONS_GHC -Werror #-} + +module SetupHooks ( + setupHooks + ) where + +import Control.Monad +import qualified Data.List as List +import qualified Data.List.Split as List +import Data.Maybe +import Data.Monoid (First (..)) +import Distribution.ModuleName +import qualified Distribution.Simple.Errors as Errors +import Distribution.Simple.Flag (flagToMaybe, fromFlag) +import Distribution.Simple.LocalBuildInfo (showComponentName) +import qualified Distribution.Simple.Program as Program +import Distribution.Simple.Setup (CommonSetupFlags (..)) +import Distribution.Simple.SetupHooks as SetupHooks +import qualified Distribution.Simple.SetupHooks as PreConfComponentOutputs + (PreConfComponentOutputs (..)) +import qualified Distribution.Simple.Utils as Utils +import Distribution.Types.Flag (lookupFlagAssignment, mkFlagName) +import Distribution.Types.LocalBuildConfig (LocalBuildConfig (..), + PackageBuildDescr (..)) +import Distribution.Utils.Path (Dist, FileOrDir (..), Include, Pkg, + RelativePath, getSymbolicPath, interpretSymbolicPath, + makeRelativePathEx) +import qualified Distribution.Utils.Path as Path (()) +import System.Directory (createDirectoryIfMissing, doesFileExist) +import System.FilePath (takeDirectory, takeFileName, (<.>), ()) +import Text.Printf (printf) +import Text.Read + +{------------------------------------------------------------------------------- + Hooks +-------------------------------------------------------------------------------} + +-- | See 'myConfigureHooks'. +setupHooks :: SetupHooks +setupHooks = noSetupHooks { + configureHooks = myConfigureHooks + } + +-- | The configure hooks have two goals: +-- +-- * Detect and record version information for an installed @Botan@ library. +-- +-- * Add pre-generated Haskell bindings to the build plan based on the installed +-- @Botan@ library version. +myConfigureHooks :: ConfigureHooks +myConfigureHooks = noConfigureHooks { + postConfPackageHook = Just $ \pcpi -> do + let verb = getVerbosity pcpi.packageBuildDescr + trace verb RunPostConfPackageHook + myPostConfPackageHook pcpi + trace verb FinishPostConfPackageHook + , preConfComponentHook = Just $ \pcci -> do + let compName = componentName pcci.component + verb = getVerbosity pcci.packageBuildDescr + case compName of + CLibName LMainLibName -> + continue verb compName $ + myPreConfComponentHook pcci compName + _ -> + skip verb compName $ + pure (noPreConfComponentOutputs pcci) + } + where + -- | Log that a pre-configure-component-hook is being run + continue :: Verbosity -> ComponentName -> IO a -> IO a + continue verb compName k = do + trace verb $ RunPreConfComponentHook compName + res <- k + trace verb $ FinishPreConfComponentHook compName + pure res + + -- | Log that a pre-configure-component-hook is being skipped + skip :: Verbosity -> ComponentName -> IO a -> IO a + skip verb compName k = do + trace verb $ SkipPreConfComponentHook compName + k + + +{------------------------------------------------------------------------------- + Post package configuration hook +-------------------------------------------------------------------------------} + +-- | In short: detect and record version information for an installed @Botan@ +-- library. +myPostConfPackageHook :: PostConfPackageInputs -> IO () +myPostConfPackageHook pcpi = do + -- Find the version of the @Botan@ library, if it is installed + installedVersion <- findBotan3LibraryVersion pcpi + trace verb $ DetectedBotan3Library installedVersion + + -- Find and parse the @KnownVersions.cfg@ file for the set of known versions + -- that @botan-bindings@ has pre-generated Haskell modules for. + knownVersions <- findAndParseKnownVersionsCfgFile verb extraSrcFiles + + -- If the version of the installed @Botan@ library is one that we do not + -- recognize, then fall back to to the most recent compatible version that + -- we do recognize, which is the most recent version that is + -- @<=installedVersion@ + let fallbackVersionMay = findCompatibleKnownVersion knownVersions installedVersion + fallbackVersion <- onNothing fallbackVersionMay $ + dieWithException verb $ NoFallbackVersion installedVersion knownVersions + when (installedVersion /= unKnownVersion fallbackVersion) $ + trace verb $ FallingBackToCompatibleVersion fallbackVersion installedVersion + + -- Write the installed version and fallback version to an info file, so that + -- subsequent hooks can access this information. + let infoPath = interpretRelativePathBuildDir pcpi.packageBuildDescr versionsInfoPath + trace verb $ GenerateVersionsInfoFile infoPath + writeVersionsInfoFile installedVersion fallbackVersion infoPath + + -- Write the installed version and fallback version as C macros to a C + -- header file, so that Haskell modules in the botan-bindings library can + -- use these macros for conditional compilation. + let headerPath = interpretRelativePathBuildDir pcpi.packageBuildDescr versionsHeaderPath + trace verb $ GenerateVersionsHeaderFile headerPath + writeVersionsHeaderFile installedVersion fallbackVersion headerPath + where + verb = getVerbosity pcpi.packageBuildDescr + + -- extra-src-files + extraSrcFiles = + interpretRelativePathWorkingDir pcpi.packageBuildDescr + <$> pcpi.packageBuildDescr.localPkgDescr.extraSrcFiles + +-- | Find out whether the @Botan@ library is installed, and what its version +-- is. +-- +-- This uses either @pkg-config@ or a custom search method depending on the +-- value of the @pkg-config@ Cabal flag. +findBotan3LibraryVersion :: PostConfPackageInputs -> IO Version +findBotan3LibraryVersion pcpi = do + usePkgConfig <- onNothing usePkgConfigMay $ + dieWithException verb NoPkgConfigCabalFlag + if usePkgConfig then + pkgConfigFindLibraryVersion verb progDb (LibName "botan-3") + else + manualFindBotan3LibraryVersion verb idirs + where + verb :: Verbosity + verb = getVerbosity pcpi.packageBuildDescr + + usePkgConfigMay :: Maybe Bool + usePkgConfigMay = + lookupFlagAssignment + (mkFlagName "pkg-config") + pcpi.packageBuildDescr.flagAssignment + + progDb :: ProgramDb + progDb = pcpi.localBuildConfig.withPrograms + + idirs :: [IncludesDir] + idirs = IncludesDir <$> getExtraIncludesDirs pcpi.packageBuildDescr + +{------------------------------------------------------------------------------- + Pre component configuration hook +-------------------------------------------------------------------------------} + +-- | In short: add pre-generated Haskell bindings to the build plan based on the +-- @Botan@ version. +myPreConfComponentHook :: PreConfComponentInputs -> ComponentName -> IO PreConfComponentOutputs +myPreConfComponentHook pcci compName = do + -- Parse the info file that was created in a previous hook for the installed + -- @Botan@ version and the fallback version that we picked. + let infoPath = interpretRelativePathBuildDir pcci.packageBuildDescr versionsInfoPath + (_v, kv) <- readVersionsInfoFile infoPath + + -- Add pre-generated modules with bindings for the fallback version to the + -- @other-modules@ field + let mods = getModuleNames kv + trace verb $ AddToOtherModules mods + let bi' = emptyBuildInfo { otherModules = mods } + + -- Add the C header file containing version information that we generated in + -- a previous hook to the @install-includes@ field + let headerPath = getSymbolicPath includesDir_versionsHeaderPath + trace verb $ AddToInstallIncludes headerPath + let bi'' = bi' { installIncludes = [includesDir_versionsHeaderPath] } + + pure (noPreConfComponentOutputs pcci) { + PreConfComponentOutputs.componentDiff = + buildInfoComponentDiff compName bi'' + } + where + verb = getVerbosity pcci.packageBuildDescr + +{------------------------------------------------------------------------------- + pkg-config +-------------------------------------------------------------------------------} + +-- | The name of a library (per @pkg-config@) +newtype LibName = LibName String + +-- | Use @pkg-config@ to find the version of a library (if the library is +-- installed) +pkgConfigFindLibraryVersion :: + Verbosity + -> Program.ProgramDb + -> LibName + -> IO Version +pkgConfigFindLibraryVersion verb progDb lib@(LibName n) = do + trace verb $ PkgConfigSearchLibrary lib + contents <- pkgConfigModVersion + version <- onNothing (parsePrettyVersion contents) $ + dieWithException verb $ PkgConfigLibVersionNoParse contents + trace verb $ PkgConfigFoundLibraryVersion lib version + pure version + where + pkgConfigModVersion = + Program.getDbProgramOutput + verb + Program.pkgConfigProgram + progDb + ["--modversion", n] + +{------------------------------------------------------------------------------- + Known versions +-------------------------------------------------------------------------------} + +findAndParseKnownVersionsCfgFile :: Verbosity -> [FilePath] -> IO [KnownVersion] +findAndParseKnownVersionsCfgFile verb extraSrcFiles = do + file <- onNothing (findKnownVersionsCfgFile extraSrcFiles) $ + dieWithException verb $ FileNotFound knownVersionsCfgFileName + readKnownVersions verb file + +findKnownVersionsCfgFile :: [FilePath] -> Maybe FilePath +findKnownVersionsCfgFile files = List.find p files + where + p file = takeFileName file == "KnownVersions.cfg" + +knownVersionsCfgFileName :: FilePath +knownVersionsCfgFileName = "KnownVersions.cfg" + +-- | Read the set of known version from a configuration file. +readKnownVersions :: Verbosity -> FilePath -> IO [KnownVersion] +readKnownVersions verb path = do + contents <- readFile path + case readMaybe contents of + Just (kvs :: [Version]) -> pure $ reverse $ List.sort $ fmap KnownVersion kvs + Nothing -> dieWithException verb $ NoParseKnownVersions path + +-- | Given an arbitrary version, pick the most recent /known/ version LEQ than +-- it. +findCompatibleKnownVersion :: [KnownVersion] -> Version -> Maybe KnownVersion +findCompatibleKnownVersion kvs v = + case filter (<= KnownVersion v) kvs of + (kv : _kvs) -> Just kv + _ -> Nothing + +newtype KnownVersion = KnownVersion { unKnownVersion :: Version } + deriving stock (Show, Eq, Ord, Read) + +-- | The names of the Haskell modules containing the Haskell bindings for the +-- given @Botan@ version. +getModuleNames :: KnownVersion -> [ModuleName] +getModuleNames (KnownVersion (Version major minor patch)) = fmap fromString [ + baseName + , baseName `dot` "FunPtr" + , baseName `dot` "Safe" + , baseName `dot` "Unsafe" + ] + where + dot x y = x <> "." <> y + ucase x y = x <> "_" <> y + + baseName = + "Botan" `dot` "Bindings" `dot` "Generated" `dot` + "Botan" `ucase` show major `ucase` show minor `ucase` show patch + +{------------------------------------------------------------------------------- + Versions +-------------------------------------------------------------------------------} + +-- | A Botan version of the form @MAJOR.MINOR.PATCH@ +data Version = Version Int Int Int + deriving stock (Show, Eq, Ord, Read) + +majorVersion, minorVersion, patchVersion :: Version -> Int +majorVersion (Version x _ _) = x +minorVersion (Version _ y _) = y +patchVersion (Version _ _ z) = z + +prettyVersion :: Version -> String +prettyVersion (Version x y z) = show x <> "." <> show y <> "." <> show z + +parsePrettyVersion :: String -> Maybe Version +parsePrettyVersion contents = do + case List.splitOn "." contents of + [majorStr, minorStr, patchStr] -> do + major <- readMaybe majorStr + minor <- readMaybe minorStr + patch <- readMaybe patchStr + pure $ Version major minor patch + _ -> Nothing + +{------------------------------------------------------------------------------- + Versions info file +-------------------------------------------------------------------------------} + +-- | Write the Botan version to an info file. +-- +-- This info file is mainly used to communicate the version between hooks. +writeVersionsInfoFile :: + Version + -> KnownVersion + -> FilePath + -> IO () +writeVersionsInfoFile v kv path = do + createDirectoryIfMissing True $ takeDirectory path + writeFile path (versionsInfoFileContents v kv) + +-- | Read the Botan version from an info file. +readVersionsInfoFile :: FilePath -> IO (Version, KnownVersion) +readVersionsInfoFile path = read <$> readFile path + +versionsInfoFileContents :: Version -> KnownVersion -> String +versionsInfoFileContents v kv = show (v, kv) + +{------------------------------------------------------------------------------- + Versions header file +-------------------------------------------------------------------------------} + +-- | Write the Botan version to a header file. +writeVersionsHeaderFile :: + Version + -> KnownVersion + -> FilePath + -> IO () +writeVersionsHeaderFile v kv path = do + createDirectoryIfMissing True $ takeDirectory path + writeFile path (versionsHeaderFileContents v kv) + +versionsHeaderFileContents :: Version -> KnownVersion -> String +versionsHeaderFileContents v (KnownVersion kv) = unlines $ fmap unwords $ [ + ["#define", "BOTAN_MAJOR_VERSION", show (majorVersion v)] + , ["#define", "BOTAN_MINOR_VERSION", show (minorVersion v)] + , ["#define", "BOTAN_PATCH_VERSION", show (patchVersion v)] + , ["#define", "BOTAN_MAJOR_VERSION_BINDINGS", show (majorVersion kv)] + , ["#define", "BOTAN_MINOR_VERSION_BINDINGS", show (minorVersion kv)] + , ["#define", "BOTAN_PATCH_VERSION_BINDINGS", show (patchVersion kv)] + ] + +{------------------------------------------------------------------------------- + Paths +-------------------------------------------------------------------------------} + +-- | Interpret a relative path WRT to the build directory +interpretRelativePathBuildDir :: + SetupHooks.PackageBuildDescr + -> RelativePath Dist to + -> FilePath +interpretRelativePathBuildDir pbd relPath = + let setupFlags = pbd.configFlags.configCommonFlags + symBuildDir = fromFlag setupFlags.setupDistPref + symMbWorkingDir = flagToMaybe setupFlags.setupWorkingDir + in interpretSymbolicPath symMbWorkingDir (symBuildDir Path. relPath) + +-- | Interpret a relative path WRT to the current working directory +interpretRelativePathWorkingDir :: + SetupHooks.PackageBuildDescr + -> RelativePath Pkg to + -> FilePath +interpretRelativePathWorkingDir pbd relPath = + let setupFlags = pbd.configFlags.configCommonFlags + symMbWorkingDir = flagToMaybe setupFlags.setupWorkingDir + in interpretSymbolicPath symMbWorkingDir relPath + +versionsInfoPath :: RelativePath Dist File +versionsInfoPath = makeRelativePathEx $ + "build" "HsBotanBindingsVersions" <.> "info" + +versionsHeaderPath :: RelativePath Dist File +versionsHeaderPath = + makeRelativePathEx ("build" "include") Path. + includesDir_versionsHeaderPath + +includesDir_versionsHeaderPath :: RelativePath Include File +includesDir_versionsHeaderPath = makeRelativePathEx $ + "HsBotanBindingsVersions" <.> "h" + +{------------------------------------------------------------------------------- + Getters +-------------------------------------------------------------------------------} + +getVerbosity :: PackageBuildDescr -> Verbosity +getVerbosity pbd = fromFlag pbd.configFlags.configCommonFlags.setupVerbosity + +getExtraIncludesDirs :: PackageBuildDescr -> [FilePath] +getExtraIncludesDirs pbd = + interpretSymbolicPath workingDir <$> extraIncludeDirs + where + setupFlags = pbd.configFlags.configCommonFlags + workingDir = flagToMaybe setupFlags.setupWorkingDir + extraIncludeDirs = pbd.configFlags.configExtraIncludeDirs + +{------------------------------------------------------------------------------- + Logging +-------------------------------------------------------------------------------} + +trace :: Verbosity -> TraceMsg -> IO () +trace verb msg = + traceFun verb $ prefixHooks $ prettyTraceMsg msg + where + traceFun = case traceLevelFor msg of + Debug -> Utils.debug + Info -> Utils.info + Notice -> Utils.notice + Warn -> Utils.warn + +prefixHooks :: String -> String +prefixHooks msg = printf "[hooks]: %s" msg + +data TraceMsg = + RunPostConfPackageHook + | FinishPostConfPackageHook + | RunPreConfComponentHook ComponentName + | FinishPreConfComponentHook ComponentName + | SkipPreConfComponentHook ComponentName + -- post-conf-package-hook + | DetectedBotan3Library Version + | FallingBackToCompatibleVersion KnownVersion Version + | GenerateVersionsInfoFile FilePath + | GenerateVersionsHeaderFile FilePath + -- pre-conf-component-hook + | AddToOtherModules [ModuleName] + | AddToInstallIncludes FilePath + -- pkg-config + | PkgConfigSearchLibrary LibName + | PkgConfigFoundLibraryVersion LibName Version + +prettyTraceMsg :: TraceMsg -> String +prettyTraceMsg = \case + RunPostConfPackageHook -> + "Running post-configure-package-hook" + FinishPostConfPackageHook -> + "Finished post-configure-package-hook" + RunPreConfComponentHook compName -> + printf + "Running pre-configure-component-hook for component '%s'" + (showComponentName compName) + FinishPreConfComponentHook compName -> + printf + "Finished pre-configure-component-hook for component '%s'" + (showComponentName compName) + SkipPreConfComponentHook compName -> + printf + "Skipping pre-configure-component-hook for component '%s'" + (showComponentName compName) + + -- post-conf-package-hook + + DetectedBotan3Library version -> + printf + "Detected an installed Botan library with version %s" + (prettyVersion version) + FallingBackToCompatibleVersion fallbackVersion installedVersion -> + printf + (concat [ + "Falling back to largest known compatible version %s because " + , "botan-bindings does not recognize installed version %s. " + , "botan-bindings should still compile, but it might be missing newer " + , "Botan features." + ]) + (prettyVersion $ unKnownVersion fallbackVersion) + (prettyVersion installedVersion) + GenerateVersionsInfoFile path -> + printf "Generating versions info file at path %s" path + GenerateVersionsHeaderFile path -> + printf "Generating versions header file at path %s" path + + -- pre-conf-component-hook + + AddToOtherModules moduleNames -> + printf + "Adding modules to other-modules: %s" + (show moduleNames) + AddToInstallIncludes path -> + printf + "Adding C header file to install-includes: %s" + path + + --pkg-config + + PkgConfigSearchLibrary (LibName n) -> + printf "Searching for library '%s' using 'pkg-config'" n + PkgConfigFoundLibraryVersion (LibName n) version -> + printf + "Found library '%s' with version '%s'" + n + (prettyVersion version) + +data TraceLevel = Warn | Notice | Info | Debug + +traceLevelFor :: TraceMsg -> TraceLevel +traceLevelFor = \case + RunPostConfPackageHook{} -> Notice + FinishPostConfPackageHook{} -> Notice + RunPreConfComponentHook{} -> Notice + FinishPreConfComponentHook{} -> Notice + SkipPreConfComponentHook{} -> Info + + -- post-conf-package-hook + + DetectedBotan3Library{} -> Notice + FallingBackToCompatibleVersion{} -> Warn + GenerateVersionsInfoFile{} -> Info + GenerateVersionsHeaderFile{} -> Notice + + -- pre-conf-component-hook + + AddToOtherModules{} -> Notice + AddToInstallIncludes{} -> Notice + + -- pkg-config + + PkgConfigSearchLibrary{} -> Debug + PkgConfigFoundLibraryVersion{} -> Debug + +{------------------------------------------------------------------------------- + Errors +-------------------------------------------------------------------------------} + +dieWithException :: forall a. Verbosity -> HooksError -> IO a +dieWithException verb err = Utils.dieWithException verb $ + Errors.RawSystemStdout (prefixHooks (prettyHooksError err)) + +onNothing :: Maybe a -> IO a -> IO a +onNothing x k = maybe k pure x + +data HooksError = + NoFallbackVersion Version [KnownVersion] + | NoPkgConfigCabalFlag + | PkgConfigLibVersionNoParse String + | FileNotFound FilePath + | NoParseKnownVersions FilePath + | BotanBuildHeaderNotFound [IncludesDir] + | NoParseBuildHeader FilePath + +prettyHooksError :: HooksError -> String +prettyHooksError = \case + NoFallbackVersion installedVersion knownVersions -> + printf + (concat [ + "Can not find a compatible fallback version for installed version " + , "%s in known versions %s" + ]) + (show installedVersion) + (show $ fmap unKnownVersion knownVersions) + NoPkgConfigCabalFlag -> + "Can not find pkg-config cabal flag" + PkgConfigLibVersionNoParse contents -> + printf "can not parse version information from %s" (show contents) + FileNotFound path -> + printf "Can not find %s" path + NoParseKnownVersions path -> + printf "Failed to parse file %s for known versions" path + BotanBuildHeaderNotFound idirs -> + printf + (concat [ + "Failed to find the Botan header file %s. " + , "These directories were searched: %s. " + , "Make sure to update extra-lib-dirs and extra-include-dirs." + ]) + botanBuildHeader + (show $ fmap unIncludesDir idirs) + NoParseBuildHeader path -> + printf "Failed to parse Botan header file %s for version information" path + +{------------------------------------------------------------------------------- + C header parsing +-------------------------------------------------------------------------------} + +manualFindBotan3LibraryVersion :: + Verbosity + -> [IncludesDir] + -> IO Version +manualFindBotan3LibraryVersion verb idirs = do + pathMay <- findBotan3BuildHeader idirs + path <- onNothing pathMay $ + dieWithException verb $ BotanBuildHeaderNotFound idirs + headerParseBotanVersion verb path + +findBotan3BuildHeader :: [IncludesDir] -> IO (Maybe FilePath) +findBotan3BuildHeader idirs = do + paths <- forM idirs $ \idir -> do + let path = absBotanBuildHeader idir + b <- doesFileExist path + pure $ if b then Just path else Nothing + pure $ getFirst $ foldMap First paths + +-- | An includes directory +newtype IncludesDir = IncludesDir FilePath + deriving stock Show + +unIncludesDir :: IncludesDir -> FilePath +unIncludesDir (IncludesDir path) = path + +-- | Parse a @Botan@ version from the @botan/build.h@ header file. +headerParseBotanVersion :: Verbosity -> FilePath -> IO Version +headerParseBotanVersion verb path = do + contents <- readFile path + v <- onNothing (pVersion contents) $ + dieWithException verb $ NoParseBuildHeader path + pure v + +absBotanBuildHeader :: IncludesDir -> FilePath +absBotanBuildHeader (IncludesDir dir) = dir botanBuildHeader + +botanBuildHeader :: FilePath +botanBuildHeader = "botan" "build" <.> "h" + +-- | Parse a @Botan@ version from the contents of the @botan/build.h@ header +-- file. +pVersion :: String -> Maybe Version +pVersion s = go (lines s) + where + go ss = do + let vns = catMaybes (fmap pVersionNumber ss) + case List.sort vns of + [MajorVersion major, MinorVersion minor, PatchVersion patch] -> + Just (Version major minor patch) + _ -> + Nothing + +-- | A @Botan@ major version, minor version, or patch version. +data VersionNumber = MajorVersion Int | MinorVersion Int | PatchVersion Int + deriving stock (Show, Eq, Ord) + +pVersionNumber :: String -> Maybe VersionNumber +pVersionNumber s = do + IntMacro name val <- pIntMacro s + case name of + "BOTAN_VERSION_MAJOR" -> Just $ MajorVersion val + "BOTAN_VERSION_MINOR" -> Just $ MinorVersion val + "BOTAN_VERSION_PATCH" -> Just $ PatchVersion val + _ -> Nothing + +-- | A C macro with an integer value +data IntMacro = IntMacro { _intMacroName :: String, _intMacroValue :: Int } + +pIntMacro :: String -> Maybe IntMacro +pIntMacro s = go (words s) + where + go ["#define", name, val] = IntMacro name <$> readMaybe val + go _ = Nothing diff --git a/botan-bindings/botan-bindings.cabal b/botan-bindings/botan-bindings.cabal index b2844d2..0d43653 100644 --- a/botan-bindings/botan-bindings.cabal +++ b/botan-bindings/botan-bindings.cabal @@ -1,17 +1,14 @@ -cabal-version: 3.0 +cabal-version: 3.14 name: botan-bindings version: 0.2.0.0 synopsis: Raw Botan bindings description: Welcome to botan-bindings - Raw bindings to the [Botan](https://botan.randombit.net/) cryptography library. - > Botan's goal is to be the best option for cryptography in C++ by offering the > tools necessary to implement a range of practical systems, such as TLS protocol, > X.509 certificates, modern AEAD ciphers, PKCS#11 and TPM hardware support, > password hashing, and post quantum crypto schemes. - For more information, see the [README on Github](https://github.com/haskell-cryptography/botan) author: Leo D. @@ -22,13 +19,23 @@ copyright: Copyright (c) 2023-2024, Apotheca Labs Copyright (c) 2024-2025, Haskell Foundation -build-type: Simple +tested-with: + ghc ==9.2 || ==9.4 || ==9.6 || ==9.8 || ==9.10 || ==9.12 + +build-type: Hooks category: Cryptography extra-doc-files: CHANGELOG.md README.md -tested-with: ghc ==9.2 || ==9.4 || ==9.6 || ==9.8 || ==9.10 || ==9.12 +extra-source-files: + KnownVersions.cfg + include/HsBotanBindings.h + src-generated/Botan/Bindings/Generated/**/*.hs + +extra-tmp-files: + HsBotanBindingsVersions.info + include/HsBotanBindingsVersions.h source-repository head type: git @@ -44,7 +51,7 @@ source-repository this flag pkg-config default: True manual: False - description: Use @pkg-config(1)@ to locate foreign @botan-3@ library. + description: Use @pkg-config(1)@ to locate foreign @botan@ library. common warnings ghc-options: @@ -65,7 +72,6 @@ common language default-extensions: DerivingStrategies DuplicateRecordFields - NoFieldSelectors OverloadedRecordDot PatternSynonyms RoleAnnotations @@ -77,7 +83,6 @@ library Botan.Bindings.Bcrypt Botan.Bindings.BlockCipher Botan.Bindings.Cipher - Botan.Bindings.ConstPtr Botan.Bindings.Error Botan.Bindings.FPE Botan.Bindings.HOTP @@ -112,7 +117,7 @@ library Botan.Bindings.X509 Botan.Bindings.ZFEC - build-depends: base >=4.16 && <4.22 + build-depends: base >=4.16 && <4.22, primitive ^>=0.9 includes: botan/ffi.h if flag(pkg-config) @@ -120,3 +125,32 @@ library pkgconfig-depends: botan-3 >=3.0.0 && <4 else extra-libraries: botan-3 + + include-dirs: include + install-includes: + HsBotanBindings.h + + -- * Generated bindings + hs-source-dirs: src-generated + build-depends: + hs-bindgen-runtime ^>=0.1, + c-expr-runtime ^>=0.1 + + other-modules: + Botan.Bindings.Generated + Botan.Bindings.Generated.FunPtr + Botan.Bindings.Generated.Safe + Botan.Bindings.Generated.Unsafe + + ghc-options: + -Wno-missing-export-lists + -optc + -Wno-deprecated-declarations + +custom-setup + setup-depends: + Cabal-hooks >=3.14 && <3.17, + base >=4.16 && <4.22, + directory ^>= 1.3, + filepath ^>= 1.5 || ^>=1.4, + split ^>= 0.2, diff --git a/botan-bindings/include/HsBotanBindings.h b/botan-bindings/include/HsBotanBindings.h new file mode 100644 index 0000000..1424941 --- /dev/null +++ b/botan-bindings/include/HsBotanBindings.h @@ -0,0 +1,25 @@ +#include "HsBotanBindingsVersions.h" + +#ifndef MIN_BOTAN_VERSION +#define MIN_BOTAN_VERSION(major,minor,patch) (\ + (major) < BOTAN_MAJOR_VERSION || \ + (major) == BOTAN_MAJOR_VERSION && (minor) < BOTAN_MINOR_VERSION || \ + (major) == BOTAN_MAJOR_VERSION && (minor) == BOTAN_MINOR_VERSION && (patch) <= BOTAN_PATCH_VERSION) +#endif + +#ifndef EXACT_BOTAN_VERSION +#define EXACT_BOTAN_VERSION(major,minor,patch) (\ + (major) == BOTAN_MAJOR_VERSION && (minor) == BOTAN_MINOR_VERSION && (patch) == BOTAN_PATCH_VERSION) +#endif + +#ifndef MIN_BOTAN_VERSION_BINDINGS +#define MIN_BOTAN_VERSION_BINDINGS(major,minor,patch) (\ + (major) < BOTAN_MAJOR_VERSION_BINDINGS || \ + (major) == BOTAN_MAJOR_VERSION_BINDINGS && (minor) < BOTAN_MINOR_VERSION_BINDINGS || \ + (major) == BOTAN_MAJOR_VERSION_BINDINGS && (minor) == BOTAN_MINOR_VERSION_BINDINGS && (patch) <= BOTAN_PATCH_VERSION_BINDINGS) +#endif + +#ifndef EXACT_BOTAN_VERSION_BINDINGS +#define EXACT_BOTAN_VERSION_BINDINGS(major,minor,patch) (\ + (major) == BOTAN_MAJOR_VERSION_BINDINGS && (minor) == BOTAN_MINOR_VERSION_BINDINGS && (patch) == BOTAN_PATCH_VERSION_BINDINGS) +#endif diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated.hs b/botan-bindings/src-generated/Botan/Bindings/Generated.hs new file mode 100644 index 0000000..c426cb3 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated.hs @@ -0,0 +1,50 @@ +{-# LANGUAGE CPP #-} + +module Botan.Bindings.Generated ( + module Reexports + ) where + +#include "HsBotanBindings.h" + +#ifdef MIN_BOTAN_VERSION_BINDINGS + +#if MIN_BOTAN_VERSION_BINDINGS(3,10,0) +import Botan.Bindings.Generated.Botan_3_10_0 as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,9,0) +import Botan.Bindings.Generated.Botan_3_9_0 as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,8,1) +import Botan.Bindings.Generated.Botan_3_8_1 as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,8,0) +import Botan.Bindings.Generated.Botan_3_8_0 as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,7,1) +import Botan.Bindings.Generated.Botan_3_7_1 as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,7,0) +import Botan.Bindings.Generated.Botan_3_7_0 as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,6,1) +import Botan.Bindings.Generated.Botan_3_6_1 as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,6,0) +import Botan.Bindings.Generated.Botan_3_6_0 as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,5,0) +import Botan.Bindings.Generated.Botan_3_5_0 as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,4,0) +import Botan.Bindings.Generated.Botan_3_4_0 as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,3,0) +import Botan.Bindings.Generated.Botan_3_3_0 as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,2,0) +import Botan.Bindings.Generated.Botan_3_2_0 as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,1,1) +import Botan.Bindings.Generated.Botan_3_1_1 as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,1,0) +import Botan.Bindings.Generated.Botan_3_1_0 as Reexports +#elif MIN_BOTAN_VERSION_BINDINGS(3,0,0) +import Botan.Bindings.Generated.Botan_3_0_0 as Reexports +#endif + +#else + +import GHC.TypeError + +_error :: TypeError (Text "If you see this error, then something must have went wrong when configuring the botan-bindings package. This probably points to a bug in botan-bindings. Please open an issue on the issue tracker!") +_error = undefined + +#endif diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_0_0.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_0_0.hs new file mode 100644 index 0000000..0c22bc7 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_0_0.hs @@ -0,0 +1,1498 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE DerivingStrategies #-} +{-# LANGUAGE DerivingVia #-} +{-# LANGUAGE EmptyDataDecls #-} +{-# LANGUAGE ExplicitForAll #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE GeneralizedNewtypeDeriving #-} +{-# LANGUAGE MagicHash #-} +{-# LANGUAGE MultiParamTypeClasses #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE PatternSynonyms #-} +{-# LANGUAGE StandaloneDeriving #-} +{-# LANGUAGE TypeApplications #-} +{-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE TypeOperators #-} +{-# LANGUAGE UnboxedTuples #-} +{-# LANGUAGE UndecidableInstances #-} + +module Botan.Bindings.Generated.Botan_3_0_0 where + +import qualified C.Expr.HostPlatform as C +import qualified Data.List.NonEmpty +import qualified Data.Primitive.Types +import qualified Data.Proxy +import Data.Void (Void) +import qualified Foreign as F +import qualified Foreign.C as FC +import qualified GHC.Ptr as Ptr +import qualified GHC.Records +import qualified HsBindgen.Runtime.CEnum +import qualified HsBindgen.Runtime.ConstPtr +import qualified HsBindgen.Runtime.FunPtr +import qualified HsBindgen.Runtime.HasBaseForeignType +import qualified HsBindgen.Runtime.HasCField +import qualified HsBindgen.Runtime.Prelude +import HsBindgen.Runtime.TypeEquality (TyEq) +import Prelude (Eq, IO, Int, Ord, Read, Show, pure, showsPrec, (<*>)) +import qualified Text.Read + +{-| Error codes + + If you add a new value here be sure to also add it in botan_error_description + +__C declaration:__ @enum BOTAN_FFI_ERROR@ + +__defined at:__ @botan\/ffi.h:69:6@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype BOTAN_FFI_ERROR = BOTAN_FFI_ERROR + { un_BOTAN_FFI_ERROR :: FC.CInt + } + deriving stock (Eq, Ord) + deriving newtype (HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance F.Storable BOTAN_FFI_ERROR where + + sizeOf = \_ -> (4 :: Int) + + alignment = \_ -> (4 :: Int) + + peek = + \ptr0 -> + pure BOTAN_FFI_ERROR + <*> F.peekByteOff ptr0 (0 :: Int) + + poke = + \ptr0 -> + \s1 -> + case s1 of + BOTAN_FFI_ERROR un_BOTAN_FFI_ERROR2 -> + F.pokeByteOff ptr0 (0 :: Int) un_BOTAN_FFI_ERROR2 + +deriving via FC.CInt instance Data.Primitive.Types.Prim BOTAN_FFI_ERROR + +instance HsBindgen.Runtime.CEnum.CEnum BOTAN_FFI_ERROR where + + type CEnumZ BOTAN_FFI_ERROR = FC.CInt + + toCEnum = BOTAN_FFI_ERROR + + fromCEnum = un_BOTAN_FFI_ERROR + + declaredValues = + \_ -> + HsBindgen.Runtime.CEnum.declaredValuesFromList [ (-100, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_UNKNOWN_ERROR") + , (-77, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_ROUGHTIME_ERROR") + , (-76, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_HTTP_ERROR") + , (-75, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_TLS_ERROR") + , (-50, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_INVALID_OBJECT") + , (-40, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_NOT_IMPLEMENTED") + , (-35, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_INVALID_OBJECT_STATE") + , (-34, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_INVALID_KEY_LENGTH") + , (-33, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_KEY_NOT_SET") + , (-32, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_BAD_PARAMETER") + , (-31, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_NULL_POINTER") + , (-30, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_BAD_FLAG") + , (-23, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_INTERNAL_ERROR") + , (-22, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_SYSTEM_ERROR") + , (-21, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_OUT_OF_MEMORY") + , (-20, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_EXCEPTION_THROWN") + , (-11, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_STRING_CONVERSION_ERROR") + , (-10, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_INSUFFICIENT_BUFFER_SPACE") + , (-2, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_BAD_MAC") + , (-1, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_INVALID_INPUT") + , (0, Data.List.NonEmpty.singleton "BOTAN_FFI_SUCCESS") + , (1, Data.List.NonEmpty.singleton "BOTAN_FFI_INVALID_VERIFIER") + ] + + showsUndeclared = + HsBindgen.Runtime.CEnum.showsWrappedUndeclared "BOTAN_FFI_ERROR" + + readPrecUndeclared = + HsBindgen.Runtime.CEnum.readPrecWrappedUndeclared "BOTAN_FFI_ERROR" + +instance Show BOTAN_FFI_ERROR where + + showsPrec = HsBindgen.Runtime.CEnum.showsCEnum + +instance Read BOTAN_FFI_ERROR where + + readPrec = HsBindgen.Runtime.CEnum.readPrecCEnum + + readList = Text.Read.readListDefault + + readListPrec = Text.Read.readListPrecDefault + +{-| __C declaration:__ @BOTAN_FFI_SUCCESS@ + + __defined at:__ @botan\/ffi.h:70:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_SUCCESS :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_SUCCESS = BOTAN_FFI_ERROR 0 + +{-| __C declaration:__ @BOTAN_FFI_INVALID_VERIFIER@ + + __defined at:__ @botan\/ffi.h:71:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_INVALID_VERIFIER :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_INVALID_VERIFIER = BOTAN_FFI_ERROR 1 + +{-| __C declaration:__ @BOTAN_FFI_ERROR_INVALID_INPUT@ + + __defined at:__ @botan\/ffi.h:73:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_INVALID_INPUT :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_INVALID_INPUT = BOTAN_FFI_ERROR (-1) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_BAD_MAC@ + + __defined at:__ @botan\/ffi.h:74:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_BAD_MAC :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_BAD_MAC = BOTAN_FFI_ERROR (-2) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_INSUFFICIENT_BUFFER_SPACE@ + + __defined at:__ @botan\/ffi.h:76:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_INSUFFICIENT_BUFFER_SPACE :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_INSUFFICIENT_BUFFER_SPACE = BOTAN_FFI_ERROR (-10) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_STRING_CONVERSION_ERROR@ + + __defined at:__ @botan\/ffi.h:77:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_STRING_CONVERSION_ERROR :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_STRING_CONVERSION_ERROR = BOTAN_FFI_ERROR (-11) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_EXCEPTION_THROWN@ + + __defined at:__ @botan\/ffi.h:79:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_EXCEPTION_THROWN :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_EXCEPTION_THROWN = BOTAN_FFI_ERROR (-20) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_OUT_OF_MEMORY@ + + __defined at:__ @botan\/ffi.h:80:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_OUT_OF_MEMORY :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_OUT_OF_MEMORY = BOTAN_FFI_ERROR (-21) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_SYSTEM_ERROR@ + + __defined at:__ @botan\/ffi.h:81:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_SYSTEM_ERROR :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_SYSTEM_ERROR = BOTAN_FFI_ERROR (-22) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_INTERNAL_ERROR@ + + __defined at:__ @botan\/ffi.h:82:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_INTERNAL_ERROR :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_INTERNAL_ERROR = BOTAN_FFI_ERROR (-23) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_BAD_FLAG@ + + __defined at:__ @botan\/ffi.h:84:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_BAD_FLAG :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_BAD_FLAG = BOTAN_FFI_ERROR (-30) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_NULL_POINTER@ + + __defined at:__ @botan\/ffi.h:85:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_NULL_POINTER :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_NULL_POINTER = BOTAN_FFI_ERROR (-31) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_BAD_PARAMETER@ + + __defined at:__ @botan\/ffi.h:86:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_BAD_PARAMETER :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_BAD_PARAMETER = BOTAN_FFI_ERROR (-32) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_KEY_NOT_SET@ + + __defined at:__ @botan\/ffi.h:87:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_KEY_NOT_SET :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_KEY_NOT_SET = BOTAN_FFI_ERROR (-33) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_INVALID_KEY_LENGTH@ + + __defined at:__ @botan\/ffi.h:88:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_INVALID_KEY_LENGTH :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_INVALID_KEY_LENGTH = BOTAN_FFI_ERROR (-34) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_INVALID_OBJECT_STATE@ + + __defined at:__ @botan\/ffi.h:89:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_INVALID_OBJECT_STATE :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_INVALID_OBJECT_STATE = BOTAN_FFI_ERROR (-35) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_NOT_IMPLEMENTED@ + + __defined at:__ @botan\/ffi.h:91:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_NOT_IMPLEMENTED :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_NOT_IMPLEMENTED = BOTAN_FFI_ERROR (-40) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_INVALID_OBJECT@ + + __defined at:__ @botan\/ffi.h:92:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_INVALID_OBJECT :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_INVALID_OBJECT = BOTAN_FFI_ERROR (-50) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_TLS_ERROR@ + + __defined at:__ @botan\/ffi.h:94:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_TLS_ERROR :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_TLS_ERROR = BOTAN_FFI_ERROR (-75) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_HTTP_ERROR@ + + __defined at:__ @botan\/ffi.h:95:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_HTTP_ERROR :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_HTTP_ERROR = BOTAN_FFI_ERROR (-76) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_ROUGHTIME_ERROR@ + + __defined at:__ @botan\/ffi.h:96:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_ROUGHTIME_ERROR :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_ROUGHTIME_ERROR = BOTAN_FFI_ERROR (-77) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_UNKNOWN_ERROR@ + + __defined at:__ @botan\/ffi.h:98:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_UNKNOWN_ERROR :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_UNKNOWN_ERROR = BOTAN_FFI_ERROR (-100) + +{-| __C declaration:__ @botan_view_ctx@ + + __defined at:__ @botan\/ffi.h:101:15@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_ctx = Botan_view_ctx + { un_Botan_view_ctx :: Ptr.Ptr Void + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_ctx) "un_Botan_view_ctx") + ) => GHC.Records.HasField "un_Botan_view_ctx" (Ptr.Ptr Botan_view_ctx) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_ctx") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_ctx "un_Botan_view_ctx" where + + type CFieldType Botan_view_ctx "un_Botan_view_ctx" = + Ptr.Ptr Void + + offset# = \_ -> \_ -> 0 + +{-| Auxiliary type used by 'Botan_view_bin_fn' + +__C declaration:__ @botan_view_bin_fn@ + +__defined at:__ @botan\/ffi.h:110:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_bin_fn_Aux = Botan_view_bin_fn_Aux + { un_Botan_view_bin_fn_Aux :: Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt + } + deriving newtype (HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +-- __unique:__ @toBotan_view_bin_fn_Aux@ +foreign import ccall safe "wrapper" hs_bindgen_27b139e7e646bbb3 :: + Botan_view_bin_fn_Aux + -> IO (Ptr.FunPtr Botan_view_bin_fn_Aux) + +-- __unique:__ @fromBotan_view_bin_fn_Aux@ +foreign import ccall safe "dynamic" hs_bindgen_4fe374d6367faa00 :: + Ptr.FunPtr Botan_view_bin_fn_Aux + -> Botan_view_bin_fn_Aux + +instance HsBindgen.Runtime.FunPtr.ToFunPtr Botan_view_bin_fn_Aux where + + toFunPtr = hs_bindgen_27b139e7e646bbb3 + +instance HsBindgen.Runtime.FunPtr.FromFunPtr Botan_view_bin_fn_Aux where + + fromFunPtr = hs_bindgen_4fe374d6367faa00 + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_bin_fn_Aux) "un_Botan_view_bin_fn_Aux") + ) => GHC.Records.HasField "un_Botan_view_bin_fn_Aux" (Ptr.Ptr Botan_view_bin_fn_Aux) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_bin_fn_Aux") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_bin_fn_Aux "un_Botan_view_bin_fn_Aux" where + + type CFieldType Botan_view_bin_fn_Aux "un_Botan_view_bin_fn_Aux" = + Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt + + offset# = \_ -> \_ -> 0 + +{-| Viewer function for binary data + + [__@view_ctx@ /(input)/__]: some application context + + [__@data@ /(input)/__]: the binary data + + [__@len@ /(input)/__]: the length of data in bytes + +__C declaration:__ @botan_view_bin_fn@ + +__defined at:__ @botan\/ffi.h:110:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_bin_fn = Botan_view_bin_fn + { un_Botan_view_bin_fn :: Ptr.FunPtr Botan_view_bin_fn_Aux + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_bin_fn) "un_Botan_view_bin_fn") + ) => GHC.Records.HasField "un_Botan_view_bin_fn" (Ptr.Ptr Botan_view_bin_fn) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_bin_fn") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_bin_fn "un_Botan_view_bin_fn" where + + type CFieldType Botan_view_bin_fn "un_Botan_view_bin_fn" = + Ptr.FunPtr Botan_view_bin_fn_Aux + + offset# = \_ -> \_ -> 0 + +{-| Auxiliary type used by 'Botan_view_str_fn' + +__C declaration:__ @botan_view_str_fn@ + +__defined at:__ @botan\/ffi.h:119:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_str_fn_Aux = Botan_view_str_fn_Aux + { un_Botan_view_str_fn_Aux :: Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt + } + deriving newtype (HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +-- __unique:__ @toBotan_view_str_fn_Aux@ +foreign import ccall safe "wrapper" hs_bindgen_917299e3c75a35ba :: + Botan_view_str_fn_Aux + -> IO (Ptr.FunPtr Botan_view_str_fn_Aux) + +-- __unique:__ @fromBotan_view_str_fn_Aux@ +foreign import ccall safe "dynamic" hs_bindgen_396f3823702be56f :: + Ptr.FunPtr Botan_view_str_fn_Aux + -> Botan_view_str_fn_Aux + +instance HsBindgen.Runtime.FunPtr.ToFunPtr Botan_view_str_fn_Aux where + + toFunPtr = hs_bindgen_917299e3c75a35ba + +instance HsBindgen.Runtime.FunPtr.FromFunPtr Botan_view_str_fn_Aux where + + fromFunPtr = hs_bindgen_396f3823702be56f + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_str_fn_Aux) "un_Botan_view_str_fn_Aux") + ) => GHC.Records.HasField "un_Botan_view_str_fn_Aux" (Ptr.Ptr Botan_view_str_fn_Aux) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_str_fn_Aux") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_str_fn_Aux "un_Botan_view_str_fn_Aux" where + + type CFieldType Botan_view_str_fn_Aux "un_Botan_view_str_fn_Aux" = + Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt + + offset# = \_ -> \_ -> 0 + +{-| Viewer function for string data + + [__@view_ctx@ /(input)/__]: some application context + + [__@str@ /(input)/__]: the null terminated string + + [__@len@ /(input)/__]: the length of string *including* the null terminator + +__C declaration:__ @botan_view_str_fn@ + +__defined at:__ @botan\/ffi.h:119:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_str_fn = Botan_view_str_fn + { un_Botan_view_str_fn :: Ptr.FunPtr Botan_view_str_fn_Aux + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_str_fn) "un_Botan_view_str_fn") + ) => GHC.Records.HasField "un_Botan_view_str_fn" (Ptr.Ptr Botan_view_str_fn) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_str_fn") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_str_fn "un_Botan_view_str_fn" where + + type CFieldType Botan_view_str_fn "un_Botan_view_str_fn" = + Ptr.FunPtr Botan_view_str_fn_Aux + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @BOTAN_FFI_HEX_LOWER_CASE@ + + __defined at:__ @botan\/ffi.h:192:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_FFI_HEX_LOWER_CASE :: FC.CInt +bOTAN_FFI_HEX_LOWER_CASE = (1 :: FC.CInt) + +{-| __C declaration:__ @struct botan_rng_struct@ + + __defined at:__ @botan\/ffi.h:229:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_rng_struct + +{-| RNG type + +__C declaration:__ @botan_rng_t@ + +__defined at:__ @botan\/ffi.h:229:34@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_rng_t = Botan_rng_t + { un_Botan_rng_t :: Ptr.Ptr Botan_rng_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_rng_t) "un_Botan_rng_t") + ) => GHC.Records.HasField "un_Botan_rng_t" (Ptr.Ptr Botan_rng_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_rng_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_rng_t "un_Botan_rng_t" where + + type CFieldType Botan_rng_t "un_Botan_rng_t" = + Ptr.Ptr Botan_rng_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct botan_hash_struct@ + + __defined at:__ @botan\/ffi.h:318:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_hash_struct + +{-| __C declaration:__ @botan_hash_t@ + + __defined at:__ @botan\/ffi.h:318:35@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_hash_t = Botan_hash_t + { un_Botan_hash_t :: Ptr.Ptr Botan_hash_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_hash_t) "un_Botan_hash_t") + ) => GHC.Records.HasField "un_Botan_hash_t" (Ptr.Ptr Botan_hash_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_hash_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_hash_t "un_Botan_hash_t" where + + type CFieldType Botan_hash_t "un_Botan_hash_t" = + Ptr.Ptr Botan_hash_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct botan_mac_struct@ + + __defined at:__ @botan\/ffi.h:398:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_mac_struct + +{-| __C declaration:__ @botan_mac_t@ + + __defined at:__ @botan\/ffi.h:398:34@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_mac_t = Botan_mac_t + { un_Botan_mac_t :: Ptr.Ptr Botan_mac_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_mac_t) "un_Botan_mac_t") + ) => GHC.Records.HasField "un_Botan_mac_t" (Ptr.Ptr Botan_mac_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_mac_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_mac_t "un_Botan_mac_t" where + + type CFieldType Botan_mac_t "un_Botan_mac_t" = + Ptr.Ptr Botan_mac_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct botan_cipher_struct@ + + __defined at:__ @botan\/ffi.h:493:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_cipher_struct + +{-| __C declaration:__ @botan_cipher_t@ + + __defined at:__ @botan\/ffi.h:493:37@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_cipher_t = Botan_cipher_t + { un_Botan_cipher_t :: Ptr.Ptr Botan_cipher_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_cipher_t) "un_Botan_cipher_t") + ) => GHC.Records.HasField "un_Botan_cipher_t" (Ptr.Ptr Botan_cipher_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_cipher_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_cipher_t "un_Botan_cipher_t" where + + type CFieldType Botan_cipher_t "un_Botan_cipher_t" = + Ptr.Ptr Botan_cipher_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @BOTAN_CIPHER_INIT_FLAG_MASK_DIRECTION@ + + __defined at:__ @botan\/ffi.h:495:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_CIPHER_INIT_FLAG_MASK_DIRECTION :: FC.CInt +bOTAN_CIPHER_INIT_FLAG_MASK_DIRECTION = + (1 :: FC.CInt) + +{-| __C declaration:__ @BOTAN_CIPHER_INIT_FLAG_ENCRYPT@ + + __defined at:__ @botan\/ffi.h:496:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_CIPHER_INIT_FLAG_ENCRYPT :: FC.CInt +bOTAN_CIPHER_INIT_FLAG_ENCRYPT = (0 :: FC.CInt) + +{-| __C declaration:__ @BOTAN_CIPHER_INIT_FLAG_DECRYPT@ + + __defined at:__ @botan\/ffi.h:497:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_CIPHER_INIT_FLAG_DECRYPT :: FC.CInt +bOTAN_CIPHER_INIT_FLAG_DECRYPT = (1 :: FC.CInt) + +{-| __C declaration:__ @BOTAN_CIPHER_UPDATE_FLAG_FINAL@ + + __defined at:__ @botan\/ffi.h:584:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_CIPHER_UPDATE_FLAG_FINAL :: FC.CUInt +bOTAN_CIPHER_UPDATE_FLAG_FINAL = + (C.<<) (1 :: FC.CUInt) (0 :: FC.CInt) + +{-| __C declaration:__ @struct botan_block_cipher_struct@ + + __defined at:__ @botan\/ffi.h:754:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_block_cipher_struct + +{-| __C declaration:__ @botan_block_cipher_t@ + + __defined at:__ @botan\/ffi.h:754:43@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_block_cipher_t = Botan_block_cipher_t + { un_Botan_block_cipher_t :: Ptr.Ptr Botan_block_cipher_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_block_cipher_t) "un_Botan_block_cipher_t") + ) => GHC.Records.HasField "un_Botan_block_cipher_t" (Ptr.Ptr Botan_block_cipher_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_block_cipher_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_block_cipher_t "un_Botan_block_cipher_t" where + + type CFieldType Botan_block_cipher_t "un_Botan_block_cipher_t" = + Ptr.Ptr Botan_block_cipher_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct botan_mp_struct@ + + __defined at:__ @botan\/ffi.h:827:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_mp_struct + +{-| __C declaration:__ @botan_mp_t@ + + __defined at:__ @botan\/ffi.h:827:33@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_mp_t = Botan_mp_t + { un_Botan_mp_t :: Ptr.Ptr Botan_mp_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_mp_t) "un_Botan_mp_t") + ) => GHC.Records.HasField "un_Botan_mp_t" (Ptr.Ptr Botan_mp_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_mp_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_mp_t "un_Botan_mp_t" where + + type CFieldType Botan_mp_t "un_Botan_mp_t" = + Ptr.Ptr Botan_mp_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct botan_privkey_struct@ + + __defined at:__ @botan\/ffi.h:1028:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_privkey_struct + +{-| __C declaration:__ @botan_privkey_t@ + + __defined at:__ @botan\/ffi.h:1028:38@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_privkey_t = Botan_privkey_t + { un_Botan_privkey_t :: Ptr.Ptr Botan_privkey_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_privkey_t) "un_Botan_privkey_t") + ) => GHC.Records.HasField "un_Botan_privkey_t" (Ptr.Ptr Botan_privkey_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_privkey_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_privkey_t "un_Botan_privkey_t" where + + type CFieldType Botan_privkey_t "un_Botan_privkey_t" = + Ptr.Ptr Botan_privkey_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @BOTAN_CHECK_KEY_EXPENSIVE_TESTS@ + + __defined at:__ @botan\/ffi.h:1043:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_CHECK_KEY_EXPENSIVE_TESTS :: FC.CInt +bOTAN_CHECK_KEY_EXPENSIVE_TESTS = (1 :: FC.CInt) + +{-| __C declaration:__ @BOTAN_PRIVKEY_EXPORT_FLAG_DER@ + + __defined at:__ @botan\/ffi.h:1122:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_PRIVKEY_EXPORT_FLAG_DER :: FC.CInt +bOTAN_PRIVKEY_EXPORT_FLAG_DER = (0 :: FC.CInt) + +{-| __C declaration:__ @BOTAN_PRIVKEY_EXPORT_FLAG_PEM@ + + __defined at:__ @botan\/ffi.h:1123:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_PRIVKEY_EXPORT_FLAG_PEM :: FC.CInt +bOTAN_PRIVKEY_EXPORT_FLAG_PEM = (1 :: FC.CInt) + +{-| __C declaration:__ @struct botan_pubkey_struct@ + + __defined at:__ @botan\/ffi.h:1255:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pubkey_struct + +{-| __C declaration:__ @botan_pubkey_t@ + + __defined at:__ @botan\/ffi.h:1255:37@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_pubkey_t = Botan_pubkey_t + { un_Botan_pubkey_t :: Ptr.Ptr Botan_pubkey_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_pubkey_t) "un_Botan_pubkey_t") + ) => GHC.Records.HasField "un_Botan_pubkey_t" (Ptr.Ptr Botan_pubkey_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_pubkey_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_pubkey_t "un_Botan_pubkey_t" where + + type CFieldType Botan_pubkey_t "un_Botan_pubkey_t" = + Ptr.Ptr Botan_pubkey_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct botan_pk_op_encrypt_struct@ + + __defined at:__ @botan\/ffi.h:1542:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_encrypt_struct + +{-| __C declaration:__ @botan_pk_op_encrypt_t@ + + __defined at:__ @botan\/ffi.h:1542:44@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_pk_op_encrypt_t = Botan_pk_op_encrypt_t + { un_Botan_pk_op_encrypt_t :: Ptr.Ptr Botan_pk_op_encrypt_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_pk_op_encrypt_t) "un_Botan_pk_op_encrypt_t") + ) => GHC.Records.HasField "un_Botan_pk_op_encrypt_t" (Ptr.Ptr Botan_pk_op_encrypt_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_pk_op_encrypt_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_pk_op_encrypt_t "un_Botan_pk_op_encrypt_t" where + + type CFieldType Botan_pk_op_encrypt_t "un_Botan_pk_op_encrypt_t" = + Ptr.Ptr Botan_pk_op_encrypt_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct botan_pk_op_decrypt_struct@ + + __defined at:__ @botan\/ffi.h:1568:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_decrypt_struct + +{-| __C declaration:__ @botan_pk_op_decrypt_t@ + + __defined at:__ @botan\/ffi.h:1568:44@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_pk_op_decrypt_t = Botan_pk_op_decrypt_t + { un_Botan_pk_op_decrypt_t :: Ptr.Ptr Botan_pk_op_decrypt_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_pk_op_decrypt_t) "un_Botan_pk_op_decrypt_t") + ) => GHC.Records.HasField "un_Botan_pk_op_decrypt_t" (Ptr.Ptr Botan_pk_op_decrypt_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_pk_op_decrypt_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_pk_op_decrypt_t "un_Botan_pk_op_decrypt_t" where + + type CFieldType Botan_pk_op_decrypt_t "un_Botan_pk_op_decrypt_t" = + Ptr.Ptr Botan_pk_op_decrypt_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @BOTAN_PUBKEY_DER_FORMAT_SIGNATURE@ + + __defined at:__ @botan\/ffi.h:1592:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_PUBKEY_DER_FORMAT_SIGNATURE :: FC.CInt +bOTAN_PUBKEY_DER_FORMAT_SIGNATURE = (1 :: FC.CInt) + +{-| __C declaration:__ @struct botan_pk_op_sign_struct@ + + __defined at:__ @botan\/ffi.h:1594:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_sign_struct + +{-| __C declaration:__ @botan_pk_op_sign_t@ + + __defined at:__ @botan\/ffi.h:1594:41@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_pk_op_sign_t = Botan_pk_op_sign_t + { un_Botan_pk_op_sign_t :: Ptr.Ptr Botan_pk_op_sign_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_pk_op_sign_t) "un_Botan_pk_op_sign_t") + ) => GHC.Records.HasField "un_Botan_pk_op_sign_t" (Ptr.Ptr Botan_pk_op_sign_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_pk_op_sign_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_pk_op_sign_t "un_Botan_pk_op_sign_t" where + + type CFieldType Botan_pk_op_sign_t "un_Botan_pk_op_sign_t" = + Ptr.Ptr Botan_pk_op_sign_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct botan_pk_op_verify_struct@ + + __defined at:__ @botan\/ffi.h:1618:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_verify_struct + +{-| __C declaration:__ @botan_pk_op_verify_t@ + + __defined at:__ @botan\/ffi.h:1618:43@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_pk_op_verify_t = Botan_pk_op_verify_t + { un_Botan_pk_op_verify_t :: Ptr.Ptr Botan_pk_op_verify_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_pk_op_verify_t) "un_Botan_pk_op_verify_t") + ) => GHC.Records.HasField "un_Botan_pk_op_verify_t" (Ptr.Ptr Botan_pk_op_verify_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_pk_op_verify_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_pk_op_verify_t "un_Botan_pk_op_verify_t" where + + type CFieldType Botan_pk_op_verify_t "un_Botan_pk_op_verify_t" = + Ptr.Ptr Botan_pk_op_verify_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct botan_pk_op_ka_struct@ + + __defined at:__ @botan\/ffi.h:1637:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_ka_struct + +{-| __C declaration:__ @botan_pk_op_ka_t@ + + __defined at:__ @botan\/ffi.h:1637:39@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_pk_op_ka_t = Botan_pk_op_ka_t + { un_Botan_pk_op_ka_t :: Ptr.Ptr Botan_pk_op_ka_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_pk_op_ka_t) "un_Botan_pk_op_ka_t") + ) => GHC.Records.HasField "un_Botan_pk_op_ka_t" (Ptr.Ptr Botan_pk_op_ka_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_pk_op_ka_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_pk_op_ka_t "un_Botan_pk_op_ka_t" where + + type CFieldType Botan_pk_op_ka_t "un_Botan_pk_op_ka_t" = + Ptr.Ptr Botan_pk_op_ka_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct botan_pk_op_kem_encrypt_struct@ + + __defined at:__ @botan\/ffi.h:1669:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_kem_encrypt_struct + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_t@ + + __defined at:__ @botan\/ffi.h:1669:48@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_pk_op_kem_encrypt_t = Botan_pk_op_kem_encrypt_t + { un_Botan_pk_op_kem_encrypt_t :: Ptr.Ptr Botan_pk_op_kem_encrypt_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_pk_op_kem_encrypt_t) "un_Botan_pk_op_kem_encrypt_t") + ) => GHC.Records.HasField "un_Botan_pk_op_kem_encrypt_t" (Ptr.Ptr Botan_pk_op_kem_encrypt_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_pk_op_kem_encrypt_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_pk_op_kem_encrypt_t "un_Botan_pk_op_kem_encrypt_t" where + + type CFieldType Botan_pk_op_kem_encrypt_t "un_Botan_pk_op_kem_encrypt_t" = + Ptr.Ptr Botan_pk_op_kem_encrypt_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct botan_pk_op_kem_decrypt_struct@ + + __defined at:__ @botan\/ffi.h:1703:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_kem_decrypt_struct + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_t@ + + __defined at:__ @botan\/ffi.h:1703:48@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_pk_op_kem_decrypt_t = Botan_pk_op_kem_decrypt_t + { un_Botan_pk_op_kem_decrypt_t :: Ptr.Ptr Botan_pk_op_kem_decrypt_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_pk_op_kem_decrypt_t) "un_Botan_pk_op_kem_decrypt_t") + ) => GHC.Records.HasField "un_Botan_pk_op_kem_decrypt_t" (Ptr.Ptr Botan_pk_op_kem_decrypt_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_pk_op_kem_decrypt_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_pk_op_kem_decrypt_t "un_Botan_pk_op_kem_decrypt_t" where + + type CFieldType Botan_pk_op_kem_decrypt_t "un_Botan_pk_op_kem_decrypt_t" = + Ptr.Ptr Botan_pk_op_kem_decrypt_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct botan_x509_cert_struct@ + + __defined at:__ @botan\/ffi.h:1763:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_x509_cert_struct + +{-| __C declaration:__ @botan_x509_cert_t@ + + __defined at:__ @botan\/ffi.h:1763:40@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_x509_cert_t = Botan_x509_cert_t + { un_Botan_x509_cert_t :: Ptr.Ptr Botan_x509_cert_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_x509_cert_t) "un_Botan_x509_cert_t") + ) => GHC.Records.HasField "un_Botan_x509_cert_t" (Ptr.Ptr Botan_x509_cert_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_x509_cert_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_x509_cert_t "un_Botan_x509_cert_t" where + + type CFieldType Botan_x509_cert_t "un_Botan_x509_cert_t" = + Ptr.Ptr Botan_x509_cert_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @enum botan_x509_cert_key_constraints@ + + __defined at:__ @botan\/ffi.h:1816:6@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_x509_cert_key_constraints = Botan_x509_cert_key_constraints + { un_Botan_x509_cert_key_constraints :: FC.CUInt + } + deriving stock (Eq, Ord) + deriving newtype (HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance F.Storable Botan_x509_cert_key_constraints where + + sizeOf = \_ -> (4 :: Int) + + alignment = \_ -> (4 :: Int) + + peek = + \ptr0 -> + pure Botan_x509_cert_key_constraints + <*> F.peekByteOff ptr0 (0 :: Int) + + poke = + \ptr0 -> + \s1 -> + case s1 of + Botan_x509_cert_key_constraints un_Botan_x509_cert_key_constraints2 -> + F.pokeByteOff ptr0 (0 :: Int) un_Botan_x509_cert_key_constraints2 + +deriving via FC.CUInt instance Data.Primitive.Types.Prim Botan_x509_cert_key_constraints + +instance HsBindgen.Runtime.CEnum.CEnum Botan_x509_cert_key_constraints where + + type CEnumZ Botan_x509_cert_key_constraints = + FC.CUInt + + toCEnum = Botan_x509_cert_key_constraints + + fromCEnum = un_Botan_x509_cert_key_constraints + + declaredValues = + \_ -> + HsBindgen.Runtime.CEnum.declaredValuesFromList [ (0, Data.List.NonEmpty.singleton "NO_CONSTRAINTS") + , (128, Data.List.NonEmpty.singleton "DECIPHER_ONLY") + , (256, Data.List.NonEmpty.singleton "ENCIPHER_ONLY") + , (512, Data.List.NonEmpty.singleton "CRL_SIGN") + , (1024, Data.List.NonEmpty.singleton "KEY_CERT_SIGN") + , (2048, Data.List.NonEmpty.singleton "KEY_AGREEMENT") + , (4096, Data.List.NonEmpty.singleton "DATA_ENCIPHERMENT") + , (8192, Data.List.NonEmpty.singleton "KEY_ENCIPHERMENT") + , (16384, Data.List.NonEmpty.singleton "NON_REPUDIATION") + , (32768, Data.List.NonEmpty.singleton "DIGITAL_SIGNATURE") + ] + + showsUndeclared = + HsBindgen.Runtime.CEnum.showsWrappedUndeclared "Botan_x509_cert_key_constraints" + + readPrecUndeclared = + HsBindgen.Runtime.CEnum.readPrecWrappedUndeclared "Botan_x509_cert_key_constraints" + +instance Show Botan_x509_cert_key_constraints where + + showsPrec = HsBindgen.Runtime.CEnum.showsCEnum + +instance Read Botan_x509_cert_key_constraints where + + readPrec = HsBindgen.Runtime.CEnum.readPrecCEnum + + readList = Text.Read.readListDefault + + readListPrec = Text.Read.readListPrecDefault + +{-| __C declaration:__ @NO_CONSTRAINTS@ + + __defined at:__ @botan\/ffi.h:1817:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern NO_CONSTRAINTS :: Botan_x509_cert_key_constraints +pattern NO_CONSTRAINTS = Botan_x509_cert_key_constraints 0 + +{-| __C declaration:__ @DIGITAL_SIGNATURE@ + + __defined at:__ @botan\/ffi.h:1818:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern DIGITAL_SIGNATURE :: Botan_x509_cert_key_constraints +pattern DIGITAL_SIGNATURE = Botan_x509_cert_key_constraints 32768 + +{-| __C declaration:__ @NON_REPUDIATION@ + + __defined at:__ @botan\/ffi.h:1819:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern NON_REPUDIATION :: Botan_x509_cert_key_constraints +pattern NON_REPUDIATION = Botan_x509_cert_key_constraints 16384 + +{-| __C declaration:__ @KEY_ENCIPHERMENT@ + + __defined at:__ @botan\/ffi.h:1820:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern KEY_ENCIPHERMENT :: Botan_x509_cert_key_constraints +pattern KEY_ENCIPHERMENT = Botan_x509_cert_key_constraints 8192 + +{-| __C declaration:__ @DATA_ENCIPHERMENT@ + + __defined at:__ @botan\/ffi.h:1821:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern DATA_ENCIPHERMENT :: Botan_x509_cert_key_constraints +pattern DATA_ENCIPHERMENT = Botan_x509_cert_key_constraints 4096 + +{-| __C declaration:__ @KEY_AGREEMENT@ + + __defined at:__ @botan\/ffi.h:1822:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern KEY_AGREEMENT :: Botan_x509_cert_key_constraints +pattern KEY_AGREEMENT = Botan_x509_cert_key_constraints 2048 + +{-| __C declaration:__ @KEY_CERT_SIGN@ + + __defined at:__ @botan\/ffi.h:1823:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern KEY_CERT_SIGN :: Botan_x509_cert_key_constraints +pattern KEY_CERT_SIGN = Botan_x509_cert_key_constraints 1024 + +{-| __C declaration:__ @CRL_SIGN@ + + __defined at:__ @botan\/ffi.h:1824:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern CRL_SIGN :: Botan_x509_cert_key_constraints +pattern CRL_SIGN = Botan_x509_cert_key_constraints 512 + +{-| __C declaration:__ @ENCIPHER_ONLY@ + + __defined at:__ @botan\/ffi.h:1825:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern ENCIPHER_ONLY :: Botan_x509_cert_key_constraints +pattern ENCIPHER_ONLY = Botan_x509_cert_key_constraints 256 + +{-| __C declaration:__ @DECIPHER_ONLY@ + + __defined at:__ @botan\/ffi.h:1826:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern DECIPHER_ONLY :: Botan_x509_cert_key_constraints +pattern DECIPHER_ONLY = Botan_x509_cert_key_constraints 128 + +{-| __C declaration:__ @struct botan_x509_crl_struct@ + + __defined at:__ @botan\/ffi.h:1867:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_x509_crl_struct + +{-| __C declaration:__ @botan_x509_crl_t@ + + __defined at:__ @botan\/ffi.h:1867:39@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_x509_crl_t = Botan_x509_crl_t + { un_Botan_x509_crl_t :: Ptr.Ptr Botan_x509_crl_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_x509_crl_t) "un_Botan_x509_crl_t") + ) => GHC.Records.HasField "un_Botan_x509_crl_t" (Ptr.Ptr Botan_x509_crl_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_x509_crl_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_x509_crl_t "un_Botan_x509_crl_t" where + + type CFieldType Botan_x509_crl_t "un_Botan_x509_crl_t" = + Ptr.Ptr Botan_x509_crl_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct botan_hotp_struct@ + + __defined at:__ @botan\/ffi.h:1929:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_hotp_struct + +{-| HOTP + +__C declaration:__ @botan_hotp_t@ + +__defined at:__ @botan\/ffi.h:1929:35@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_hotp_t = Botan_hotp_t + { un_Botan_hotp_t :: Ptr.Ptr Botan_hotp_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_hotp_t) "un_Botan_hotp_t") + ) => GHC.Records.HasField "un_Botan_hotp_t" (Ptr.Ptr Botan_hotp_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_hotp_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_hotp_t "un_Botan_hotp_t" where + + type CFieldType Botan_hotp_t "un_Botan_hotp_t" = + Ptr.Ptr Botan_hotp_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct botan_totp_struct@ + + __defined at:__ @botan\/ffi.h:1970:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_totp_struct + +{-| TOTP + +__C declaration:__ @botan_totp_t@ + +__defined at:__ @botan\/ffi.h:1970:35@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_totp_t = Botan_totp_t + { un_Botan_totp_t :: Ptr.Ptr Botan_totp_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_totp_t) "un_Botan_totp_t") + ) => GHC.Records.HasField "un_Botan_totp_t" (Ptr.Ptr Botan_totp_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_totp_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_totp_t "un_Botan_totp_t" where + + type CFieldType Botan_totp_t "un_Botan_totp_t" = + Ptr.Ptr Botan_totp_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct botan_fpe_struct@ + + __defined at:__ @botan\/ffi.h:2019:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_fpe_struct + +{-| Format Preserving Encryption + +__C declaration:__ @botan_fpe_t@ + +__defined at:__ @botan\/ffi.h:2019:34@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_fpe_t = Botan_fpe_t + { un_Botan_fpe_t :: Ptr.Ptr Botan_fpe_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_fpe_t) "un_Botan_fpe_t") + ) => GHC.Records.HasField "un_Botan_fpe_t" (Ptr.Ptr Botan_fpe_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_fpe_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_fpe_t "un_Botan_fpe_t" where + + type CFieldType Botan_fpe_t "un_Botan_fpe_t" = + Ptr.Ptr Botan_fpe_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @BOTAN_FPE_FLAG_FE1_COMPAT_MODE@ + + __defined at:__ @botan\/ffi.h:2021:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_FPE_FLAG_FE1_COMPAT_MODE :: FC.CInt +bOTAN_FPE_FLAG_FE1_COMPAT_MODE = (1 :: FC.CInt) + +{-| __C declaration:__ @struct botan_srp6_server_session_struct@ + + __defined at:__ @botan\/ffi.h:2043:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_srp6_server_session_struct + +{-| SRP-6 Server Session type + +__C declaration:__ @botan_srp6_server_session_t@ + +__defined at:__ @botan\/ffi.h:2043:50@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_srp6_server_session_t = Botan_srp6_server_session_t + { un_Botan_srp6_server_session_t :: Ptr.Ptr Botan_srp6_server_session_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_srp6_server_session_t) "un_Botan_srp6_server_session_t") + ) => GHC.Records.HasField "un_Botan_srp6_server_session_t" (Ptr.Ptr Botan_srp6_server_session_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_srp6_server_session_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_srp6_server_session_t "un_Botan_srp6_server_session_t" where + + type CFieldType Botan_srp6_server_session_t "un_Botan_srp6_server_session_t" = + Ptr.Ptr Botan_srp6_server_session_struct + + offset# = \_ -> \_ -> 0 + +-- __unique:__ @instance ToFunPtr (Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)@ +foreign import ccall safe "wrapper" hs_bindgen_84c12dcae5dbfa89 :: + (Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) + -> IO (Ptr.FunPtr (Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +-- __unique:__ @instance FromFunPtr (Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)@ +foreign import ccall safe "dynamic" hs_bindgen_77773c3700f750af :: + Ptr.FunPtr (Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) + -> Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt + +instance HsBindgen.Runtime.FunPtr.ToFunPtr (Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) where + + toFunPtr = hs_bindgen_84c12dcae5dbfa89 + +instance HsBindgen.Runtime.FunPtr.FromFunPtr (Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) where + + fromFunPtr = hs_bindgen_77773c3700f750af + +-- __unique:__ @instance ToFunPtr (Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)@ +foreign import ccall safe "wrapper" hs_bindgen_452085eb661a56c6 :: + (Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) + -> IO (Ptr.FunPtr (Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +-- __unique:__ @instance FromFunPtr (Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)@ +foreign import ccall safe "dynamic" hs_bindgen_aa01a8a48d88978e :: + Ptr.FunPtr (Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) + -> Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt + +instance HsBindgen.Runtime.FunPtr.ToFunPtr (Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) where + + toFunPtr = hs_bindgen_452085eb661a56c6 + +instance HsBindgen.Runtime.FunPtr.FromFunPtr (Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) where + + fromFunPtr = hs_bindgen_aa01a8a48d88978e diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_0_0/FunPtr.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_0_0/FunPtr.hs new file mode 100644 index 0000000..b4d765f --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_0_0/FunPtr.hs @@ -0,0 +1,7911 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_0_0.FunPtr where + +import Botan.Bindings.Generated.Botan_3_0_0 +import Data.Void (Void) +import qualified Foreign.C as FC +import qualified GHC.IO.Unsafe +import qualified GHC.Ptr as Ptr +import qualified HsBindgen.Runtime.ConstantArray +import qualified HsBindgen.Runtime.ConstPtr +import qualified HsBindgen.Runtime.IncompleteArray +import qualified HsBindgen.Runtime.Prelude +import Prelude (IO) + +$(HsBindgen.Runtime.Prelude.addCSource (HsBindgen.Runtime.Prelude.unlines + [ "#include " + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_error_description */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_f708374b6e668c68 (void)) (" + , " signed int arg1" + , ")" + , "{" + , " return &botan_error_description;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_error_last_exception_message */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_57e00bc59b36abdb (void)) (void)" + , "{" + , " return &botan_error_last_exception_message;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_ffi_api_version */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_533e6133106f0f2a (void)) (void)" + , "{" + , " return &botan_ffi_api_version;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_ffi_supports_api */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_688ebc0775d4f684 (void)) (" + , " uint32_t arg1" + , ")" + , "{" + , " return &botan_ffi_supports_api;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_version_string */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_3681ce7dca9774c8 (void)) (void)" + , "{" + , " return &botan_version_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_version_major */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_b5ccf1b7ef65ac0e (void)) (void)" + , "{" + , " return &botan_version_major;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_version_minor */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_9ded2aaf61f1b532 (void)) (void)" + , "{" + , " return &botan_version_minor;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_version_patch */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_d54372767cd19bae (void)) (void)" + , "{" + , " return &botan_version_patch;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_version_datestamp */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_757e03fd7b055faf (void)) (void)" + , "{" + , " return &botan_version_datestamp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_constant_time_compare */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_aa4e452b8b8bce8c (void)) (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_constant_time_compare;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_same_mem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4d8ab8e6e5b386c1 (void)) (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_same_mem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_scrub_mem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cf169a23c137c6e8 (void)) (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_scrub_mem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_hex_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e9ab755971a6e72c (void)) (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_hex_encode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_hex_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b3ea062e48d9da66 (void)) (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_hex_decode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_base64_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_698a15938540fabd (void)) (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_base64_encode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_base64_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_31c8131c0a87f932 (void)) (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_base64_decode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_rng_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6ebdf4611030b0cd (void)) (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_rng_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_rng_init_custom */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d2e7c124d039872a (void)) (" + , " botan_rng_t *arg1," + , " char const *arg2," + , " void *arg3," + , " signed int (*arg4) (" + , " void *arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")," + , " signed int (*arg5) (" + , " void *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")," + , " void (*arg6) (" + , " void *arg1" + , ")" + , ")" + , "{" + , " return &botan_rng_init_custom;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_rng_get */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2bd5aa486cd1506f (void)) (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_get;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_system_rng_get */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_afef292ab480a508 (void)) (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_system_rng_get;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_rng_reseed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8dac0e39cabfa3ab (void)) (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_rng_reseed;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_rng_reseed_from_rng */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_74e7eb8720909d3d (void)) (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_reseed_from_rng;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_rng_add_entropy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_975cc582416475fe (void)) (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_add_entropy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_rng_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_54c98ce966d7c180 (void)) (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return &botan_rng_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_hash_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6f09131eaaca28e1 (void)) (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_hash_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_hash_copy_state */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_053c0d3948139ca0 (void)) (" + , " botan_hash_t *arg1," + , " botan_hash_t const arg2" + , ")" + , "{" + , " return &botan_hash_copy_state;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_hash_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1d29aeefbf6bb7ae (void)) (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_hash_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_hash_block_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9b540de1d9aa3c55 (void)) (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_hash_block_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_hash_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d696b1a070a6f846 (void)) (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_hash_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_hash_final */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ec9bd08f8c9aed7f (void)) (" + , " botan_hash_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_hash_final;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_hash_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_72c1f052b86cce8b (void)) (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return &botan_hash_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_hash_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_39171da9f2f77e21 (void)) (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return &botan_hash_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_hash_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_99221246063a5c05 (void)) (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_hash_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mac_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ebf0a547678eb4e8 (void)) (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mac_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mac_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b47e76748deb560a (void)) (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mac_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mac_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_eb2e1e78444edc68 (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_set_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mac_set_nonce */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a485c63fd7c09b5e (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_set_nonce;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mac_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f62ce734c91eb73a (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mac_final */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3c71b9c15f172a31 (void)) (" + , " botan_mac_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_mac_final;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mac_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_eebd0dc403addd8d (void)) (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return &botan_mac_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mac_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5918e21a36a6c67e (void)) (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_mac_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mac_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ce08606b2123a5a5 (void)) (" + , " botan_mac_t arg1," + , " size_t *arg2," + , " size_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_mac_get_keyspec;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mac_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4efad385576a6503 (void)) (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return &botan_mac_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_cipher_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fd90a8c010488fa3 (void)) (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_cipher_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_cipher_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3bf3033c51ec9494 (void)) (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_cipher_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7a9accbc486c513a (void)) (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_cipher_valid_nonce_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ee9afe5bb9c4657f (void)) (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_cipher_valid_nonce_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_cipher_get_tag_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_90af6ebcf2a9194e (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_tag_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_cipher_get_default_nonce_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0e62d0de1768dded (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_default_nonce_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_cipher_get_update_granularity */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a84fe5be0e0dfd39 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_update_granularity;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_cipher_get_ideal_update_granularity */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f80b6f3f037a668c (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_ideal_update_granularity;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_cipher_query_keylen */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d4273bb68b84c7aa (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_query_keylen;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_cipher_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_96daabe7ac7cfd94 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_cipher_get_keyspec;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_cipher_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4d84a0afb65ccc59 (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_set_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_cipher_reset */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_713dd56fa0b304a9 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_reset;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_cipher_set_associated_data */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_598ecd86b2b6f298 (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_set_associated_data;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_cipher_start */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a112aab19cf59d5a (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_start;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_cipher_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7e772109c39faa72 (void)) (" + , " botan_cipher_t arg1," + , " uint32_t arg2," + , " uint8_t arg3[]," + , " size_t arg4," + , " size_t *arg5," + , " uint8_t const arg6[]," + , " size_t arg7," + , " size_t *arg8" + , ")" + , "{" + , " return &botan_cipher_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_cipher_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_be4a68350c9d09d3 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_cipher_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_adcf926310ed845f (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pbkdf */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_01749f3532a625ff (void)) (" + , " char const *arg1," + , " uint8_t arg2[]," + , " size_t arg3," + , " char const *arg4," + , " uint8_t const arg5[]," + , " size_t arg6," + , " size_t arg7" + , ")" + , "{" + , " return &botan_pbkdf;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pbkdf_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d71ff07a012b84d8 (void)) (" + , " char const *arg1," + , " uint8_t arg2[]," + , " size_t arg3," + , " char const *arg4," + , " uint8_t const arg5[]," + , " size_t arg6," + , " size_t arg7," + , " size_t *arg8" + , ")" + , "{" + , " return &botan_pbkdf_timed;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pwdhash */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d2bad28e56681d99 (void)) (" + , " char const *arg1," + , " size_t arg2," + , " size_t arg3," + , " size_t arg4," + , " uint8_t arg5[]," + , " size_t arg6," + , " char const *arg7," + , " size_t arg8," + , " uint8_t const arg9[]," + , " size_t arg10" + , ")" + , "{" + , " return &botan_pwdhash;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pwdhash_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_957c33d1060f6b30 (void)) (" + , " char const *arg1," + , " uint32_t arg2," + , " size_t *arg3," + , " size_t *arg4," + , " size_t *arg5," + , " uint8_t arg6[]," + , " size_t arg7," + , " char const *arg8," + , " size_t arg9," + , " uint8_t const arg10[]," + , " size_t arg11" + , ")" + , "{" + , " return &botan_pwdhash_timed;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_scrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_274b99a8f55b0faa (void)) (" + , " uint8_t arg1[]," + , " size_t arg2," + , " char const *arg3," + , " uint8_t const arg4[]," + , " size_t arg5," + , " size_t arg6," + , " size_t arg7," + , " size_t arg8" + , ")" + , "{" + , " return &botan_scrypt;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_kdf */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c17fd092565b3ce3 (void)) (" + , " char const *arg1," + , " uint8_t arg2[]," + , " size_t arg3," + , " uint8_t const arg4[]," + , " size_t arg5," + , " uint8_t const arg6[]," + , " size_t arg7," + , " uint8_t const arg8[]," + , " size_t arg9" + , ")" + , "{" + , " return &botan_kdf;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_block_cipher_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2a73a1e16fdc4783 (void)) (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_block_cipher_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_block_cipher_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_70c940b2ca950447 (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_block_cipher_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8f337ea9192f83d9 (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_block_cipher_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f6f0f11296ee461c (void)) (" + , " botan_block_cipher_t arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_block_cipher_set_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_block_cipher_block_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d1c04f8dd0d22e06 (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_block_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_block_cipher_encrypt_blocks */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_20ab73b206be9831 (void)) (" + , " botan_block_cipher_t arg1," + , " uint8_t const arg2[]," + , " uint8_t arg3[]," + , " size_t arg4" + , ")" + , "{" + , " return &botan_block_cipher_encrypt_blocks;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_block_cipher_decrypt_blocks */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_74095ba7ab44fa2f (void)) (" + , " botan_block_cipher_t arg1," + , " uint8_t const arg2[]," + , " uint8_t arg3[]," + , " size_t arg4" + , ")" + , "{" + , " return &botan_block_cipher_decrypt_blocks;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_block_cipher_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f67593b69b0a8eef (void)) (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_block_cipher_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_block_cipher_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1ca79112a3267a08 (void)) (" + , " botan_block_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_block_cipher_get_keyspec;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c9789501c5ceb1c5 (void)) (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return &botan_mp_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f15cddcef729fb21 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_to_hex */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a8749ddbc54a2feb (void)) (" + , " botan_mp_t const arg1," + , " char *arg2" + , ")" + , "{" + , " return &botan_mp_to_hex;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_to_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2d5365a8592c03e9 (void)) (" + , " botan_mp_t const arg1," + , " uint8_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_mp_to_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_581509d1e5a1ff06 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_set_from_int */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a6e46348c0b042a7 (void)) (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return &botan_mp_set_from_int;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_set_from_mp */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7c520a32d336e986 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2" + , ")" + , "{" + , " return &botan_mp_set_from_mp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_set_from_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_14a6543a1867ffde (void)) (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_mp_set_from_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_set_from_radix_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cd3b8ddf79902f0b (void)) (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_set_from_radix_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_num_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3b8bc14620b424d9 (void)) (" + , " botan_mp_t const arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mp_num_bits;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_num_bytes */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9c810c8dce3e2d9b (void)) (" + , " botan_mp_t const arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mp_num_bytes;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_to_bin */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_832fb56dfe83b8f9 (void)) (" + , " botan_mp_t const arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_mp_to_bin;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_from_bin */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fbdde449e87050c5 (void)) (" + , " botan_mp_t const arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_from_bin;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_to_uint32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cd1aece1eeb136c5 (void)) (" + , " botan_mp_t const arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return &botan_mp_to_uint32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_is_positive */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_491206896aeb1d4e (void)) (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return &botan_mp_is_positive;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_is_negative */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ea496d1002cf27a8 (void)) (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return &botan_mp_is_negative;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_flip_sign */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_779b36357c98b844 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_flip_sign;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_is_zero */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4e965d1f3f288b0b (void)) (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return &botan_mp_is_zero;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_is_odd */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f3a59f2a7b67d30e (void)) (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return &botan_mp_is_odd;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_is_even */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_09837c0054ad0e6d (void)) (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return &botan_mp_is_even;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_add_u32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_28107afbbc004b69 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mp_add_u32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_sub_u32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7ee2992a5990ea18 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mp_sub_u32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_add */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b14166e369acb7e3 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3" + , ")" + , "{" + , " return &botan_mp_add;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_sub */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dbed0ddfa58e24b3 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3" + , ")" + , "{" + , " return &botan_mp_sub;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_mul */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8c87cab9e784602a (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3" + , ")" + , "{" + , " return &botan_mp_mul;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_div */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_26d462869decc7be (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t const arg3," + , " botan_mp_t const arg4" + , ")" + , "{" + , " return &botan_mp_div;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_mod_mul */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b2acd7b141f7d0cc (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3," + , " botan_mp_t const arg4" + , ")" + , "{" + , " return &botan_mp_mod_mul;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_equal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6005dd48aeffc710 (void)) (" + , " botan_mp_t const arg1," + , " botan_mp_t const arg2" + , ")" + , "{" + , " return &botan_mp_equal;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_cmp */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b45c0ba757a65519 (void)) (" + , " signed int *arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3" + , ")" + , "{" + , " return &botan_mp_cmp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_swap */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4506969cb56ae6bd (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_swap;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_powmod */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9d3c00289790194e (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3," + , " botan_mp_t const arg4" + , ")" + , "{" + , " return &botan_mp_powmod;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_lshift */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f73e06dc18a42589 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_lshift;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_rshift */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_773c3b1b53515283 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_rshift;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_mod_inverse */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e0d69cf1ec61d6bf (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3" + , ")" + , "{" + , " return &botan_mp_mod_inverse;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_rand_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_244449fa0dc152a2 (void)) (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_rand_bits;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_rand_range */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ff617ac66517c3b1 (void)) (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " botan_mp_t const arg3," + , " botan_mp_t const arg4" + , ")" + , "{" + , " return &botan_mp_rand_range;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_gcd */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c10a9b38cab99314 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3" + , ")" + , "{" + , " return &botan_mp_gcd;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_is_prime */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2b4a1196ad35ea99 (void)) (" + , " botan_mp_t const arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_is_prime;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_get_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4b6e43e127e76a69 (void)) (" + , " botan_mp_t const arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_get_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_set_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_351ab593fb8fb522 (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_set_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_clear_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b6952e465eb5b3b9 (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_clear_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_bcrypt_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2f8203349e189601 (void)) (" + , " uint8_t *arg1," + , " size_t *arg2," + , " char const *arg3," + , " botan_rng_t arg4," + , " size_t arg5," + , " uint32_t arg6" + , ")" + , "{" + , " return &botan_bcrypt_generate;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_bcrypt_is_valid */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c0766ccd090faefe (void)) (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_bcrypt_is_valid;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f8149decb8090790 (void)) (" + , " botan_privkey_t *arg1," + , " char const *arg2," + , " char const *arg3," + , " botan_rng_t arg4" + , ")" + , "{" + , " return &botan_privkey_create;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_check_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_db8695431ff7edcb (void)) (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_privkey_check_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_create_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5f4930ad55550986 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_create_rsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_create_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a0e963f1868d3119 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_ecdsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_create_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_73599b64e6237668 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_ecdh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_create_mceliece */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_74306a33ea856de9 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return &botan_privkey_create_mceliece;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_create_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a1b719c11ed0d7aa (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_dh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_create_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3f36349d6dff2e56 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return &botan_privkey_create_dsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_create_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4367c741a6193c4b (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return &botan_privkey_create_elgamal;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9df9a021d3df1fd6 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " uint8_t const arg3[]," + , " size_t arg4," + , " char const *arg5" + , ")" + , "{" + , " return &botan_privkey_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_81af1a98bd499138 (void)) (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return &botan_privkey_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_export */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e89f71fb981c86c2 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_privkey_export;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_view_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d2051a589a0604f0 (void)) (" + , " botan_privkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return &botan_privkey_view_der;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_view_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_45a20ad6026633f5 (void)) (" + , " botan_privkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_str_fn arg3" + , ")" + , "{" + , " return &botan_privkey_view_pem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_algo_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e36e4b53f315f64e (void)) (" + , " botan_privkey_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_privkey_algo_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_export_encrypted */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b7175fb7c69de8a3 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " botan_rng_t arg4," + , " char const *arg5," + , " char const *arg6," + , " uint32_t arg7" + , ")" + , "{" + , " return &botan_privkey_export_encrypted;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_export_encrypted_pbkdf_msec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d46cb863a1e4b193 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " botan_rng_t arg4," + , " char const *arg5," + , " uint32_t arg6," + , " size_t *arg7," + , " char const *arg8," + , " char const *arg9," + , " uint32_t arg10" + , ")" + , "{" + , " return &botan_privkey_export_encrypted_pbkdf_msec;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_export_encrypted_pbkdf_iter */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_464f9ad8bb69b2d2 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " botan_rng_t arg4," + , " char const *arg5," + , " size_t arg6," + , " char const *arg7," + , " char const *arg8," + , " uint32_t arg9" + , ")" + , "{" + , " return &botan_privkey_export_encrypted_pbkdf_iter;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_view_encrypted_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_304de609f3b73c14 (void)) (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " char const *arg3," + , " char const *arg4," + , " char const *arg5," + , " size_t arg6," + , " botan_view_ctx arg7," + , " botan_view_bin_fn arg8" + , ")" + , "{" + , " return &botan_privkey_view_encrypted_der;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_view_encrypted_der_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_72b85e98338f4a9b (void)) (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " char const *arg3," + , " char const *arg4," + , " char const *arg5," + , " size_t arg6," + , " botan_view_ctx arg7," + , " botan_view_bin_fn arg8" + , ")" + , "{" + , " return &botan_privkey_view_encrypted_der_timed;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_view_encrypted_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_96cbc54ed61c8d2c (void)) (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " char const *arg3," + , " char const *arg4," + , " char const *arg5," + , " size_t arg6," + , " botan_view_ctx arg7," + , " botan_view_str_fn arg8" + , ")" + , "{" + , " return &botan_privkey_view_encrypted_pem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_view_encrypted_pem_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d14d41423bf8f8d7 (void)) (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " char const *arg3," + , " char const *arg4," + , " char const *arg5," + , " size_t arg6," + , " botan_view_ctx arg7," + , " botan_view_str_fn arg8" + , ")" + , "{" + , " return &botan_privkey_view_encrypted_pem_timed;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_58c4c2b5a0b81945 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_export_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e3d579829597c72d (void)) (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_export_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_export */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_55cab22800f95796 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_pubkey_export;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_view_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3aa3dc6501a45550 (void)) (" + , " botan_pubkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return &botan_pubkey_view_der;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_view_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_775f934342fa9f48 (void)) (" + , " botan_pubkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_str_fn arg3" + , ")" + , "{" + , " return &botan_pubkey_view_pem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_algo_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d076caff14bb51bd (void)) (" + , " botan_pubkey_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pubkey_algo_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_check_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_de2ba71514148317 (void)) (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_pubkey_check_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_estimated_strength */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_24d35a1f9849a56a (void)) (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pubkey_estimated_strength;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_fingerprint */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fd40db8d0e345b85 (void)) (" + , " botan_pubkey_t arg1," + , " char const *arg2," + , " uint8_t arg3[]," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_pubkey_fingerprint;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_784a0e0285766c13 (void)) (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return &botan_pubkey_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_get_field */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_289aa48a50e9ea23 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_pubkey_get_field;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_get_field */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b40fc37fcceb50fc (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_get_field;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_load_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_020413c1fb927ac0 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return &botan_privkey_load_rsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_load_rsa_pkcs1 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6855fb8718379683 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_load_rsa_pkcs1;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_rsa_get_p */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8114320700d38a72 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_p;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_rsa_get_q */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a15c3cab86f97b4a (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_q;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_rsa_get_d */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_04a0944e0e6277c3 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_d;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_rsa_get_n */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_60892aada23a171d (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_n;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_rsa_get_e */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8f768717931ec79b (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_e;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_rsa_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_987c0339221151e1 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_privkey_rsa_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_load_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2d24cd870225a6a8 (void)) (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load_rsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_rsa_get_e */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b98aa3d06c7273ed (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_rsa_get_e;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_rsa_get_n */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9c042f6543c5395a (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_rsa_get_n;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_load_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4accf5e538775883 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4," + , " botan_mp_t arg5" + , ")" + , "{" + , " return &botan_privkey_load_dsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_load_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f2f9d1acb14611b6 (void)) (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4," + , " botan_mp_t arg5" + , ")" + , "{" + , " return &botan_pubkey_load_dsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_dsa_get_x */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6e2de90a156084c3 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_dsa_get_x;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_dsa_get_p */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_24af730a1ca3c518 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_p;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_dsa_get_q */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2e92a25730d826bf (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_q;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_dsa_get_g */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f4bec7133507be99 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_g;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_dsa_get_y */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6fbacc3ad9dd1608 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_y;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_load_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dd719010f3487960 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return &botan_privkey_load_dh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_load_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d534fef212552006 (void)) (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return &botan_pubkey_load_dh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_load_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_66ba974ff70c13b7 (void)) (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return &botan_pubkey_load_elgamal;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_load_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ebb5c8f7e80936df (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return &botan_privkey_load_elgamal;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_load_ed25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_60cfcf05ac4b4c4f (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_privkey_load_ed25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_load_ed25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c86984d0fe3637bc (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_load_ed25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_ed25519_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0d90f6285580470c (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[64]" + , ")" + , "{" + , " return &botan_privkey_ed25519_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_ed25519_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bb19fd1ab36c05a6 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_ed25519_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_load_x25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_efc1e53e2692d1f3 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_privkey_load_x25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_load_x25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a52c4863d5c8f702 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_load_x25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_x25519_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_70efe0efeb4c4f85 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_privkey_x25519_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_x25519_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_59f91d120c4c4c24 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_x25519_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_load_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_958b7f7a0b40ed9b (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t const arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_ecdsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_load_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_571bcb48f1906df4 (void)) (" + , " botan_pubkey_t *arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3," + , " char const *arg4" + , ")" + , "{" + , " return &botan_pubkey_load_ecdsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_load_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_54868f6b21d1409f (void)) (" + , " botan_pubkey_t *arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3," + , " char const *arg4" + , ")" + , "{" + , " return &botan_pubkey_load_ecdh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_load_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_66a3c24bb10f34e9 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t const arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_ecdh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_load_sm2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0859838656ac9d88 (void)) (" + , " botan_pubkey_t *arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3," + , " char const *arg4" + , ")" + , "{" + , " return &botan_pubkey_load_sm2;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_load_sm2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c43ee32ff6829919 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t const arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_sm2;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_load_sm2_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7468d0c6c69840d8 (void)) (" + , " botan_pubkey_t *arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3," + , " char const *arg4" + , ")" + , "{" + , " return &botan_pubkey_load_sm2_enc;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_load_sm2_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_816deabd45e6c2b7 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t const arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_sm2_enc;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_sm2_compute_za */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_92d12db9f893101c (void)) (" + , " uint8_t arg1[]," + , " size_t *arg2," + , " char const *arg3," + , " char const *arg4," + , " botan_pubkey_t const arg5" + , ")" + , "{" + , " return &botan_pubkey_sm2_compute_za;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_view_ec_public_point */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_35a3952fa7e31e48 (void)) (" + , " botan_pubkey_t const arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return &botan_pubkey_view_ec_public_point;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_encrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9738ecb752eb068e (void)) (" + , " botan_pk_op_encrypt_t *arg1," + , " botan_pubkey_t arg2," + , " char const *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_pk_op_encrypt_create;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_encrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5374e720a5c13c58 (void)) (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_encrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_encrypt_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d5355a5088e804e9 (void)) (" + , " botan_pk_op_encrypt_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pk_op_encrypt_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d9efe12c0a9a83e7 (void)) (" + , " botan_pk_op_encrypt_t arg1," + , " botan_rng_t arg2," + , " uint8_t arg3[]," + , " size_t *arg4," + , " uint8_t const arg5[]," + , " size_t arg6" + , ")" + , "{" + , " return &botan_pk_op_encrypt;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_decrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_96f9240fea0c4946 (void)) (" + , " botan_pk_op_decrypt_t *arg1," + , " botan_privkey_t arg2," + , " char const *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_pk_op_decrypt_create;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_decrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2d63abea694d258e (void)) (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_decrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_decrypt_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a55c24c4f3b36cac (void)) (" + , " botan_pk_op_decrypt_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pk_op_decrypt_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2caf38a61977843e (void)) (" + , " botan_pk_op_decrypt_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint8_t const arg4[]," + , " size_t arg5" + , ")" + , "{" + , " return &botan_pk_op_decrypt;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_sign_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_676fd152b710ff66 (void)) (" + , " botan_pk_op_sign_t *arg1," + , " botan_privkey_t arg2," + , " char const *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_pk_op_sign_create;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_sign_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1ea3eaaa3ca82246 (void)) (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return &botan_pk_op_sign_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_sign_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_35ae8c960cf81996 (void)) (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pk_op_sign_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_sign_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6731fbd238949dcf (void)) (" + , " botan_pk_op_sign_t arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_pk_op_sign_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_sign_finish */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bce6ba80c3ea68f9 (void)) (" + , " botan_pk_op_sign_t arg1," + , " botan_rng_t arg2," + , " uint8_t arg3[]," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_pk_op_sign_finish;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_verify_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2db482d10c7df8f6 (void)) (" + , " botan_pk_op_verify_t *arg1," + , " botan_pubkey_t arg2," + , " char const *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_pk_op_verify_create;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_verify_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_95e56c42436dbdec (void)) (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return &botan_pk_op_verify_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_verify_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_26131444490f9d1b (void)) (" + , " botan_pk_op_verify_t arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_pk_op_verify_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_verify_finish */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d35a96168d04b08c (void)) (" + , " botan_pk_op_verify_t arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_pk_op_verify_finish;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_key_agreement_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6f3595639929db5b (void)) (" + , " botan_pk_op_ka_t *arg1," + , " botan_privkey_t arg2," + , " char const *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_create;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_key_agreement_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6c1698a964d163d9 (void)) (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_key_agreement_export_public */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1c8911f9f35ec151 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_export_public;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_key_agreement_view_public */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5958b0281abc3170 (void)) (" + , " botan_privkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_view_public;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_key_agreement_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_577550e98c353423 (void)) (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_key_agreement */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_36a9019a6de6b3c5 (void)) (" + , " botan_pk_op_ka_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint8_t const arg4[]," + , " size_t arg5," + , " uint8_t const arg6[]," + , " size_t arg7" + , ")" + , "{" + , " return &botan_pk_op_key_agreement;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_kem_encrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_384b205cea3a1b55 (void)) (" + , " botan_pk_op_kem_encrypt_t *arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_pk_op_kem_encrypt_create;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_kem_encrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_233777493f5a261b (void)) (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_kem_encrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_kem_encrypt_shared_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d41b30d668ff95c9 (void)) (" + , " botan_pk_op_kem_encrypt_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pk_op_kem_encrypt_shared_key_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_kem_encrypt_encapsulated_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_898438aded9d5215 (void)) (" + , " botan_pk_op_kem_encrypt_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pk_op_kem_encrypt_encapsulated_key_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_kem_encrypt_create_shared_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ae7ca1213b3d93be (void)) (" + , " botan_pk_op_kem_encrypt_t arg1," + , " botan_rng_t arg2," + , " uint8_t const arg3[]," + , " size_t arg4," + , " size_t arg5," + , " uint8_t arg6[]," + , " size_t *arg7," + , " uint8_t arg8[]," + , " size_t *arg9" + , ")" + , "{" + , " return &botan_pk_op_kem_encrypt_create_shared_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_kem_decrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f47f80e6bcb36111 (void)) (" + , " botan_pk_op_kem_decrypt_t *arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_pk_op_kem_decrypt_create;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_kem_decrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ad96bdb0d0327946 (void)) (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_kem_decrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_kem_decrypt_shared_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_caaaca8f7f5b0374 (void)) (" + , " botan_pk_op_kem_decrypt_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pk_op_kem_decrypt_shared_key_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_kem_decrypt_shared_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3f6eb2d559c644fd (void)) (" + , " botan_pk_op_kem_decrypt_t arg1," + , " uint8_t const arg2[]," + , " size_t arg3," + , " uint8_t const arg4[]," + , " size_t arg5," + , " size_t arg6," + , " uint8_t arg7[]," + , " size_t *arg8" + , ")" + , "{" + , " return &botan_pk_op_kem_decrypt_shared_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pkcs_hash_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8b166b15b35e6fea (void)) (" + , " char const *arg1," + , " uint8_t arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pkcs_hash_id;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mceies_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8a78febbda76e3e0 (void)) (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " char const *arg3," + , " uint8_t const arg4[]," + , " size_t arg5," + , " uint8_t const arg6[]," + , " size_t arg7," + , " uint8_t arg8[]," + , " size_t *arg9" + , ")" + , "{" + , " return &botan_mceies_encrypt;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mceies_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e342e5994d4984b7 (void)) (" + , " botan_privkey_t arg1," + , " char const *arg2," + , " uint8_t const arg3[]," + , " size_t arg4," + , " uint8_t const arg5[]," + , " size_t arg6," + , " uint8_t arg7[]," + , " size_t *arg8" + , ")" + , "{" + , " return &botan_mceies_decrypt;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_55eef68f0245106f (void)) (" + , " botan_x509_cert_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_x509_cert_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_load_file */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c840813eb1a81661 (void)) (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_cert_load_file;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_47184535ea87e693 (void)) (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return &botan_x509_cert_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_dup */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_433642bf837f0d0c (void)) (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return &botan_x509_cert_dup;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_get_time_starts */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_006232684bff6b1b (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_time_starts;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_get_time_expires */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c1afe2dc65da3f76 (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_time_expires;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_not_before */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b3bebd79b8139fa1 (void)) (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_not_before;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_not_after */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c16baa683f55fc10 (void)) (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_not_after;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_get_fingerprint */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_28c3bc0ae42c8b03 (void)) (" + , " botan_x509_cert_t arg1," + , " char const *arg2," + , " uint8_t arg3[]," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_x509_cert_get_fingerprint;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_get_serial_number */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_eb7cdd8de739e0ee (void)) (" + , " botan_x509_cert_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_serial_number;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_get_authority_key_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f70e478942fff9a1 (void)) (" + , " botan_x509_cert_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_authority_key_id;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_get_subject_key_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_136df29f6282e3fe (void)) (" + , " botan_x509_cert_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_subject_key_id;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_get_public_key_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_491e4c4ece5c887a (void)) (" + , " botan_x509_cert_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_public_key_bits;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_view_public_key_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a82beaa0c0cd62da (void)) (" + , " botan_x509_cert_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return &botan_x509_cert_view_public_key_bits;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_get_public_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_83e0f0c700e0f5d7 (void)) (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_get_public_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_get_issuer_dn */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6f6d9c98c7c6eab3 (void)) (" + , " botan_x509_cert_t arg1," + , " char const *arg2," + , " size_t arg3," + , " uint8_t arg4[]," + , " size_t *arg5" + , ")" + , "{" + , " return &botan_x509_cert_get_issuer_dn;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_get_subject_dn */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1b632e43d90a5a85 (void)) (" + , " botan_x509_cert_t arg1," + , " char const *arg2," + , " size_t arg3," + , " uint8_t arg4[]," + , " size_t *arg5" + , ")" + , "{" + , " return &botan_x509_cert_get_subject_dn;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_to_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7c3aaf7a09ac4509 (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_to_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_view_as_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_34fef2453c6b9131 (void)) (" + , " botan_x509_cert_t arg1," + , " botan_view_ctx arg2," + , " botan_view_str_fn arg3" + , ")" + , "{" + , " return &botan_x509_cert_view_as_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_allowed_usage */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_806bcbfcdece3c21 (void)) (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return &botan_x509_cert_allowed_usage;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_hostname_match */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9e7ea80f57209cb4 (void)) (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_cert_hostname_match;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_verify */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4de39f032dbfa9c2 (void)) (" + , " signed int *arg1," + , " botan_x509_cert_t arg2," + , " botan_x509_cert_t const *arg3," + , " size_t arg4," + , " botan_x509_cert_t const *arg5," + , " size_t arg6," + , " char const *arg7," + , " size_t arg8," + , " char const *arg9," + , " uint64_t arg10" + , ")" + , "{" + , " return &botan_x509_cert_verify;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_validation_status */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_5b5834d58c0f0d1d (void)) (" + , " signed int arg1" + , ")" + , "{" + , " return &botan_x509_cert_validation_status;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_crl_load_file */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2fcc03fae9b1b727 (void)) (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_crl_load_file;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_crl_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d19712415cccfb7c (void)) (" + , " botan_x509_crl_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_x509_crl_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_crl_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_36f93d92513a0cff (void)) (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return &botan_x509_crl_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_is_revoked */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3cbda894a2e028f1 (void)) (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return &botan_x509_is_revoked;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_verify_with_crl */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_30004abc9d720296 (void)) (" + , " signed int *arg1," + , " botan_x509_cert_t arg2," + , " botan_x509_cert_t const *arg3," + , " size_t arg4," + , " botan_x509_cert_t const *arg5," + , " size_t arg6," + , " botan_x509_crl_t const *arg7," + , " size_t arg8," + , " char const *arg9," + , " size_t arg10," + , " char const *arg11," + , " uint64_t arg12" + , ")" + , "{" + , " return &botan_x509_cert_verify_with_crl;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_key_wrap3394 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fa10806869c025fb (void)) (" + , " uint8_t const arg1[]," + , " size_t arg2," + , " uint8_t const arg3[]," + , " size_t arg4," + , " uint8_t arg5[]," + , " size_t *arg6" + , ")" + , "{" + , " return &botan_key_wrap3394;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_key_unwrap3394 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bed5dc75b7d1ce28 (void)) (" + , " uint8_t const arg1[]," + , " size_t arg2," + , " uint8_t const arg3[]," + , " size_t arg4," + , " uint8_t arg5[]," + , " size_t *arg6" + , ")" + , "{" + , " return &botan_key_unwrap3394;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_nist_kw_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a6eb371f3dd84775 (void)) (" + , " char const *arg1," + , " signed int arg2," + , " uint8_t const arg3[]," + , " size_t arg4," + , " uint8_t const arg5[]," + , " size_t arg6," + , " uint8_t arg7[]," + , " size_t *arg8" + , ")" + , "{" + , " return &botan_nist_kw_enc;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_nist_kw_dec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ba5a5e8f0bf30b05 (void)) (" + , " char const *arg1," + , " signed int arg2," + , " uint8_t const arg3[]," + , " size_t arg4," + , " uint8_t const arg5[]," + , " size_t arg6," + , " uint8_t arg7[]," + , " size_t *arg8" + , ")" + , "{" + , " return &botan_nist_kw_dec;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_hotp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c085d50bb724ccc7 (void)) (" + , " botan_hotp_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3," + , " char const *arg4," + , " size_t arg5" + , ")" + , "{" + , " return &botan_hotp_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_hotp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ff4211f5d4b4580d (void)) (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return &botan_hotp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_hotp_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c91b382dff276aea (void)) (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return &botan_hotp_generate;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_hotp_check */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a93eba51d3cc30b2 (void)) (" + , " botan_hotp_t arg1," + , " uint64_t *arg2," + , " uint32_t arg3," + , " uint64_t arg4," + , " size_t arg5" + , ")" + , "{" + , " return &botan_hotp_check;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_totp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_46f5366734270180 (void)) (" + , " botan_totp_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3," + , " char const *arg4," + , " size_t arg5," + , " size_t arg6" + , ")" + , "{" + , " return &botan_totp_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_totp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_deab82a703f6d294 (void)) (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return &botan_totp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_totp_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c4909f02f506571b (void)) (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return &botan_totp_generate;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_totp_check */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_59eeb78aa76b2fe8 (void)) (" + , " botan_totp_t arg1," + , " uint32_t arg2," + , " uint64_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return &botan_totp_check;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_fpe_fe1_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4b5e3f1bf224018a (void)) (" + , " botan_fpe_t *arg1," + , " botan_mp_t arg2," + , " uint8_t const arg3[]," + , " size_t arg4," + , " size_t arg5," + , " uint32_t arg6" + , ")" + , "{" + , " return &botan_fpe_fe1_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_fpe_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3710e8748f85a088 (void)) (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return &botan_fpe_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_fpe_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3507882e4652e06d (void)) (" + , " botan_fpe_t arg1," + , " botan_mp_t arg2," + , " uint8_t const arg3[]," + , " size_t arg4" + , ")" + , "{" + , " return &botan_fpe_encrypt;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_fpe_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f8afee3467878f04 (void)) (" + , " botan_fpe_t arg1," + , " botan_mp_t arg2," + , " uint8_t const arg3[]," + , " size_t arg4" + , ")" + , "{" + , " return &botan_fpe_decrypt;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_srp6_server_session_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c7bda5942b91c607 (void)) (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return &botan_srp6_server_session_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_srp6_server_session_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c7d360350b29d76b (void)) (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return &botan_srp6_server_session_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_srp6_server_session_step1 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_41f8ee21adf6189a (void)) (" + , " botan_srp6_server_session_t arg1," + , " uint8_t const arg2[]," + , " size_t arg3," + , " char const *arg4," + , " char const *arg5," + , " botan_rng_t arg6," + , " uint8_t arg7[]," + , " size_t *arg8" + , ")" + , "{" + , " return &botan_srp6_server_session_step1;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_srp6_server_session_step2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2d5a4d7650fda17a (void)) (" + , " botan_srp6_server_session_t arg1," + , " uint8_t const arg2[]," + , " size_t arg3," + , " uint8_t arg4[]," + , " size_t *arg5" + , ")" + , "{" + , " return &botan_srp6_server_session_step2;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_srp6_generate_verifier */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fd4150f48eebc0b7 (void)) (" + , " char const *arg1," + , " char const *arg2," + , " uint8_t const arg3[]," + , " size_t arg4," + , " char const *arg5," + , " char const *arg6," + , " uint8_t arg7[]," + , " size_t *arg8" + , ")" + , "{" + , " return &botan_srp6_generate_verifier;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_srp6_client_agree */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_59b62617ff5e6678 (void)) (" + , " char const *arg1," + , " char const *arg2," + , " char const *arg3," + , " char const *arg4," + , " uint8_t const arg5[]," + , " size_t arg6," + , " uint8_t const arg7[]," + , " size_t arg8," + , " botan_rng_t arg9," + , " uint8_t arg10[]," + , " size_t *arg11," + , " uint8_t arg12[]," + , " size_t *arg13" + , ")" + , "{" + , " return &botan_srp6_client_agree;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_srp6_group_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_27d41ba98b416828 (void)) (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_srp6_group_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_zfec_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f84f75fb5060d4f8 (void)) (" + , " size_t arg1," + , " size_t arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " uint8_t **arg5" + , ")" + , "{" + , " return &botan_zfec_encode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_zfec_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_44652559277d66d5 (void)) (" + , " size_t arg1," + , " size_t arg2," + , " size_t const *arg3," + , " uint8_t *const *const arg4," + , " size_t arg5," + , " uint8_t **arg6" + , ")" + , "{" + , " return &botan_zfec_decode;" + , "}" + ])) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_error_description@ +foreign import ccall unsafe "hs_bindgen_f708374b6e668c68" hs_bindgen_f708374b6e668c68 :: + IO (Ptr.FunPtr (FC.CInt -> IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar))) + +{-# NOINLINE botan_error_description #-} +{-| Convert an error code into a string. Returns "Unknown error" if the error code is not a known one. + +__C declaration:__ @botan_error_description@ + +__defined at:__ @botan\/ffi.h:125:35@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_error_description :: Ptr.FunPtr (FC.CInt -> IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar)) +botan_error_description = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_f708374b6e668c68 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_error_last_exception_message@ +foreign import ccall unsafe "hs_bindgen_57e00bc59b36abdb" hs_bindgen_57e00bc59b36abdb :: + IO (Ptr.FunPtr (IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar))) + +{-# NOINLINE botan_error_last_exception_message #-} +{-| Return the message of the last exception caught in this thread. + + This pointer can/will be reallocated or overwritten the next time this thread calls any other Botan FFI function and must be copied to persistent storage first. + +__C declaration:__ @botan_error_last_exception_message@ + +__defined at:__ @botan\/ffi.h:134:35@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_error_last_exception_message :: Ptr.FunPtr (IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar)) +botan_error_last_exception_message = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_57e00bc59b36abdb + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_ffi_api_version@ +foreign import ccall unsafe "hs_bindgen_533e6133106f0f2a" hs_bindgen_533e6133106f0f2a :: + IO (Ptr.FunPtr (IO HsBindgen.Runtime.Prelude.Word32)) + +{-# NOINLINE botan_ffi_api_version #-} +{-| Return the version of the currently supported FFI API. This is expressed in the form YYYYMMDD of the release date of this version of the API. + +__C declaration:__ @botan_ffi_api_version@ + +__defined at:__ @botan\/ffi.h:141:32@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_api_version :: Ptr.FunPtr (IO HsBindgen.Runtime.Prelude.Word32) +botan_ffi_api_version = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_533e6133106f0f2a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_ffi_supports_api@ +foreign import ccall unsafe "hs_bindgen_688ebc0775d4f684" hs_bindgen_688ebc0775d4f684 :: + IO (Ptr.FunPtr (HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_ffi_supports_api #-} +{-| Return 0 (ok) if the version given is one this library supports. botan_ffi_supports_api(botan_ffi_api_version()) will always return 0. + +__C declaration:__ @botan_ffi_supports_api@ + +__defined at:__ @botan\/ffi.h:147:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_supports_api :: Ptr.FunPtr (HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_ffi_supports_api = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_688ebc0775d4f684 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_version_string@ +foreign import ccall unsafe "hs_bindgen_3681ce7dca9774c8" hs_bindgen_3681ce7dca9774c8 :: + IO (Ptr.FunPtr (IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar))) + +{-# NOINLINE botan_version_string #-} +{-| Return a free-form version string, e.g., 2.0.0 + +__C declaration:__ @botan_version_string@ + +__defined at:__ @botan\/ffi.h:152:35@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_string :: Ptr.FunPtr (IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar)) +botan_version_string = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_3681ce7dca9774c8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_version_major@ +foreign import ccall unsafe "hs_bindgen_b5ccf1b7ef65ac0e" hs_bindgen_b5ccf1b7ef65ac0e :: + IO (Ptr.FunPtr (IO HsBindgen.Runtime.Prelude.Word32)) + +{-# NOINLINE botan_version_major #-} +{-| Return the major version of the library + +__C declaration:__ @botan_version_major@ + +__defined at:__ @botan\/ffi.h:157:32@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_major :: Ptr.FunPtr (IO HsBindgen.Runtime.Prelude.Word32) +botan_version_major = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_b5ccf1b7ef65ac0e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_version_minor@ +foreign import ccall unsafe "hs_bindgen_9ded2aaf61f1b532" hs_bindgen_9ded2aaf61f1b532 :: + IO (Ptr.FunPtr (IO HsBindgen.Runtime.Prelude.Word32)) + +{-# NOINLINE botan_version_minor #-} +{-| Return the minor version of the library + +__C declaration:__ @botan_version_minor@ + +__defined at:__ @botan\/ffi.h:162:32@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_minor :: Ptr.FunPtr (IO HsBindgen.Runtime.Prelude.Word32) +botan_version_minor = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_9ded2aaf61f1b532 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_version_patch@ +foreign import ccall unsafe "hs_bindgen_d54372767cd19bae" hs_bindgen_d54372767cd19bae :: + IO (Ptr.FunPtr (IO HsBindgen.Runtime.Prelude.Word32)) + +{-# NOINLINE botan_version_patch #-} +{-| Return the patch version of the library + +__C declaration:__ @botan_version_patch@ + +__defined at:__ @botan\/ffi.h:167:32@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_patch :: Ptr.FunPtr (IO HsBindgen.Runtime.Prelude.Word32) +botan_version_patch = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_d54372767cd19bae + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_version_datestamp@ +foreign import ccall unsafe "hs_bindgen_757e03fd7b055faf" hs_bindgen_757e03fd7b055faf :: + IO (Ptr.FunPtr (IO HsBindgen.Runtime.Prelude.Word32)) + +{-# NOINLINE botan_version_datestamp #-} +{-| Return the date this version was released as an integer, or 0 if an unreleased version + +__C declaration:__ @botan_version_datestamp@ + +__defined at:__ @botan\/ffi.h:173:32@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_datestamp :: Ptr.FunPtr (IO HsBindgen.Runtime.Prelude.Word32) +botan_version_datestamp = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_757e03fd7b055faf + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_constant_time_compare@ +foreign import ccall unsafe "hs_bindgen_aa4e452b8b8bce8c" hs_bindgen_aa4e452b8b8bce8c :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_constant_time_compare #-} +{-| Returns 0 if x[0..len] == y[0..len], or otherwise -1 + +__C declaration:__ @botan_constant_time_compare@ + +__defined at:__ @botan\/ffi.h:178:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_constant_time_compare :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_constant_time_compare = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_aa4e452b8b8bce8c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_same_mem@ +foreign import ccall unsafe "hs_bindgen_4d8ab8e6e5b386c1" hs_bindgen_4d8ab8e6e5b386c1 :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_same_mem #-} +{-| Deprecated equivalent to botan_constant_time_compare + +__C declaration:__ @botan_same_mem@ + +__defined at:__ @botan\/ffi.h:184:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_same_mem :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_same_mem = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_4d8ab8e6e5b386c1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_scrub_mem@ +foreign import ccall unsafe "hs_bindgen_cf169a23c137c6e8" hs_bindgen_cf169a23c137c6e8 :: + IO (Ptr.FunPtr ((Ptr.Ptr Void) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_scrub_mem #-} +{-| Clear out memory using a system specific approach to bypass elision by the compiler (currently using RtlSecureZeroMemory or tricks with volatile pointers). + +__C declaration:__ @botan_scrub_mem@ + +__defined at:__ @botan\/ffi.h:190:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_scrub_mem :: Ptr.FunPtr ((Ptr.Ptr Void) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_scrub_mem = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_cf169a23c137c6e8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_hex_encode@ +foreign import ccall unsafe "hs_bindgen_e9ab755971a6e72c" hs_bindgen_e9ab755971a6e72c :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_hex_encode #-} +{-| Perform hex encoding + + [__@x@ /(input)/__]: is some binary data + + [__@len@ /(input)/__]: length of x in bytes + + [__@out@ /(input)/__]: an array of at least x*2 bytes + + [__@flags@ /(input)/__]: flags out be upper or lower case? + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hex_encode@ + +__defined at:__ @botan\/ffi.h:202:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hex_encode :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_hex_encode = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_e9ab755971a6e72c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_hex_decode@ +foreign import ccall unsafe "hs_bindgen_b3ea062e48d9da66" hs_bindgen_b3ea062e48d9da66 :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_hex_decode #-} +{-| Perform hex decoding + + [__@hex_str@ /(input)/__]: a string of hex chars (whitespace is ignored) + + [__@in_len@ /(input)/__]: the length of hex_str + + [__@out@ /(input)/__]: the output buffer should be at least strlen(hex_str)/2 bytes + + [__@out_len@ /(input)/__]: the size of the output buffer on input, set to the number of bytes written + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hex_decode@ + +__defined at:__ @botan\/ffi.h:212:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hex_decode :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_hex_decode = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_b3ea062e48d9da66 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_base64_encode@ +foreign import ccall unsafe "hs_bindgen_698a15938540fabd" hs_bindgen_698a15938540fabd :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_base64_encode #-} +{-| Perform base64 encoding + +__C declaration:__ @botan_base64_encode@ + +__defined at:__ @botan\/ffi.h:217:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_base64_encode :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_base64_encode = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_698a15938540fabd + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_base64_decode@ +foreign import ccall unsafe "hs_bindgen_31c8131c0a87f932" hs_bindgen_31c8131c0a87f932 :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_base64_decode #-} +{-| Perform base64 decoding + +__C declaration:__ @botan_base64_decode@ + +__defined at:__ @botan\/ffi.h:223:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_base64_decode :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_base64_decode = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_31c8131c0a87f932 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_rng_init@ +foreign import ccall unsafe "hs_bindgen_6ebdf4611030b0cd" hs_bindgen_6ebdf4611030b0cd :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_rng_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_rng_init #-} +{-| Initialize a random number generator object + + [__@rng@ /(input)/__]: rng object + + [__@rng_type@ /(input)/__]: type of the rng, possible values: "system": system RNG "user": userspace RNG "user-threadsafe": userspace RNG, with internal locking "rdrand": directly read RDRAND Set rng_type to null to let the library choose some default. + +__C declaration:__ @botan_rng_init@ + +__defined at:__ @botan\/ffi.h:241:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_init :: Ptr.FunPtr ((Ptr.Ptr Botan_rng_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_rng_init = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_6ebdf4611030b0cd + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_rng_init_custom@ +foreign import ccall unsafe "hs_bindgen_d2e7c124d039872a" hs_bindgen_d2e7c124d039872a :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_rng_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (Ptr.Ptr Void) -> (Ptr.FunPtr ((Ptr.Ptr Void) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) -> (Ptr.FunPtr ((Ptr.Ptr Void) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) -> (Ptr.FunPtr ((Ptr.Ptr Void) -> IO ())) -> IO FC.CInt)) + +{-# NOINLINE botan_rng_init_custom #-} +{-| Initialize a custom random number generator from a set of callback functions + + [__@rng_out@ /(input)/__]: rng object to create + + [__@rng_name@ /(input)/__]: name of the rng + + [__@context@ /(input)/__]: An application-specific context passed to the callback functions + + [__@get_cb@ /(input)/__]: Callback for getting random bytes from the rng, return 0 for success + + [__@add_entropy_cb@ /(input)/__]: Callback for adding entropy to the rng, return 0 for success, may be NULL + + [__@destroy_cb@ /(input)/__]: Callback called when rng is destroyed, may be NULL + +__C declaration:__ @botan_rng_init_custom@ + +__defined at:__ @botan\/ffi.h:252:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_init_custom :: Ptr.FunPtr ((Ptr.Ptr Botan_rng_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (Ptr.Ptr Void) -> (Ptr.FunPtr ((Ptr.Ptr Void) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) -> (Ptr.FunPtr ((Ptr.Ptr Void) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) -> (Ptr.FunPtr ((Ptr.Ptr Void) -> IO ())) -> IO FC.CInt) +botan_rng_init_custom = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_d2e7c124d039872a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_rng_get@ +foreign import ccall unsafe "hs_bindgen_2bd5aa486cd1506f" hs_bindgen_2bd5aa486cd1506f :: + IO (Ptr.FunPtr (Botan_rng_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_rng_get #-} +{-| Get random bytes from a random number generator + + [__@rng@ /(input)/__]: rng object + + [__@out@ /(input)/__]: output buffer of size out_len + + [__@out_len@ /(input)/__]: number of requested bytes + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_rng_get@ + +__defined at:__ @botan\/ffi.h:264:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_get :: Ptr.FunPtr (Botan_rng_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_rng_get = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_2bd5aa486cd1506f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_system_rng_get@ +foreign import ccall unsafe "hs_bindgen_afef292ab480a508" hs_bindgen_afef292ab480a508 :: + IO (Ptr.FunPtr ((Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_system_rng_get #-} +{-| Get random bytes from system random number generator + + [__@out@ /(input)/__]: output buffer of size out_len + + [__@out_len@ /(input)/__]: number of requested bytes + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_system_rng_get@ + +__defined at:__ @botan\/ffi.h:272:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_system_rng_get :: Ptr.FunPtr ((Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_system_rng_get = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_afef292ab480a508 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_rng_reseed@ +foreign import ccall unsafe "hs_bindgen_8dac0e39cabfa3ab" hs_bindgen_8dac0e39cabfa3ab :: + IO (Ptr.FunPtr (Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_rng_reseed #-} +{-| Reseed a random number generator Uses the System_RNG as a seed generator. + + [__@rng@ /(input)/__]: rng object + + [__@bits@ /(input)/__]: number of bits to reseed with + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_rng_reseed@ + +__defined at:__ @botan\/ffi.h:282:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_reseed :: Ptr.FunPtr (Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_rng_reseed = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_8dac0e39cabfa3ab + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_rng_reseed_from_rng@ +foreign import ccall unsafe "hs_bindgen_74e7eb8720909d3d" hs_bindgen_74e7eb8720909d3d :: + IO (Ptr.FunPtr (Botan_rng_t -> Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_rng_reseed_from_rng #-} +{-| Reseed a random number generator + + [__@rng@ /(input)/__]: rng object + + [__@source_rng@ /(input)/__]: the rng that will be read from + + [__@bits@ /(input)/__]: number of bits to reseed with + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_rng_reseed_from_rng@ + +__defined at:__ @botan\/ffi.h:292:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_reseed_from_rng :: Ptr.FunPtr (Botan_rng_t -> Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_rng_reseed_from_rng = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_74e7eb8720909d3d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_rng_add_entropy@ +foreign import ccall unsafe "hs_bindgen_975cc582416475fe" hs_bindgen_975cc582416475fe :: + IO (Ptr.FunPtr (Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_rng_add_entropy #-} +{-| Add some seed material to a random number generator + + [__@rng@ /(input)/__]: rng object + + [__@entropy@ /(input)/__]: the data to add + + [__@entropy_len@ /(input)/__]: length of entropy buffer + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_rng_add_entropy@ + +__defined at:__ @botan\/ffi.h:304:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_add_entropy :: Ptr.FunPtr (Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_rng_add_entropy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_975cc582416475fe + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_rng_destroy@ +foreign import ccall unsafe "hs_bindgen_54c98ce966d7c180" hs_bindgen_54c98ce966d7c180 :: + IO (Ptr.FunPtr (Botan_rng_t -> IO FC.CInt)) + +{-# NOINLINE botan_rng_destroy #-} +{-| Frees all resources of the random number generator object + + [__@rng@ /(input)/__]: rng object + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_rng_destroy@ + +__defined at:__ @botan\/ffi.h:313:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_destroy :: Ptr.FunPtr (Botan_rng_t -> IO FC.CInt) +botan_rng_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_54c98ce966d7c180 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_hash_init@ +foreign import ccall unsafe "hs_bindgen_6f09131eaaca28e1" hs_bindgen_6f09131eaaca28e1 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_hash_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_hash_init #-} +{-| Initialize a hash function object + + [__@hash@ /(input)/__]: hash object + + [__@hash_name@ /(input)/__]: name of the hash function, e.g., "SHA-384" + + [__@flags@ /(input)/__]: should be 0 in current API revision, all other uses are reserved and return BOTAN_FFI_ERROR_BAD_FLAG + +__C declaration:__ @botan_hash_init@ + +__defined at:__ @botan\/ffi.h:327:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_init :: Ptr.FunPtr ((Ptr.Ptr Botan_hash_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_hash_init = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_6f09131eaaca28e1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_hash_copy_state@ +foreign import ccall unsafe "hs_bindgen_053c0d3948139ca0" hs_bindgen_053c0d3948139ca0 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_hash_t) -> Botan_hash_t -> IO FC.CInt)) + +{-# NOINLINE botan_hash_copy_state #-} +{-| Copy the state of a hash function object + + [__@dest@ /(input)/__]: destination hash object + + [__@source@ /(input)/__]: source hash object + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_copy_state@ + +__defined at:__ @botan\/ffi.h:335:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_copy_state :: Ptr.FunPtr ((Ptr.Ptr Botan_hash_t) -> Botan_hash_t -> IO FC.CInt) +botan_hash_copy_state = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_053c0d3948139ca0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_hash_output_length@ +foreign import ccall unsafe "hs_bindgen_1d29aeefbf6bb7ae" hs_bindgen_1d29aeefbf6bb7ae :: + IO (Ptr.FunPtr (Botan_hash_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_hash_output_length #-} +{-| Writes the output length of the hash function to *output_length + + [__@hash@ /(input)/__]: hash object + + [__@output_length@ /(input)/__]: output buffer to hold the hash function output length + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_output_length@ + +__defined at:__ @botan\/ffi.h:343:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_output_length :: Ptr.FunPtr (Botan_hash_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_hash_output_length = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_1d29aeefbf6bb7ae + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_hash_block_size@ +foreign import ccall unsafe "hs_bindgen_9b540de1d9aa3c55" hs_bindgen_9b540de1d9aa3c55 :: + IO (Ptr.FunPtr (Botan_hash_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_hash_block_size #-} +{-| Writes the block size of the hash function to *block_size + + [__@hash@ /(input)/__]: hash object + + [__@block_size@ /(input)/__]: output buffer to hold the hash function output length + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_block_size@ + +__defined at:__ @botan\/ffi.h:351:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_block_size :: Ptr.FunPtr (Botan_hash_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_hash_block_size = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_9b540de1d9aa3c55 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_hash_update@ +foreign import ccall unsafe "hs_bindgen_d696b1a070a6f846" hs_bindgen_d696b1a070a6f846 :: + IO (Ptr.FunPtr (Botan_hash_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_hash_update #-} +{-| Send more input to the hash function + + [__@hash@ /(input)/__]: hash object + + [__@in@ /(input)/__]: input buffer + + [__@in_len@ /(input)/__]: number of bytes to read from the input buffer + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_update@ + +__defined at:__ @botan\/ffi.h:360:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_update :: Ptr.FunPtr (Botan_hash_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_hash_update = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_d696b1a070a6f846 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_hash_final@ +foreign import ccall unsafe "hs_bindgen_ec9bd08f8c9aed7f" hs_bindgen_ec9bd08f8c9aed7f :: + IO (Ptr.FunPtr (Botan_hash_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt)) + +{-# NOINLINE botan_hash_final #-} +{-| Finalizes the hash computation and writes the output to out[0:botan_hash_output_length()] then reinitializes for computing another digest as if botan_hash_clear had been called. + + [__@hash@ /(input)/__]: hash object + + [__@out@ /(input)/__]: output buffer + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_final@ + +__defined at:__ @botan\/ffi.h:370:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_final :: Ptr.FunPtr (Botan_hash_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt) +botan_hash_final = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_ec9bd08f8c9aed7f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_hash_clear@ +foreign import ccall unsafe "hs_bindgen_72c1f052b86cce8b" hs_bindgen_72c1f052b86cce8b :: + IO (Ptr.FunPtr (Botan_hash_t -> IO FC.CInt)) + +{-# NOINLINE botan_hash_clear #-} +{-| Reinitializes the state of the hash computation. A hash can be computed (with update/final) immediately. + + [__@hash@ /(input)/__]: hash object + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_clear@ + +__defined at:__ @botan\/ffi.h:378:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_clear :: Ptr.FunPtr (Botan_hash_t -> IO FC.CInt) +botan_hash_clear = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_72c1f052b86cce8b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_hash_destroy@ +foreign import ccall unsafe "hs_bindgen_39171da9f2f77e21" hs_bindgen_39171da9f2f77e21 :: + IO (Ptr.FunPtr (Botan_hash_t -> IO FC.CInt)) + +{-# NOINLINE botan_hash_destroy #-} +{-| Frees all resources of the hash object + + [__@hash@ /(input)/__]: hash object + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_hash_destroy@ + +__defined at:__ @botan\/ffi.h:385:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_destroy :: Ptr.FunPtr (Botan_hash_t -> IO FC.CInt) +botan_hash_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_39171da9f2f77e21 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_hash_name@ +foreign import ccall unsafe "hs_bindgen_99221246063a5c05" hs_bindgen_99221246063a5c05 :: + IO (Ptr.FunPtr (Botan_hash_t -> (Ptr.Ptr FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_hash_name #-} +{-| Get the name of this hash function + + [__@hash@ /(input)/__]: the object to read + + [__@name@ /(input)/__]: output buffer + + [__@name_len@ /(input)/__]: on input, the length of buffer, on success the number of bytes written + +__C declaration:__ @botan_hash_name@ + +__defined at:__ @botan\/ffi.h:393:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_name :: Ptr.FunPtr (Botan_hash_t -> (Ptr.Ptr FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_hash_name = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_99221246063a5c05 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mac_init@ +foreign import ccall unsafe "hs_bindgen_ebf0a547678eb4e8" hs_bindgen_ebf0a547678eb4e8 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_mac_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_mac_init #-} +{-| Initialize a message authentication code object + + [__@mac@ /(input)/__]: mac object + + [__@mac_name@ /(input)/__]: name of the hash function, e.g., "HMAC(SHA-384)" + + [__@flags@ /(input)/__]: should be 0 in current API revision, all other uses are reserved and return a negative value (error code) + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_init@ + +__defined at:__ @botan\/ffi.h:408:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_init :: Ptr.FunPtr ((Ptr.Ptr Botan_mac_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_mac_init = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_ebf0a547678eb4e8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mac_output_length@ +foreign import ccall unsafe "hs_bindgen_b47e76748deb560a" hs_bindgen_b47e76748deb560a :: + IO (Ptr.FunPtr (Botan_mac_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_mac_output_length #-} +{-| Writes the output length of the message authentication code to *output_length + + [__@mac@ /(input)/__]: mac object + + [__@output_length@ /(input)/__]: output buffer to hold the MAC output length + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_output_length@ + +__defined at:__ @botan\/ffi.h:416:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_output_length :: Ptr.FunPtr (Botan_mac_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_mac_output_length = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_b47e76748deb560a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mac_set_key@ +foreign import ccall unsafe "hs_bindgen_eb2e1e78444edc68" hs_bindgen_eb2e1e78444edc68 :: + IO (Ptr.FunPtr (Botan_mac_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_mac_set_key #-} +{-| Sets the key on the MAC + + [__@mac@ /(input)/__]: mac object + + [__@key@ /(input)/__]: buffer holding the key + + [__@key_len@ /(input)/__]: size of the key buffer in bytes + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_set_key@ + +__defined at:__ @botan\/ffi.h:425:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_set_key :: Ptr.FunPtr (Botan_mac_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_mac_set_key = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_eb2e1e78444edc68 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mac_set_nonce@ +foreign import ccall unsafe "hs_bindgen_a485c63fd7c09b5e" hs_bindgen_a485c63fd7c09b5e :: + IO (Ptr.FunPtr (Botan_mac_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_mac_set_nonce #-} +{-| Sets the nonce on the MAC + + [__@mac@ /(input)/__]: mac object + + [__@nonce@ /(input)/__]: buffer holding the key + + [__@nonce_len@ /(input)/__]: size of the key buffer in bytes + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_set_nonce@ + +__defined at:__ @botan\/ffi.h:434:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_set_nonce :: Ptr.FunPtr (Botan_mac_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_mac_set_nonce = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_a485c63fd7c09b5e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mac_update@ +foreign import ccall unsafe "hs_bindgen_f62ce734c91eb73a" hs_bindgen_f62ce734c91eb73a :: + IO (Ptr.FunPtr (Botan_mac_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_mac_update #-} +{-| Send more input to the message authentication code + + [__@mac@ /(input)/__]: mac object + + [__@buf@ /(input)/__]: input buffer + + [__@len@ /(input)/__]: number of bytes to read from the input buffer + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_update@ + +__defined at:__ @botan\/ffi.h:443:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_update :: Ptr.FunPtr (Botan_mac_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_mac_update = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_f62ce734c91eb73a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mac_final@ +foreign import ccall unsafe "hs_bindgen_3c71b9c15f172a31" hs_bindgen_3c71b9c15f172a31 :: + IO (Ptr.FunPtr (Botan_mac_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt)) + +{-# NOINLINE botan_mac_final #-} +{-| Finalizes the MAC computation and writes the output to out[0:botan_mac_output_length()] then reinitializes for computing another MAC as if botan_mac_clear had been called. + + [__@mac@ /(input)/__]: mac object + + [__@out@ /(input)/__]: output buffer + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_final@ + +__defined at:__ @botan\/ffi.h:453:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_final :: Ptr.FunPtr (Botan_mac_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt) +botan_mac_final = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_3c71b9c15f172a31 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mac_clear@ +foreign import ccall unsafe "hs_bindgen_eebd0dc403addd8d" hs_bindgen_eebd0dc403addd8d :: + IO (Ptr.FunPtr (Botan_mac_t -> IO FC.CInt)) + +{-# NOINLINE botan_mac_clear #-} +{-| Reinitializes the state of the MAC computation. A MAC can be computed (with update/final) immediately. + + [__@mac@ /(input)/__]: mac object + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_clear@ + +__defined at:__ @botan\/ffi.h:461:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_clear :: Ptr.FunPtr (Botan_mac_t -> IO FC.CInt) +botan_mac_clear = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_eebd0dc403addd8d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mac_name@ +foreign import ccall unsafe "hs_bindgen_5918e21a36a6c67e" hs_bindgen_5918e21a36a6c67e :: + IO (Ptr.FunPtr (Botan_mac_t -> (Ptr.Ptr FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_mac_name #-} +{-| Get the name of this MAC + + [__@mac@ /(input)/__]: the object to read + + [__@name@ /(input)/__]: output buffer + + [__@name_len@ /(input)/__]: on input, the length of buffer, on success the number of bytes written + +__C declaration:__ @botan_mac_name@ + +__defined at:__ @botan\/ffi.h:469:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_name :: Ptr.FunPtr (Botan_mac_t -> (Ptr.Ptr FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_mac_name = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_5918e21a36a6c67e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mac_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_ce08606b2123a5a5" hs_bindgen_ce08606b2123a5a5 :: + IO (Ptr.FunPtr (Botan_mac_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_mac_get_keyspec #-} +{-| Get the key length limits of this auth code + + [__@mac@ /(input)/__]: the object to read + + [__@out_minimum_keylength@ /(input)/__]: if non-NULL, will be set to minimum keylength of MAC + + [__@out_maximum_keylength@ /(input)/__]: if non-NULL, will be set to maximum keylength of MAC + + [__@out_keylength_modulo@ /(input)/__]: if non-NULL will be set to byte multiple of valid keys + +__C declaration:__ @botan_mac_get_keyspec@ + +__defined at:__ @botan\/ffi.h:478:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_get_keyspec :: Ptr.FunPtr (Botan_mac_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_mac_get_keyspec = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_ce08606b2123a5a5 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mac_destroy@ +foreign import ccall unsafe "hs_bindgen_4efad385576a6503" hs_bindgen_4efad385576a6503 :: + IO (Ptr.FunPtr (Botan_mac_t -> IO FC.CInt)) + +{-# NOINLINE botan_mac_destroy #-} +{-| Frees all resources of the MAC object + + [__@mac@ /(input)/__]: mac object + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_mac_destroy@ + +__defined at:__ @botan\/ffi.h:488:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_destroy :: Ptr.FunPtr (Botan_mac_t -> IO FC.CInt) +botan_mac_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_4efad385576a6503 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_cipher_init@ +foreign import ccall unsafe "hs_bindgen_fd90a8c010488fa3" hs_bindgen_fd90a8c010488fa3 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_cipher_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_init #-} +{-| Initialize a cipher object + +__C declaration:__ @botan_cipher_init@ + +__defined at:__ @botan\/ffi.h:502:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_init :: Ptr.FunPtr ((Ptr.Ptr Botan_cipher_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_cipher_init = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_fd90a8c010488fa3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_cipher_name@ +foreign import ccall unsafe "hs_bindgen_3bf3033c51ec9494" hs_bindgen_3bf3033c51ec9494 :: + IO (Ptr.FunPtr (Botan_cipher_t -> (Ptr.Ptr FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_name #-} +{-| Return the name of the cipher object + +__C declaration:__ @botan_cipher_name@ + +__defined at:__ @botan\/ffi.h:507:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_name :: Ptr.FunPtr (Botan_cipher_t -> (Ptr.Ptr FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_cipher_name = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_3bf3033c51ec9494 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_cipher_output_length@ +foreign import ccall unsafe "hs_bindgen_7a9accbc486c513a" hs_bindgen_7a9accbc486c513a :: + IO (Ptr.FunPtr (Botan_cipher_t -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_output_length #-} +{-| Return the output length of this cipher, for a particular input length. + +__C declaration:__ @botan_cipher_output_length@ + +__defined at:__ @botan\/ffi.h:512:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_output_length :: Ptr.FunPtr (Botan_cipher_t -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_cipher_output_length = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_7a9accbc486c513a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_cipher_valid_nonce_length@ +foreign import ccall unsafe "hs_bindgen_ee9afe5bb9c4657f" hs_bindgen_ee9afe5bb9c4657f :: + IO (Ptr.FunPtr (Botan_cipher_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_valid_nonce_length #-} +{-| Return if the specified nonce length is valid for this cipher + +__C declaration:__ @botan_cipher_valid_nonce_length@ + +__defined at:__ @botan\/ffi.h:517:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_valid_nonce_length :: Ptr.FunPtr (Botan_cipher_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_cipher_valid_nonce_length = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_ee9afe5bb9c4657f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_cipher_get_tag_length@ +foreign import ccall unsafe "hs_bindgen_90af6ebcf2a9194e" hs_bindgen_90af6ebcf2a9194e :: + IO (Ptr.FunPtr (Botan_cipher_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_get_tag_length #-} +{-| Get the tag length of the cipher (0 for non-AEAD modes) + +__C declaration:__ @botan_cipher_get_tag_length@ + +__defined at:__ @botan\/ffi.h:522:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_get_tag_length :: Ptr.FunPtr (Botan_cipher_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_cipher_get_tag_length = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_90af6ebcf2a9194e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_cipher_get_default_nonce_length@ +foreign import ccall unsafe "hs_bindgen_0e62d0de1768dded" hs_bindgen_0e62d0de1768dded :: + IO (Ptr.FunPtr (Botan_cipher_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_get_default_nonce_length #-} +{-| Get the default nonce length of this cipher + +__C declaration:__ @botan_cipher_get_default_nonce_length@ + +__defined at:__ @botan\/ffi.h:527:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_get_default_nonce_length :: Ptr.FunPtr (Botan_cipher_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_cipher_get_default_nonce_length = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_0e62d0de1768dded + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_cipher_get_update_granularity@ +foreign import ccall unsafe "hs_bindgen_a84fe5be0e0dfd39" hs_bindgen_a84fe5be0e0dfd39 :: + IO (Ptr.FunPtr (Botan_cipher_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_get_update_granularity #-} +{-| Return the update granularity of the cipher; botan_cipher_update must be called with blocks of this size, except for the final. + +__C declaration:__ @botan_cipher_get_update_granularity@ + +__defined at:__ @botan\/ffi.h:533:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_get_update_granularity :: Ptr.FunPtr (Botan_cipher_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_cipher_get_update_granularity = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_a84fe5be0e0dfd39 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_cipher_get_ideal_update_granularity@ +foreign import ccall unsafe "hs_bindgen_f80b6f3f037a668c" hs_bindgen_f80b6f3f037a668c :: + IO (Ptr.FunPtr (Botan_cipher_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_get_ideal_update_granularity #-} +{-| Return the ideal update granularity of the cipher. This is some multiple of the update granularity, reflecting possibilities for optimization. + +__C declaration:__ @botan_cipher_get_ideal_update_granularity@ + +__defined at:__ @botan\/ffi.h:539:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_get_ideal_update_granularity :: Ptr.FunPtr (Botan_cipher_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_cipher_get_ideal_update_granularity = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_f80b6f3f037a668c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_cipher_query_keylen@ +foreign import ccall unsafe "hs_bindgen_d4273bb68b84c7aa" hs_bindgen_d4273bb68b84c7aa :: + IO (Ptr.FunPtr (Botan_cipher_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_query_keylen #-} +{-| Get information about the key lengths. Prefer botan_cipher_get_keyspec + +__C declaration:__ @botan_cipher_query_keylen@ + +__defined at:__ @botan\/ffi.h:544:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_query_keylen :: Ptr.FunPtr (Botan_cipher_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_cipher_query_keylen = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_d4273bb68b84c7aa + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_96daabe7ac7cfd94" hs_bindgen_96daabe7ac7cfd94 :: + IO (Ptr.FunPtr (Botan_cipher_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_get_keyspec #-} +{-| Get information about the supported key lengths. + +__C declaration:__ @botan_cipher_get_keyspec@ + +__defined at:__ @botan\/ffi.h:551:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_get_keyspec :: Ptr.FunPtr (Botan_cipher_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_cipher_get_keyspec = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_96daabe7ac7cfd94 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_4d84a0afb65ccc59" hs_bindgen_4d84a0afb65ccc59 :: + IO (Ptr.FunPtr (Botan_cipher_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_set_key #-} +{-| Set the key for this cipher object + +__C declaration:__ @botan_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:559:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_set_key :: Ptr.FunPtr (Botan_cipher_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_cipher_set_key = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_4d84a0afb65ccc59 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_cipher_reset@ +foreign import ccall unsafe "hs_bindgen_713dd56fa0b304a9" hs_bindgen_713dd56fa0b304a9 :: + IO (Ptr.FunPtr (Botan_cipher_t -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_reset #-} +{-| Reset the message specific state for this cipher. Without resetting the keys, this resets the nonce, and any state associated with any message bits that have been processed so far. + + It is conceptually equivalent to calling botan_cipher_clear followed by botan_cipher_set_key with the original key. + +__C declaration:__ @botan_cipher_reset@ + +__defined at:__ @botan\/ffi.h:570:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_reset :: Ptr.FunPtr (Botan_cipher_t -> IO FC.CInt) +botan_cipher_reset = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_713dd56fa0b304a9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_cipher_set_associated_data@ +foreign import ccall unsafe "hs_bindgen_598ecd86b2b6f298" hs_bindgen_598ecd86b2b6f298 :: + IO (Ptr.FunPtr (Botan_cipher_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_set_associated_data #-} +{-| Set the associated data. Will fail if cipher is not an AEAD + +__C declaration:__ @botan_cipher_set_associated_data@ + +__defined at:__ @botan\/ffi.h:575:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_set_associated_data :: Ptr.FunPtr (Botan_cipher_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_cipher_set_associated_data = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_598ecd86b2b6f298 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_cipher_start@ +foreign import ccall unsafe "hs_bindgen_a112aab19cf59d5a" hs_bindgen_a112aab19cf59d5a :: + IO (Ptr.FunPtr (Botan_cipher_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_start #-} +{-| Begin processing a new message using the provided nonce + +__C declaration:__ @botan_cipher_start@ + +__defined at:__ @botan\/ffi.h:581:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_start :: Ptr.FunPtr (Botan_cipher_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_cipher_start = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_a112aab19cf59d5a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_cipher_update@ +foreign import ccall unsafe "hs_bindgen_7e772109c39faa72" hs_bindgen_7e772109c39faa72 :: + IO (Ptr.FunPtr (Botan_cipher_t -> HsBindgen.Runtime.Prelude.Word32 -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_update #-} +{-| Encrypt some data + +__C declaration:__ @botan_cipher_update@ + +__defined at:__ @botan\/ffi.h:589:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_update :: Ptr.FunPtr (Botan_cipher_t -> HsBindgen.Runtime.Prelude.Word32 -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_cipher_update = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_7e772109c39faa72 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_be4a68350c9d09d3" hs_bindgen_be4a68350c9d09d3 :: + IO (Ptr.FunPtr (Botan_cipher_t -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_clear #-} +{-| Reset the key, nonce, AD and all other state on this cipher object + +__C declaration:__ @botan_cipher_clear@ + +__defined at:__ @botan\/ffi.h:601:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_clear :: Ptr.FunPtr (Botan_cipher_t -> IO FC.CInt) +botan_cipher_clear = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_be4a68350c9d09d3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_adcf926310ed845f" hs_bindgen_adcf926310ed845f :: + IO (Ptr.FunPtr (Botan_cipher_t -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_destroy #-} +{-| Destroy the cipher object + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_cipher_destroy@ + +__defined at:__ @botan\/ffi.h:607:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_destroy :: Ptr.FunPtr (Botan_cipher_t -> IO FC.CInt) +botan_cipher_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_adcf926310ed845f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pbkdf@ +foreign import ccall unsafe "hs_bindgen_01749f3532a625ff" hs_bindgen_01749f3532a625ff :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_pbkdf #-} +{-| __C declaration:__ @botan_pbkdf@ + + __defined at:__ @botan\/ffi.h:626:1@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pbkdf :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_pbkdf = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_01749f3532a625ff + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pbkdf_timed@ +foreign import ccall unsafe "hs_bindgen_d71ff07a012b84d8" hs_bindgen_d71ff07a012b84d8 :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_pbkdf_timed #-} +{-| Derive a key from a passphrase, running until msec time has elapsed. + + [__@pbkdf_algo@ /(input)/__]: PBKDF algorithm, e.g., "PBKDF2(SHA-256)" + + [__@out@ /(input)/__]: buffer to store the derived key, must be of out_len bytes + + [__@out_len@ /(input)/__]: the desired length of the key to produce + + [__@passphrase@ /(input)/__]: the password to derive the key from + + [__@salt@ /(input)/__]: a randomly chosen salt + + [__@salt_len@ /(input)/__]: length of salt in bytes + + [__@milliseconds_to_run@ /(input)/__]: if iterations is zero, then instead the PBKDF is run until milliseconds_to_run milliseconds has passed + + [__@out_iterations_used@ /(input)/__]: set to the number iterations executed + + __returns:__ 0 on success, a negative value on failure + + Deprecated: use + + botan_pwdhash_timed(pbkdf_algo, static_cast (ms_to_run), iterations_used, nullptr, nullptr, out, out_len, password, 0, salt, salt_len); + +__C declaration:__ @botan_pbkdf_timed@ + +__defined at:__ @botan\/ffi.h:656:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pbkdf_timed :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_pbkdf_timed = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_d71ff07a012b84d8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pwdhash@ +foreign import ccall unsafe "hs_bindgen_d2bad28e56681d99" hs_bindgen_d2bad28e56681d99 :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_pwdhash #-} +{-| __C declaration:__ @botan_pwdhash@ + + __defined at:__ @botan\/ffi.h:679:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pwdhash :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_pwdhash = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_d2bad28e56681d99 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pwdhash_timed@ +foreign import ccall unsafe "hs_bindgen_957c33d1060f6b30" hs_bindgen_957c33d1060f6b30 :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_pwdhash_timed #-} +{-| __C declaration:__ @botan_pwdhash_timed@ + + __defined at:__ @botan\/ffi.h:707:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pwdhash_timed :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_pwdhash_timed = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_957c33d1060f6b30 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_scrypt@ +foreign import ccall unsafe "hs_bindgen_274b99a8f55b0faa" hs_bindgen_274b99a8f55b0faa :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_scrypt #-} +{-| Derive a key using scrypt Deprecated; use botan_pwdhash("Scrypt", N, r, p, out, out_len, password, 0, salt, salt_len); + +__C declaration:__ @botan_scrypt@ + +__defined at:__ @botan\/ffi.h:727:1@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_scrypt :: Ptr.FunPtr ((HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_scrypt = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_274b99a8f55b0faa + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_kdf@ +foreign import ccall unsafe "hs_bindgen_c17fd092565b3ce3" hs_bindgen_c17fd092565b3ce3 :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_kdf #-} +{-| Derive a key + + [__@kdf_algo@ /(input)/__]: KDF algorithm, e.g., "SP800-56C" + + [__@out@ /(input)/__]: buffer holding the derived key, must be of length out_len + + [__@out_len@ /(input)/__]: the desired output length in bytes + + [__@secret@ /(input)/__]: the secret input + + [__@secret_len@ /(input)/__]: size of secret in bytes + + [__@salt@ /(input)/__]: a diversifier + + [__@salt_len@ /(input)/__]: size of salt in bytes + + [__@label@ /(input)/__]: purpose for the derived keying material + + [__@label_len@ /(input)/__]: size of label in bytes + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_kdf@ + +__defined at:__ @botan\/ffi.h:745:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_kdf :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_kdf = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_c17fd092565b3ce3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_block_cipher_init@ +foreign import ccall unsafe "hs_bindgen_2a73a1e16fdc4783" hs_bindgen_2a73a1e16fdc4783 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_block_cipher_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_block_cipher_init #-} +{-| Initialize a block cipher object + +__C declaration:__ @botan_block_cipher_init@ + +__defined at:__ @botan\/ffi.h:759:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_init :: Ptr.FunPtr ((Ptr.Ptr Botan_block_cipher_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_block_cipher_init = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_2a73a1e16fdc4783 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_block_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_70c940b2ca950447" hs_bindgen_70c940b2ca950447 :: + IO (Ptr.FunPtr (Botan_block_cipher_t -> IO FC.CInt)) + +{-# NOINLINE botan_block_cipher_destroy #-} +{-| Destroy a block cipher object + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_block_cipher_destroy@ + +__defined at:__ @botan\/ffi.h:766:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_destroy :: Ptr.FunPtr (Botan_block_cipher_t -> IO FC.CInt) +botan_block_cipher_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_70c940b2ca950447 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_block_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_8f337ea9192f83d9" hs_bindgen_8f337ea9192f83d9 :: + IO (Ptr.FunPtr (Botan_block_cipher_t -> IO FC.CInt)) + +{-# NOINLINE botan_block_cipher_clear #-} +{-| Reinitializes the block cipher + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_block_cipher_clear@ + +__defined at:__ @botan\/ffi.h:772:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_clear :: Ptr.FunPtr (Botan_block_cipher_t -> IO FC.CInt) +botan_block_cipher_clear = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_8f337ea9192f83d9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_block_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_f6f0f11296ee461c" hs_bindgen_f6f0f11296ee461c :: + IO (Ptr.FunPtr (Botan_block_cipher_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_block_cipher_set_key #-} +{-| Set the key for a block cipher instance + +__C declaration:__ @botan_block_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:777:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_set_key :: Ptr.FunPtr (Botan_block_cipher_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_block_cipher_set_key = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_f6f0f11296ee461c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_block_cipher_block_size@ +foreign import ccall unsafe "hs_bindgen_d1c04f8dd0d22e06" hs_bindgen_d1c04f8dd0d22e06 :: + IO (Ptr.FunPtr (Botan_block_cipher_t -> IO FC.CInt)) + +{-# NOINLINE botan_block_cipher_block_size #-} +{-| Return the positive block size of this block cipher, or negative to indicate an error + +__C declaration:__ @botan_block_cipher_block_size@ + +__defined at:__ @botan\/ffi.h:784:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_block_size :: Ptr.FunPtr (Botan_block_cipher_t -> IO FC.CInt) +botan_block_cipher_block_size = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_d1c04f8dd0d22e06 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_block_cipher_encrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_20ab73b206be9831" hs_bindgen_20ab73b206be9831 :: + IO (Ptr.FunPtr (Botan_block_cipher_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_block_cipher_encrypt_blocks #-} +{-| Encrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_encrypt_blocks@ + +__defined at:__ @botan\/ffi.h:789:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_encrypt_blocks :: Ptr.FunPtr (Botan_block_cipher_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_block_cipher_encrypt_blocks = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_20ab73b206be9831 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_block_cipher_decrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_74095ba7ab44fa2f" hs_bindgen_74095ba7ab44fa2f :: + IO (Ptr.FunPtr (Botan_block_cipher_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_block_cipher_decrypt_blocks #-} +{-| Decrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_decrypt_blocks@ + +__defined at:__ @botan\/ffi.h:797:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_decrypt_blocks :: Ptr.FunPtr (Botan_block_cipher_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_block_cipher_decrypt_blocks = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_74095ba7ab44fa2f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_block_cipher_name@ +foreign import ccall unsafe "hs_bindgen_f67593b69b0a8eef" hs_bindgen_f67593b69b0a8eef :: + IO (Ptr.FunPtr (Botan_block_cipher_t -> (Ptr.Ptr FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_block_cipher_name #-} +{-| Get the name of this block cipher + + [__@cipher@ /(input)/__]: the object to read + + [__@name@ /(input)/__]: output buffer + + [__@name_len@ /(input)/__]: on input, the length of buffer, on success the number of bytes written + +__C declaration:__ @botan_block_cipher_name@ + +__defined at:__ @botan\/ffi.h:808:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_name :: Ptr.FunPtr (Botan_block_cipher_t -> (Ptr.Ptr FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_block_cipher_name = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_f67593b69b0a8eef + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_block_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_1ca79112a3267a08" hs_bindgen_1ca79112a3267a08 :: + IO (Ptr.FunPtr (Botan_block_cipher_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_block_cipher_get_keyspec #-} +{-| Get the key length limits of this block cipher + + [__@cipher@ /(input)/__]: the object to read + + [__@out_minimum_keylength@ /(input)/__]: if non-NULL, will be set to minimum keylength of cipher + + [__@out_maximum_keylength@ /(input)/__]: if non-NULL, will be set to maximum keylength of cipher + + [__@out_keylength_modulo@ /(input)/__]: if non-NULL will be set to byte multiple of valid keys + +__C declaration:__ @botan_block_cipher_get_keyspec@ + +__defined at:__ @botan\/ffi.h:819:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_get_keyspec :: Ptr.FunPtr (Botan_block_cipher_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_block_cipher_get_keyspec = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_1ca79112a3267a08 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_init@ +foreign import ccall unsafe "hs_bindgen_c9789501c5ceb1c5" hs_bindgen_c9789501c5ceb1c5 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_mp_t) -> IO FC.CInt)) + +{-# NOINLINE botan_mp_init #-} +{-| Initialize an MPI + +__C declaration:__ @botan_mp_init@ + +__defined at:__ @botan\/ffi.h:832:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_init :: Ptr.FunPtr ((Ptr.Ptr Botan_mp_t) -> IO FC.CInt) +botan_mp_init = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_c9789501c5ceb1c5 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_destroy@ +foreign import ccall unsafe "hs_bindgen_f15cddcef729fb21" hs_bindgen_f15cddcef729fb21 :: + IO (Ptr.FunPtr (Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_destroy #-} +{-| Destroy (deallocate) an MPI + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_mp_destroy@ + +__defined at:__ @botan\/ffi.h:838:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_destroy :: Ptr.FunPtr (Botan_mp_t -> IO FC.CInt) +botan_mp_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_f15cddcef729fb21 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_to_hex@ +foreign import ccall unsafe "hs_bindgen_a8749ddbc54a2feb" hs_bindgen_a8749ddbc54a2feb :: + IO (Ptr.FunPtr (Botan_mp_t -> (Ptr.Ptr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_mp_to_hex #-} +{-| Convert the MPI to a hex string. Writes botan_mp_num_bytes(mp)*2 + 1 bytes + +__C declaration:__ @botan_mp_to_hex@ + +__defined at:__ @botan\/ffi.h:843:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_to_hex :: Ptr.FunPtr (Botan_mp_t -> (Ptr.Ptr FC.CChar) -> IO FC.CInt) +botan_mp_to_hex = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_a8749ddbc54a2feb + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_to_str@ +foreign import ccall unsafe "hs_bindgen_2d5365a8592c03e9" hs_bindgen_2d5365a8592c03e9 :: + IO (Ptr.FunPtr (Botan_mp_t -> HsBindgen.Runtime.Prelude.Word8 -> (Ptr.Ptr FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_mp_to_str #-} +{-| Convert the MPI to a string. Currently base == 10 and base == 16 are supported. + +__C declaration:__ @botan_mp_to_str@ + +__defined at:__ @botan\/ffi.h:848:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_to_str :: Ptr.FunPtr (Botan_mp_t -> HsBindgen.Runtime.Prelude.Word8 -> (Ptr.Ptr FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_mp_to_str = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_2d5365a8592c03e9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_clear@ +foreign import ccall unsafe "hs_bindgen_581509d1e5a1ff06" hs_bindgen_581509d1e5a1ff06 :: + IO (Ptr.FunPtr (Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_clear #-} +{-| Set the MPI to zero + +__C declaration:__ @botan_mp_clear@ + +__defined at:__ @botan\/ffi.h:853:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear :: Ptr.FunPtr (Botan_mp_t -> IO FC.CInt) +botan_mp_clear = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_581509d1e5a1ff06 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_set_from_int@ +foreign import ccall unsafe "hs_bindgen_a6e46348c0b042a7" hs_bindgen_a6e46348c0b042a7 :: + IO (Ptr.FunPtr (Botan_mp_t -> FC.CInt -> IO FC.CInt)) + +{-# NOINLINE botan_mp_set_from_int #-} +{-| Set the MPI value from an int + +__C declaration:__ @botan_mp_set_from_int@ + +__defined at:__ @botan\/ffi.h:858:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_set_from_int :: Ptr.FunPtr (Botan_mp_t -> FC.CInt -> IO FC.CInt) +botan_mp_set_from_int = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_a6e46348c0b042a7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_set_from_mp@ +foreign import ccall unsafe "hs_bindgen_7c520a32d336e986" hs_bindgen_7c520a32d336e986 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_set_from_mp #-} +{-| Set the MPI value from another MP object + +__C declaration:__ @botan_mp_set_from_mp@ + +__defined at:__ @botan\/ffi.h:863:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_set_from_mp :: Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_mp_set_from_mp = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_7c520a32d336e986 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_set_from_str@ +foreign import ccall unsafe "hs_bindgen_14a6543a1867ffde" hs_bindgen_14a6543a1867ffde :: + IO (Ptr.FunPtr (Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_mp_set_from_str #-} +{-| Set the MPI value from a string + +__C declaration:__ @botan_mp_set_from_str@ + +__defined at:__ @botan\/ffi.h:868:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_set_from_str :: Ptr.FunPtr (Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_mp_set_from_str = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_14a6543a1867ffde + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_set_from_radix_str@ +foreign import ccall unsafe "hs_bindgen_cd3b8ddf79902f0b" hs_bindgen_cd3b8ddf79902f0b :: + IO (Ptr.FunPtr (Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_mp_set_from_radix_str #-} +{-| Set the MPI value from a string with arbitrary radix. For arbitrary being 10 or 16. + +__C declaration:__ @botan_mp_set_from_radix_str@ + +__defined at:__ @botan\/ffi.h:874:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_set_from_radix_str :: Ptr.FunPtr (Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_mp_set_from_radix_str = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_cd3b8ddf79902f0b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_num_bits@ +foreign import ccall unsafe "hs_bindgen_3b8bc14620b424d9" hs_bindgen_3b8bc14620b424d9 :: + IO (Ptr.FunPtr (Botan_mp_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_mp_num_bits #-} +{-| Return the number of significant bits in the MPI + +__C declaration:__ @botan_mp_num_bits@ + +__defined at:__ @botan\/ffi.h:879:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_num_bits :: Ptr.FunPtr (Botan_mp_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_mp_num_bits = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_3b8bc14620b424d9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_num_bytes@ +foreign import ccall unsafe "hs_bindgen_9c810c8dce3e2d9b" hs_bindgen_9c810c8dce3e2d9b :: + IO (Ptr.FunPtr (Botan_mp_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_mp_num_bytes #-} +{-| Return the number of significant bytes in the MPI + +__C declaration:__ @botan_mp_num_bytes@ + +__defined at:__ @botan\/ffi.h:884:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_num_bytes :: Ptr.FunPtr (Botan_mp_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_mp_num_bytes = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_9c810c8dce3e2d9b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_to_bin@ +foreign import ccall unsafe "hs_bindgen_832fb56dfe83b8f9" hs_bindgen_832fb56dfe83b8f9 :: + IO (Ptr.FunPtr (Botan_mp_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt)) + +{-# NOINLINE botan_mp_to_bin #-} +{-| __C declaration:__ @botan_mp_to_bin@ + + __defined at:__ @botan\/ffi.h:889:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_to_bin :: Ptr.FunPtr (Botan_mp_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt) +botan_mp_to_bin = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_832fb56dfe83b8f9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_from_bin@ +foreign import ccall unsafe "hs_bindgen_fbdde449e87050c5" hs_bindgen_fbdde449e87050c5 :: + IO (Ptr.FunPtr (Botan_mp_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_mp_from_bin #-} +{-| __C declaration:__ @botan_mp_from_bin@ + + __defined at:__ @botan\/ffi.h:894:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_from_bin :: Ptr.FunPtr (Botan_mp_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_mp_from_bin = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_fbdde449e87050c5 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_to_uint32@ +foreign import ccall unsafe "hs_bindgen_cd1aece1eeb136c5" hs_bindgen_cd1aece1eeb136c5 :: + IO (Ptr.FunPtr (Botan_mp_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word32) -> IO FC.CInt)) + +{-# NOINLINE botan_mp_to_uint32 #-} +{-| __C declaration:__ @botan_mp_to_uint32@ + + __defined at:__ @botan\/ffi.h:899:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_to_uint32 :: Ptr.FunPtr (Botan_mp_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word32) -> IO FC.CInt) +botan_mp_to_uint32 = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_cd1aece1eeb136c5 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_is_positive@ +foreign import ccall unsafe "hs_bindgen_491206896aeb1d4e" hs_bindgen_491206896aeb1d4e :: + IO (Ptr.FunPtr (Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_is_positive #-} +{-| This function should have been named mp_is_non_negative. Returns 1 iff mp is greater than *or equal to* zero. Use botan_mp_is_negative to detect negative numbers, botan_mp_is_zero to check for zero. + +__C declaration:__ @botan_mp_is_positive@ + +__defined at:__ @botan\/ffi.h:906:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_positive :: Ptr.FunPtr (Botan_mp_t -> IO FC.CInt) +botan_mp_is_positive = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_491206896aeb1d4e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_is_negative@ +foreign import ccall unsafe "hs_bindgen_ea496d1002cf27a8" hs_bindgen_ea496d1002cf27a8 :: + IO (Ptr.FunPtr (Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_is_negative #-} +{-| Return 1 iff mp is less than 0 + +__C declaration:__ @botan_mp_is_negative@ + +__defined at:__ @botan\/ffi.h:911:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_negative :: Ptr.FunPtr (Botan_mp_t -> IO FC.CInt) +botan_mp_is_negative = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_ea496d1002cf27a8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_flip_sign@ +foreign import ccall unsafe "hs_bindgen_779b36357c98b844" hs_bindgen_779b36357c98b844 :: + IO (Ptr.FunPtr (Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_flip_sign #-} +{-| __C declaration:__ @botan_mp_flip_sign@ + + __defined at:__ @botan\/ffi.h:913:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_flip_sign :: Ptr.FunPtr (Botan_mp_t -> IO FC.CInt) +botan_mp_flip_sign = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_779b36357c98b844 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_is_zero@ +foreign import ccall unsafe "hs_bindgen_4e965d1f3f288b0b" hs_bindgen_4e965d1f3f288b0b :: + IO (Ptr.FunPtr (Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_is_zero #-} +{-| __C declaration:__ @botan_mp_is_zero@ + + __defined at:__ @botan\/ffi.h:915:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_zero :: Ptr.FunPtr (Botan_mp_t -> IO FC.CInt) +botan_mp_is_zero = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_4e965d1f3f288b0b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_is_odd@ +foreign import ccall unsafe "hs_bindgen_f3a59f2a7b67d30e" hs_bindgen_f3a59f2a7b67d30e :: + IO (Ptr.FunPtr (Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_is_odd #-} +{-| __C declaration:__ @botan_mp_is_odd@ + + __defined at:__ @botan\/ffi.h:918:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_odd :: Ptr.FunPtr (Botan_mp_t -> IO FC.CInt) +botan_mp_is_odd = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_f3a59f2a7b67d30e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_is_even@ +foreign import ccall unsafe "hs_bindgen_09837c0054ad0e6d" hs_bindgen_09837c0054ad0e6d :: + IO (Ptr.FunPtr (Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_is_even #-} +{-| __C declaration:__ @botan_mp_is_even@ + + __defined at:__ @botan\/ffi.h:920:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_even :: Ptr.FunPtr (Botan_mp_t -> IO FC.CInt) +botan_mp_is_even = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_09837c0054ad0e6d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_add_u32@ +foreign import ccall unsafe "hs_bindgen_28107afbbc004b69" hs_bindgen_28107afbbc004b69 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_mp_add_u32 #-} +{-| __C declaration:__ @botan_mp_add_u32@ + + __defined at:__ @botan\/ffi.h:922:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_add_u32 :: Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_mp_add_u32 = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_28107afbbc004b69 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_sub_u32@ +foreign import ccall unsafe "hs_bindgen_7ee2992a5990ea18" hs_bindgen_7ee2992a5990ea18 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_mp_sub_u32 #-} +{-| __C declaration:__ @botan_mp_sub_u32@ + + __defined at:__ @botan\/ffi.h:923:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_sub_u32 :: Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_mp_sub_u32 = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_7ee2992a5990ea18 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_add@ +foreign import ccall unsafe "hs_bindgen_b14166e369acb7e3" hs_bindgen_b14166e369acb7e3 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_add #-} +{-| __C declaration:__ @botan_mp_add@ + + __defined at:__ @botan\/ffi.h:925:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_add :: Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_mp_add = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_b14166e369acb7e3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_sub@ +foreign import ccall unsafe "hs_bindgen_dbed0ddfa58e24b3" hs_bindgen_dbed0ddfa58e24b3 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_sub #-} +{-| __C declaration:__ @botan_mp_sub@ + + __defined at:__ @botan\/ffi.h:926:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_sub :: Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_mp_sub = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_dbed0ddfa58e24b3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_mul@ +foreign import ccall unsafe "hs_bindgen_8c87cab9e784602a" hs_bindgen_8c87cab9e784602a :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_mul #-} +{-| __C declaration:__ @botan_mp_mul@ + + __defined at:__ @botan\/ffi.h:927:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_mul :: Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_mp_mul = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_8c87cab9e784602a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_div@ +foreign import ccall unsafe "hs_bindgen_26d462869decc7be" hs_bindgen_26d462869decc7be :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_div #-} +{-| __C declaration:__ @botan_mp_div@ + + __defined at:__ @botan\/ffi.h:929:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_div :: Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_mp_div = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_26d462869decc7be + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_mod_mul@ +foreign import ccall unsafe "hs_bindgen_b2acd7b141f7d0cc" hs_bindgen_b2acd7b141f7d0cc :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_mod_mul #-} +{-| __C declaration:__ @botan_mp_mod_mul@ + + __defined at:__ @botan\/ffi.h:933:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_mod_mul :: Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_mp_mod_mul = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_b2acd7b141f7d0cc + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_equal@ +foreign import ccall unsafe "hs_bindgen_6005dd48aeffc710" hs_bindgen_6005dd48aeffc710 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_equal #-} +{-| __C declaration:__ @botan_mp_equal@ + + __defined at:__ @botan\/ffi.h:941:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_equal :: Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_mp_equal = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_6005dd48aeffc710 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_cmp@ +foreign import ccall unsafe "hs_bindgen_b45c0ba757a65519" hs_bindgen_b45c0ba757a65519 :: + IO (Ptr.FunPtr ((Ptr.Ptr FC.CInt) -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_cmp #-} +{-| __C declaration:__ @botan_mp_cmp@ + + __defined at:__ @botan\/ffi.h:948:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_cmp :: Ptr.FunPtr ((Ptr.Ptr FC.CInt) -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_mp_cmp = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_b45c0ba757a65519 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_swap@ +foreign import ccall unsafe "hs_bindgen_4506969cb56ae6bd" hs_bindgen_4506969cb56ae6bd :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_swap #-} +{-| __C declaration:__ @botan_mp_swap@ + + __defined at:__ @botan\/ffi.h:953:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_swap :: Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_mp_swap = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_4506969cb56ae6bd + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_powmod@ +foreign import ccall unsafe "hs_bindgen_9d3c00289790194e" hs_bindgen_9d3c00289790194e :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_powmod #-} +{-| __C declaration:__ @botan_mp_powmod@ + + __defined at:__ @botan\/ffi.h:956:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_powmod :: Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_mp_powmod = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_9d3c00289790194e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_lshift@ +foreign import ccall unsafe "hs_bindgen_f73e06dc18a42589" hs_bindgen_f73e06dc18a42589 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_mp_lshift #-} +{-| __C declaration:__ @botan_mp_lshift@ + + __defined at:__ @botan\/ffi.h:958:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_lshift :: Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_mp_lshift = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_f73e06dc18a42589 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_rshift@ +foreign import ccall unsafe "hs_bindgen_773c3b1b53515283" hs_bindgen_773c3b1b53515283 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_mp_rshift #-} +{-| __C declaration:__ @botan_mp_rshift@ + + __defined at:__ @botan\/ffi.h:959:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_rshift :: Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_mp_rshift = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_773c3b1b53515283 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_mod_inverse@ +foreign import ccall unsafe "hs_bindgen_e0d69cf1ec61d6bf" hs_bindgen_e0d69cf1ec61d6bf :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_mod_inverse #-} +{-| __C declaration:__ @botan_mp_mod_inverse@ + + __defined at:__ @botan\/ffi.h:961:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_mod_inverse :: Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_mp_mod_inverse = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_e0d69cf1ec61d6bf + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_rand_bits@ +foreign import ccall unsafe "hs_bindgen_244449fa0dc152a2" hs_bindgen_244449fa0dc152a2 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_mp_rand_bits #-} +{-| __C declaration:__ @botan_mp_rand_bits@ + + __defined at:__ @botan\/ffi.h:963:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_rand_bits :: Ptr.FunPtr (Botan_mp_t -> Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_mp_rand_bits = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_244449fa0dc152a2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_rand_range@ +foreign import ccall unsafe "hs_bindgen_ff617ac66517c3b1" hs_bindgen_ff617ac66517c3b1 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_rng_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_rand_range #-} +{-| __C declaration:__ @botan_mp_rand_range@ + + __defined at:__ @botan\/ffi.h:965:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_rand_range :: Ptr.FunPtr (Botan_mp_t -> Botan_rng_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_mp_rand_range = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_ff617ac66517c3b1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_gcd@ +foreign import ccall unsafe "hs_bindgen_c10a9b38cab99314" hs_bindgen_c10a9b38cab99314 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_gcd #-} +{-| __C declaration:__ @botan_mp_gcd@ + + __defined at:__ @botan\/ffi.h:968:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_gcd :: Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_mp_gcd = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_c10a9b38cab99314 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_is_prime@ +foreign import ccall unsafe "hs_bindgen_2b4a1196ad35ea99" hs_bindgen_2b4a1196ad35ea99 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_mp_is_prime #-} +{-| Returns 0 if n is not prime Returns 1 if n is prime Returns negative number on error + +__C declaration:__ @botan_mp_is_prime@ + +__defined at:__ @botan\/ffi.h:975:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_prime :: Ptr.FunPtr (Botan_mp_t -> Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_mp_is_prime = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_2b4a1196ad35ea99 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_get_bit@ +foreign import ccall unsafe "hs_bindgen_4b6e43e127e76a69" hs_bindgen_4b6e43e127e76a69 :: + IO (Ptr.FunPtr (Botan_mp_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_mp_get_bit #-} +{-| Returns 0 if specified bit of n is not set Returns 1 if specified bit of n is set Returns negative number on error + +__C declaration:__ @botan_mp_get_bit@ + +__defined at:__ @botan\/ffi.h:982:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_get_bit :: Ptr.FunPtr (Botan_mp_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_mp_get_bit = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_4b6e43e127e76a69 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_set_bit@ +foreign import ccall unsafe "hs_bindgen_351ab593fb8fb522" hs_bindgen_351ab593fb8fb522 :: + IO (Ptr.FunPtr (Botan_mp_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_mp_set_bit #-} +{-| Set the specified bit + +__C declaration:__ @botan_mp_set_bit@ + +__defined at:__ @botan\/ffi.h:987:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_set_bit :: Ptr.FunPtr (Botan_mp_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_mp_set_bit = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_351ab593fb8fb522 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mp_clear_bit@ +foreign import ccall unsafe "hs_bindgen_b6952e465eb5b3b9" hs_bindgen_b6952e465eb5b3b9 :: + IO (Ptr.FunPtr (Botan_mp_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_mp_clear_bit #-} +{-| Clear the specified bit + +__C declaration:__ @botan_mp_clear_bit@ + +__defined at:__ @botan\/ffi.h:992:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear_bit :: Ptr.FunPtr (Botan_mp_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_mp_clear_bit = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_b6952e465eb5b3b9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_bcrypt_generate@ +foreign import ccall unsafe "hs_bindgen_2f8203349e189601" hs_bindgen_2f8203349e189601 :: + IO (Ptr.FunPtr ((Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_bcrypt_generate #-} +{-| Create a password hash using Bcrypt + + [__@out@ /(input)/__]: buffer holding the password hash, should be of length 64 bytes + + [__@out_len@ /(input)/__]: the desired output length in bytes + + [__@password@ /(input)/__]: the password + + [__@rng@ /(input)/__]: a random number generator + + [__@work_factor@ /(input)/__]: how much work to do to slow down guessing attacks + + [__@flags@ /(input)/__]: should be 0 in current API revision, all other uses are reserved and return BOTAN_FFI_ERROR_BAD_FLAG + + __returns:__ 0 on success, a negative value on failure + + Output is formatted bcrypt $2a$... + +__C declaration:__ @botan_bcrypt_generate@ + +__defined at:__ @botan\/ffi.h:1009:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_bcrypt_generate :: Ptr.FunPtr ((Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_bcrypt_generate = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_2f8203349e189601 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_bcrypt_is_valid@ +foreign import ccall unsafe "hs_bindgen_c0766ccd090faefe" hs_bindgen_c0766ccd090faefe :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_bcrypt_is_valid #-} +{-| Check a previously created password hash + + [__@pass@ /(input)/__]: the password to check against + + [__@hash@ /(input)/__]: the stored hash to check against + + __returns:__ 0 if if this password/hash combination is valid, 1 if the combination is not valid (but otherwise well formed), negative on error + +__C declaration:__ @botan_bcrypt_is_valid@ + +__defined at:__ @botan\/ffi.h:1023:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_bcrypt_is_valid :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_bcrypt_is_valid = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_c0766ccd090faefe + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_create@ +foreign import ccall unsafe "hs_bindgen_f8149decb8090790" hs_bindgen_f8149decb8090790 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> Botan_rng_t -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_create #-} +{-| Create a new private key + + [__@key@ /(input)/__]: the new object will be placed here + + [__@algo_name@ /(input)/__]: something like "RSA" or "ECDSA" + + [__@algo_params@ /(input)/__]: is specific to the algorithm. For RSA, specifies the modulus bit length. For ECC is the name of the curve. + + [__@rng@ /(input)/__]: a random number generator + +__C declaration:__ @botan_privkey_create@ + +__defined at:__ @botan\/ffi.h:1038:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> Botan_rng_t -> IO FC.CInt) +botan_privkey_create = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_f8149decb8090790 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_check_key@ +foreign import ccall unsafe "hs_bindgen_db8695431ff7edcb" hs_bindgen_db8695431ff7edcb :: + IO (Ptr.FunPtr (Botan_privkey_t -> Botan_rng_t -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_check_key #-} +{-| __C declaration:__ @botan_privkey_check_key@ + + __defined at:__ @botan\/ffi.h:1045:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_check_key :: Ptr.FunPtr (Botan_privkey_t -> Botan_rng_t -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_privkey_check_key = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_db8695431ff7edcb + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_create_rsa@ +foreign import ccall unsafe "hs_bindgen_5f4930ad55550986" hs_bindgen_5f4930ad55550986 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_create_rsa #-} +{-| __C declaration:__ @botan_privkey_create_rsa@ + + __defined at:__ @botan\/ffi.h:1048:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create_rsa :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_privkey_create_rsa = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_5f4930ad55550986 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_create_ecdsa@ +foreign import ccall unsafe "hs_bindgen_a0e963f1868d3119" hs_bindgen_a0e963f1868d3119 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_create_ecdsa #-} +{-| __C declaration:__ @botan_privkey_create_ecdsa@ + + __defined at:__ @botan\/ffi.h:1050:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create_ecdsa :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_privkey_create_ecdsa = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_a0e963f1868d3119 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_create_ecdh@ +foreign import ccall unsafe "hs_bindgen_73599b64e6237668" hs_bindgen_73599b64e6237668 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_create_ecdh #-} +{-| __C declaration:__ @botan_privkey_create_ecdh@ + + __defined at:__ @botan\/ffi.h:1052:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create_ecdh :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_privkey_create_ecdh = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_73599b64e6237668 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_create_mceliece@ +foreign import ccall unsafe "hs_bindgen_74306a33ea856de9" hs_bindgen_74306a33ea856de9 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_create_mceliece #-} +{-| __C declaration:__ @botan_privkey_create_mceliece@ + + __defined at:__ @botan\/ffi.h:1054:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create_mceliece :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_privkey_create_mceliece = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_74306a33ea856de9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_create_dh@ +foreign import ccall unsafe "hs_bindgen_a1b719c11ed0d7aa" hs_bindgen_a1b719c11ed0d7aa :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_create_dh #-} +{-| __C declaration:__ @botan_privkey_create_dh@ + + __defined at:__ @botan\/ffi.h:1056:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create_dh :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_privkey_create_dh = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_a1b719c11ed0d7aa + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_create_dsa@ +foreign import ccall unsafe "hs_bindgen_3f36349d6dff2e56" hs_bindgen_3f36349d6dff2e56 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_create_dsa #-} +{-| Generates DSA key pair. Gives to a caller control over key length and order of a subgroup 'q'. + + [__@key@ /(input)/__]: handler to the resulting key + + [__@rng@ /(input)/__]: initialized PRNG + + [__@pbits@ /(input)/__]: length of the key in bits. Must be between in range (1024, 3072) and multiple of 64. Bit size of the prime 'p' + + [__@qbits@ /(input)/__]: order of the subgroup. Must be in range (160, 256) and multiple of 8 + + __returns:__ BOTAN_FFI_SUCCESS Success, `key' initialized with DSA key + + __returns:__ BOTAN_FFI_ERROR_NULL_POINTER either `key' or `rng' is NULL + + __returns:__ BOTAN_FFI_ERROR_BAD_PARAMETER unexpected value for either `pbits' or `qbits' + + __returns:__ BOTAN_FFI_ERROR_NOT_IMPLEMENTED functionality not implemented + +__C declaration:__ @botan_privkey_create_dsa@ + +__defined at:__ @botan\/ffi.h:1076:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create_dsa :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_privkey_create_dsa = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_3f36349d6dff2e56 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_create_elgamal@ +foreign import ccall unsafe "hs_bindgen_4367c741a6193c4b" hs_bindgen_4367c741a6193c4b :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_create_elgamal #-} +{-| Generates ElGamal key pair. Caller has a control over key length and order of a subgroup 'q'. Function is able to use two types of primes: * if pbits-1 == qbits then safe primes are used for key generation * otherwise generation uses group of prime order + + [__@key@ /(input)/__]: handler to the resulting key + + [__@rng@ /(input)/__]: initialized PRNG + + [__@pbits@ /(input)/__]: length of the key in bits. Must be at least 1024 + + [__@qbits@ /(input)/__]: order of the subgroup. Must be at least 160 + + __returns:__ BOTAN_FFI_SUCCESS Success, `key' initialized with DSA key + + __returns:__ BOTAN_FFI_ERROR_NULL_POINTER either `key' or `rng' is NULL + + __returns:__ BOTAN_FFI_ERROR_BAD_PARAMETER unexpected value for either `pbits' or `qbits' + + __returns:__ BOTAN_FFI_ERROR_NOT_IMPLEMENTED functionality not implemented + +__C declaration:__ @botan_privkey_create_elgamal@ + +__defined at:__ @botan\/ffi.h:1101:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create_elgamal :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_privkey_create_elgamal = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_4367c741a6193c4b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_load@ +foreign import ccall unsafe "hs_bindgen_9df9a021d3df1fd6" hs_bindgen_9df9a021d3df1fd6 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_rng_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_load #-} +{-| Input currently assumed to be PKCS #8 structure; Set password to NULL to indicate no encryption expected Starting in 2.8.0, the rng parameter is unused and may be set to null + +__C declaration:__ @botan_privkey_load@ + +__defined at:__ @botan\/ffi.h:1112:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_rng_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_privkey_load = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_9df9a021d3df1fd6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_destroy@ +foreign import ccall unsafe "hs_bindgen_81af1a98bd499138" hs_bindgen_81af1a98bd499138 :: + IO (Ptr.FunPtr (Botan_privkey_t -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_destroy #-} +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_privkey_destroy@ + +__defined at:__ @botan\/ffi.h:1120:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_destroy :: Ptr.FunPtr (Botan_privkey_t -> IO FC.CInt) +botan_privkey_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_81af1a98bd499138 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_export@ +foreign import ccall unsafe "hs_bindgen_e89f71fb981c86c2" hs_bindgen_e89f71fb981c86c2 :: + IO (Ptr.FunPtr (Botan_privkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_export #-} +{-| On input *out_len is number of bytes in out[] On output *out_len is number of bytes written (or required) If out is not big enough no output is written, *out_len is set and 1 is returned Returns 0 on success and sets If some other error occurs a negative integer is returned. + +__C declaration:__ @botan_privkey_export@ + +__defined at:__ @botan\/ffi.h:1132:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_export :: Ptr.FunPtr (Botan_privkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_privkey_export = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_e89f71fb981c86c2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_view_der@ +foreign import ccall unsafe "hs_bindgen_d2051a589a0604f0" hs_bindgen_d2051a589a0604f0 :: + IO (Ptr.FunPtr (Botan_privkey_t -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_view_der #-} +{-| View the private key's DER encoding + +__C declaration:__ @botan_privkey_view_der@ + +__defined at:__ @botan\/ffi.h:1139:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_view_der :: Ptr.FunPtr (Botan_privkey_t -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt) +botan_privkey_view_der = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_d2051a589a0604f0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_45a20ad6026633f5" hs_bindgen_45a20ad6026633f5 :: + IO (Ptr.FunPtr (Botan_privkey_t -> Botan_view_ctx -> Botan_view_str_fn -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_view_pem #-} +{-| View the private key's PEM encoding + +__C declaration:__ @botan_privkey_view_pem@ + +__defined at:__ @botan\/ffi.h:1147:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_view_pem :: Ptr.FunPtr (Botan_privkey_t -> Botan_view_ctx -> Botan_view_str_fn -> IO FC.CInt) +botan_privkey_view_pem = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_45a20ad6026633f5 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_e36e4b53f315f64e" hs_bindgen_e36e4b53f315f64e :: + IO (Ptr.FunPtr (Botan_privkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_algo_name #-} +{-| __C declaration:__ @botan_privkey_algo_name@ + + __defined at:__ @botan\/ffi.h:1152:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_algo_name :: Ptr.FunPtr (Botan_privkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_privkey_algo_name = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_e36e4b53f315f64e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_export_encrypted@ +foreign import ccall unsafe "hs_bindgen_b7175fb7c69de8a3" hs_bindgen_b7175fb7c69de8a3 :: + IO (Ptr.FunPtr (Botan_privkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_export_encrypted #-} +{-| __C declaration:__ @botan_privkey_export_encrypted@ + + __defined at:__ @botan\/ffi.h:1158:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_export_encrypted :: Ptr.FunPtr (Botan_privkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_privkey_export_encrypted = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_b7175fb7c69de8a3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall unsafe "hs_bindgen_d46cb863a1e4b193" hs_bindgen_d46cb863a1e4b193 :: + IO (Ptr.FunPtr (Botan_privkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_export_encrypted_pbkdf_msec #-} +{-| __C declaration:__ @botan_privkey_export_encrypted_pbkdf_msec@ + + __defined at:__ @botan\/ffi.h:1171:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_export_encrypted_pbkdf_msec :: Ptr.FunPtr (Botan_privkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_privkey_export_encrypted_pbkdf_msec = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_d46cb863a1e4b193 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall unsafe "hs_bindgen_464f9ad8bb69b2d2" hs_bindgen_464f9ad8bb69b2d2 :: + IO (Ptr.FunPtr (Botan_privkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_export_encrypted_pbkdf_iter #-} +{-| Export a private key using the specified number of iterations. + +__C declaration:__ @botan_privkey_export_encrypted_pbkdf_iter@ + +__defined at:__ @botan\/ffi.h:1184:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_export_encrypted_pbkdf_iter :: Ptr.FunPtr (Botan_privkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_privkey_export_encrypted_pbkdf_iter = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_464f9ad8bb69b2d2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_view_encrypted_der@ +foreign import ccall unsafe "hs_bindgen_304de609f3b73c14" hs_bindgen_304de609f3b73c14 :: + IO (Ptr.FunPtr (Botan_privkey_t -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_view_encrypted_der #-} +{-| View the encryption of a private key (binary DER encoding) + + Set cipher_algo, pbkdf_algo to NULL to use defaults Set pbkdf_iterations to 0 to use defaults + +__C declaration:__ @botan_privkey_view_encrypted_der@ + +__defined at:__ @botan\/ffi.h:1199:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_view_encrypted_der :: Ptr.FunPtr (Botan_privkey_t -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt) +botan_privkey_view_encrypted_der = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_304de609f3b73c14 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_view_encrypted_der_timed@ +foreign import ccall unsafe "hs_bindgen_72b85e98338f4a9b" hs_bindgen_72b85e98338f4a9b :: + IO (Ptr.FunPtr (Botan_privkey_t -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_view_encrypted_der_timed #-} +{-| View the encryption of a private key (binary DER encoding) + + Set cipher_algo, pbkdf_algo to NULL to use defaults + +__C declaration:__ @botan_privkey_view_encrypted_der_timed@ + +__defined at:__ @botan\/ffi.h:1214:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_view_encrypted_der_timed :: Ptr.FunPtr (Botan_privkey_t -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt) +botan_privkey_view_encrypted_der_timed = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_72b85e98338f4a9b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_view_encrypted_pem@ +foreign import ccall unsafe "hs_bindgen_96cbc54ed61c8d2c" hs_bindgen_96cbc54ed61c8d2c :: + IO (Ptr.FunPtr (Botan_privkey_t -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> Botan_view_ctx -> Botan_view_str_fn -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_view_encrypted_pem #-} +{-| View the encryption of a private key (PEM encoding) + + Set cipher_algo, pbkdf_algo to NULL to use defaults Set pbkdf_iterations to 0 to use defaults + +__C declaration:__ @botan_privkey_view_encrypted_pem@ + +__defined at:__ @botan\/ffi.h:1230:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_view_encrypted_pem :: Ptr.FunPtr (Botan_privkey_t -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> Botan_view_ctx -> Botan_view_str_fn -> IO FC.CInt) +botan_privkey_view_encrypted_pem = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_96cbc54ed61c8d2c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall unsafe "hs_bindgen_d14d41423bf8f8d7" hs_bindgen_d14d41423bf8f8d7 :: + IO (Ptr.FunPtr (Botan_privkey_t -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> Botan_view_ctx -> Botan_view_str_fn -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_view_encrypted_pem_timed #-} +{-| View the encryption of a private key (PEM encoding) + + Set cipher_algo, pbkdf_algo to NULL to use defaults + +__C declaration:__ @botan_privkey_view_encrypted_pem_timed@ + +__defined at:__ @botan\/ffi.h:1245:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_view_encrypted_pem_timed :: Ptr.FunPtr (Botan_privkey_t -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> Botan_view_ctx -> Botan_view_str_fn -> IO FC.CInt) +botan_privkey_view_encrypted_pem_timed = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_d14d41423bf8f8d7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_load@ +foreign import ccall unsafe "hs_bindgen_58c4c2b5a0b81945" hs_bindgen_58c4c2b5a0b81945 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_load #-} +{-| __C declaration:__ @botan_pubkey_load@ + + __defined at:__ @botan\/ffi.h:1257:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load :: Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_pubkey_load = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_58c4c2b5a0b81945 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_export_pubkey@ +foreign import ccall unsafe "hs_bindgen_e3d579829597c72d" hs_bindgen_e3d579829597c72d :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_privkey_t -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_export_pubkey #-} +{-| __C declaration:__ @botan_privkey_export_pubkey@ + + __defined at:__ @botan\/ffi.h:1259:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_export_pubkey :: Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_privkey_t -> IO FC.CInt) +botan_privkey_export_pubkey = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_e3d579829597c72d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_export@ +foreign import ccall unsafe "hs_bindgen_55cab22800f95796" hs_bindgen_55cab22800f95796 :: + IO (Ptr.FunPtr (Botan_pubkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_export #-} +{-| __C declaration:__ @botan_pubkey_export@ + + __defined at:__ @botan\/ffi.h:1261:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_export :: Ptr.FunPtr (Botan_pubkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_pubkey_export = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_55cab22800f95796 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_view_der@ +foreign import ccall unsafe "hs_bindgen_3aa3dc6501a45550" hs_bindgen_3aa3dc6501a45550 :: + IO (Ptr.FunPtr (Botan_pubkey_t -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_view_der #-} +{-| View the public key's DER encoding + +__C declaration:__ @botan_pubkey_view_der@ + +__defined at:__ @botan\/ffi.h:1266:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_view_der :: Ptr.FunPtr (Botan_pubkey_t -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt) +botan_pubkey_view_der = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_3aa3dc6501a45550 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_775f934342fa9f48" hs_bindgen_775f934342fa9f48 :: + IO (Ptr.FunPtr (Botan_pubkey_t -> Botan_view_ctx -> Botan_view_str_fn -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_view_pem #-} +{-| View the public key's PEM encoding + +__C declaration:__ @botan_pubkey_view_pem@ + +__defined at:__ @botan\/ffi.h:1274:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_view_pem :: Ptr.FunPtr (Botan_pubkey_t -> Botan_view_ctx -> Botan_view_str_fn -> IO FC.CInt) +botan_pubkey_view_pem = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_775f934342fa9f48 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_d076caff14bb51bd" hs_bindgen_d076caff14bb51bd :: + IO (Ptr.FunPtr (Botan_pubkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_algo_name #-} +{-| __C declaration:__ @botan_pubkey_algo_name@ + + __defined at:__ @botan\/ffi.h:1279:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_algo_name :: Ptr.FunPtr (Botan_pubkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_pubkey_algo_name = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_d076caff14bb51bd + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_check_key@ +foreign import ccall unsafe "hs_bindgen_de2ba71514148317" hs_bindgen_de2ba71514148317 :: + IO (Ptr.FunPtr (Botan_pubkey_t -> Botan_rng_t -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_check_key #-} +{-| Returns 0 if key is valid, negative if invalid key or some other error + +__C declaration:__ @botan_pubkey_check_key@ + +__defined at:__ @botan\/ffi.h:1284:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_check_key :: Ptr.FunPtr (Botan_pubkey_t -> Botan_rng_t -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_pubkey_check_key = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_de2ba71514148317 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_estimated_strength@ +foreign import ccall unsafe "hs_bindgen_24d35a1f9849a56a" hs_bindgen_24d35a1f9849a56a :: + IO (Ptr.FunPtr (Botan_pubkey_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_estimated_strength #-} +{-| __C declaration:__ @botan_pubkey_estimated_strength@ + + __defined at:__ @botan\/ffi.h:1286:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_estimated_strength :: Ptr.FunPtr (Botan_pubkey_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_pubkey_estimated_strength = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_24d35a1f9849a56a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_fingerprint@ +foreign import ccall unsafe "hs_bindgen_fd40db8d0e345b85" hs_bindgen_fd40db8d0e345b85 :: + IO (Ptr.FunPtr (Botan_pubkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_fingerprint #-} +{-| __C declaration:__ @botan_pubkey_fingerprint@ + + __defined at:__ @botan\/ffi.h:1288:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_fingerprint :: Ptr.FunPtr (Botan_pubkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_pubkey_fingerprint = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_fd40db8d0e345b85 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_destroy@ +foreign import ccall unsafe "hs_bindgen_784a0e0285766c13" hs_bindgen_784a0e0285766c13 :: + IO (Ptr.FunPtr (Botan_pubkey_t -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_destroy #-} +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pubkey_destroy@ + +__defined at:__ @botan\/ffi.h:1294:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_destroy :: Ptr.FunPtr (Botan_pubkey_t -> IO FC.CInt) +botan_pubkey_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_784a0e0285766c13 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_get_field@ +foreign import ccall unsafe "hs_bindgen_289aa48a50e9ea23" hs_bindgen_289aa48a50e9ea23 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_pubkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_get_field #-} +{-| __C declaration:__ @botan_pubkey_get_field@ + + __defined at:__ @botan\/ffi.h:1299:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_get_field :: Ptr.FunPtr (Botan_mp_t -> Botan_pubkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_pubkey_get_field = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_289aa48a50e9ea23 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_get_field@ +foreign import ccall unsafe "hs_bindgen_b40fc37fcceb50fc" hs_bindgen_b40fc37fcceb50fc :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_privkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_get_field #-} +{-| __C declaration:__ @botan_privkey_get_field@ + + __defined at:__ @botan\/ffi.h:1303:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_get_field :: Ptr.FunPtr (Botan_mp_t -> Botan_privkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_privkey_get_field = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_b40fc37fcceb50fc + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_020413c1fb927ac0" hs_bindgen_020413c1fb927ac0 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_load_rsa #-} +{-| __C declaration:__ @botan_privkey_load_rsa@ + + __defined at:__ @botan\/ffi.h:1310:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_rsa :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_privkey_load_rsa = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_020413c1fb927ac0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_load_rsa_pkcs1@ +foreign import ccall unsafe "hs_bindgen_6855fb8718379683" hs_bindgen_6855fb8718379683 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_load_rsa_pkcs1 #-} +{-| __C declaration:__ @botan_privkey_load_rsa_pkcs1@ + + __defined at:__ @botan\/ffi.h:1315:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_rsa_pkcs1 :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_privkey_load_rsa_pkcs1 = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_6855fb8718379683 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_rsa_get_p@ +foreign import ccall unsafe "hs_bindgen_8114320700d38a72" hs_bindgen_8114320700d38a72 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_privkey_t -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_rsa_get_p #-} +{-| __C declaration:__ @botan_privkey_rsa_get_p@ + + __defined at:__ @botan\/ffi.h:1320:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_rsa_get_p :: Ptr.FunPtr (Botan_mp_t -> Botan_privkey_t -> IO FC.CInt) +botan_privkey_rsa_get_p = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_8114320700d38a72 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_rsa_get_q@ +foreign import ccall unsafe "hs_bindgen_a15c3cab86f97b4a" hs_bindgen_a15c3cab86f97b4a :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_privkey_t -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_rsa_get_q #-} +{-| __C declaration:__ @botan_privkey_rsa_get_q@ + + __defined at:__ @botan\/ffi.h:1322:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_rsa_get_q :: Ptr.FunPtr (Botan_mp_t -> Botan_privkey_t -> IO FC.CInt) +botan_privkey_rsa_get_q = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_a15c3cab86f97b4a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_rsa_get_d@ +foreign import ccall unsafe "hs_bindgen_04a0944e0e6277c3" hs_bindgen_04a0944e0e6277c3 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_privkey_t -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_rsa_get_d #-} +{-| __C declaration:__ @botan_privkey_rsa_get_d@ + + __defined at:__ @botan\/ffi.h:1324:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_rsa_get_d :: Ptr.FunPtr (Botan_mp_t -> Botan_privkey_t -> IO FC.CInt) +botan_privkey_rsa_get_d = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_04a0944e0e6277c3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_60892aada23a171d" hs_bindgen_60892aada23a171d :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_privkey_t -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_rsa_get_n #-} +{-| __C declaration:__ @botan_privkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1326:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_rsa_get_n :: Ptr.FunPtr (Botan_mp_t -> Botan_privkey_t -> IO FC.CInt) +botan_privkey_rsa_get_n = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_60892aada23a171d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_8f768717931ec79b" hs_bindgen_8f768717931ec79b :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_privkey_t -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_rsa_get_e #-} +{-| __C declaration:__ @botan_privkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1328:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_rsa_get_e :: Ptr.FunPtr (Botan_mp_t -> Botan_privkey_t -> IO FC.CInt) +botan_privkey_rsa_get_e = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_8f768717931ec79b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_rsa_get_privkey@ +foreign import ccall unsafe "hs_bindgen_987c0339221151e1" hs_bindgen_987c0339221151e1 :: + IO (Ptr.FunPtr (Botan_privkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_rsa_get_privkey #-} +{-| __C declaration:__ @botan_privkey_rsa_get_privkey@ + + __defined at:__ @botan\/ffi.h:1330:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_rsa_get_privkey :: Ptr.FunPtr (Botan_privkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_privkey_rsa_get_privkey = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_987c0339221151e1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_2d24cd870225a6a8" hs_bindgen_2d24cd870225a6a8 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_load_rsa #-} +{-| __C declaration:__ @botan_pubkey_load_rsa@ + + __defined at:__ @botan\/ffi.h:1334:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_rsa :: Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_pubkey_load_rsa = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_2d24cd870225a6a8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_b98aa3d06c7273ed" hs_bindgen_b98aa3d06c7273ed :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_pubkey_t -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_rsa_get_e #-} +{-| __C declaration:__ @botan_pubkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1339:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_rsa_get_e :: Ptr.FunPtr (Botan_mp_t -> Botan_pubkey_t -> IO FC.CInt) +botan_pubkey_rsa_get_e = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_b98aa3d06c7273ed + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_9c042f6543c5395a" hs_bindgen_9c042f6543c5395a :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_pubkey_t -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_rsa_get_n #-} +{-| __C declaration:__ @botan_pubkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1341:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_rsa_get_n :: Ptr.FunPtr (Botan_mp_t -> Botan_pubkey_t -> IO FC.CInt) +botan_pubkey_rsa_get_n = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_9c042f6543c5395a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_4accf5e538775883" hs_bindgen_4accf5e538775883 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_load_dsa #-} +{-| __C declaration:__ @botan_privkey_load_dsa@ + + __defined at:__ @botan\/ffi.h:1346:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_dsa :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_privkey_load_dsa = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_4accf5e538775883 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_f2f9d1acb14611b6" hs_bindgen_f2f9d1acb14611b6 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_load_dsa #-} +{-| __C declaration:__ @botan_pubkey_load_dsa@ + + __defined at:__ @botan\/ffi.h:1352:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_dsa :: Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_pubkey_load_dsa = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_f2f9d1acb14611b6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_dsa_get_x@ +foreign import ccall unsafe "hs_bindgen_6e2de90a156084c3" hs_bindgen_6e2de90a156084c3 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_privkey_t -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_dsa_get_x #-} +{-| __C declaration:__ @botan_privkey_dsa_get_x@ + + __defined at:__ @botan\/ffi.h:1359:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_dsa_get_x :: Ptr.FunPtr (Botan_mp_t -> Botan_privkey_t -> IO FC.CInt) +botan_privkey_dsa_get_x = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_6e2de90a156084c3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_dsa_get_p@ +foreign import ccall unsafe "hs_bindgen_24af730a1ca3c518" hs_bindgen_24af730a1ca3c518 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_pubkey_t -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_dsa_get_p #-} +{-| __C declaration:__ @botan_pubkey_dsa_get_p@ + + __defined at:__ @botan\/ffi.h:1362:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_dsa_get_p :: Ptr.FunPtr (Botan_mp_t -> Botan_pubkey_t -> IO FC.CInt) +botan_pubkey_dsa_get_p = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_24af730a1ca3c518 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_dsa_get_q@ +foreign import ccall unsafe "hs_bindgen_2e92a25730d826bf" hs_bindgen_2e92a25730d826bf :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_pubkey_t -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_dsa_get_q #-} +{-| __C declaration:__ @botan_pubkey_dsa_get_q@ + + __defined at:__ @botan\/ffi.h:1364:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_dsa_get_q :: Ptr.FunPtr (Botan_mp_t -> Botan_pubkey_t -> IO FC.CInt) +botan_pubkey_dsa_get_q = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_2e92a25730d826bf + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_dsa_get_g@ +foreign import ccall unsafe "hs_bindgen_f4bec7133507be99" hs_bindgen_f4bec7133507be99 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_pubkey_t -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_dsa_get_g #-} +{-| __C declaration:__ @botan_pubkey_dsa_get_g@ + + __defined at:__ @botan\/ffi.h:1366:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_dsa_get_g :: Ptr.FunPtr (Botan_mp_t -> Botan_pubkey_t -> IO FC.CInt) +botan_pubkey_dsa_get_g = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_f4bec7133507be99 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_dsa_get_y@ +foreign import ccall unsafe "hs_bindgen_6fbacc3ad9dd1608" hs_bindgen_6fbacc3ad9dd1608 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_pubkey_t -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_dsa_get_y #-} +{-| __C declaration:__ @botan_pubkey_dsa_get_y@ + + __defined at:__ @botan\/ffi.h:1368:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_dsa_get_y :: Ptr.FunPtr (Botan_mp_t -> Botan_pubkey_t -> IO FC.CInt) +botan_pubkey_dsa_get_y = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_6fbacc3ad9dd1608 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_dd719010f3487960" hs_bindgen_dd719010f3487960 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_load_dh #-} +{-| __C declaration:__ @botan_privkey_load_dh@ + + __defined at:__ @botan\/ffi.h:1383:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_dh :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_privkey_load_dh = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_dd719010f3487960 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_d534fef212552006" hs_bindgen_d534fef212552006 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_load_dh #-} +{-| Loads Diffie Hellman public key + + [__@key@ /(input)/__]: variable populated with key material + + [__@p@ /(input)/__]: prime order of a Z_p group + + [__@g@ /(input)/__]: group generator + + [__@y@ /(input)/__]: public key + + __pre condition:__ key is NULL on input + + __post condition:__ function allocates memory and assigns to `key' + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_pubkey_load_dh@ + +__defined at:__ @botan\/ffi.h:1400:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_dh :: Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_pubkey_load_dh = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_d534fef212552006 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_66ba974ff70c13b7" hs_bindgen_66ba974ff70c13b7 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_load_elgamal #-} +{-| Loads ElGamal public key + + [__@key@ /(input)/__]: variable populated with key material + + [__@p@ /(input)/__]: prime order of a Z_p group + + [__@g@ /(input)/__]: group generator + + [__@y@ /(input)/__]: public key + + __pre condition:__ key is NULL on input + + __post condition:__ function allocates memory and assigns to `key' + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_pubkey_load_elgamal@ + +__defined at:__ @botan\/ffi.h:1421:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_elgamal :: Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_pubkey_load_elgamal = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_66ba974ff70c13b7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_ebb5c8f7e80936df" hs_bindgen_ebb5c8f7e80936df :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_load_elgamal #-} +{-| Loads ElGamal private key + + [__@key@ /(input)/__]: variable populated with key material + + [__@p@ /(input)/__]: prime order of a Z_p group + + [__@g@ /(input)/__]: group generator + + [__@x@ /(input)/__]: private key + + __pre condition:__ key is NULL on input + + __post condition:__ function allocates memory and assigns to `key' + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_privkey_load_elgamal@ + +__defined at:__ @botan\/ffi.h:1439:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_elgamal :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_privkey_load_elgamal = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_ebb5c8f7e80936df + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_60cfcf05ac4b4c4f" hs_bindgen_60cfcf05ac4b4c4f :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_load_ed25519 #-} +{-| __C declaration:__ @botan_privkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1448:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_ed25519 :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt) +botan_privkey_load_ed25519 = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_60cfcf05ac4b4c4f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_c86984d0fe3637bc" hs_bindgen_c86984d0fe3637bc :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_load_ed25519 #-} +{-| __C declaration:__ @botan_pubkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1451:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_ed25519 :: Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt) +botan_pubkey_load_ed25519 = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_c86984d0fe3637bc + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_ed25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_0d90f6285580470c" hs_bindgen_0d90f6285580470c :: + IO (Ptr.FunPtr (Botan_privkey_t -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 64) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_ed25519_get_privkey #-} +{-| __C declaration:__ @botan_privkey_ed25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1454:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_ed25519_get_privkey :: Ptr.FunPtr (Botan_privkey_t -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 64) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt) +botan_privkey_ed25519_get_privkey = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_0d90f6285580470c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_bb19fd1ab36c05a6" hs_bindgen_bb19fd1ab36c05a6 :: + IO (Ptr.FunPtr (Botan_pubkey_t -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_ed25519_get_pubkey #-} +{-| __C declaration:__ @botan_pubkey_ed25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1457:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_ed25519_get_pubkey :: Ptr.FunPtr (Botan_pubkey_t -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt) +botan_pubkey_ed25519_get_pubkey = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_bb19fd1ab36c05a6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_efc1e53e2692d1f3" hs_bindgen_efc1e53e2692d1f3 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_load_x25519 #-} +{-| __C declaration:__ @botan_privkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1464:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_x25519 :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt) +botan_privkey_load_x25519 = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_efc1e53e2692d1f3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_a52c4863d5c8f702" hs_bindgen_a52c4863d5c8f702 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_load_x25519 #-} +{-| __C declaration:__ @botan_pubkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1467:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_x25519 :: Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt) +botan_pubkey_load_x25519 = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_a52c4863d5c8f702 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_x25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_70efe0efeb4c4f85" hs_bindgen_70efe0efeb4c4f85 :: + IO (Ptr.FunPtr (Botan_privkey_t -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_x25519_get_privkey #-} +{-| __C declaration:__ @botan_privkey_x25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1470:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_x25519_get_privkey :: Ptr.FunPtr (Botan_privkey_t -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt) +botan_privkey_x25519_get_privkey = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_70efe0efeb4c4f85 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_x25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_59f91d120c4c4c24" hs_bindgen_59f91d120c4c4c24 :: + IO (Ptr.FunPtr (Botan_pubkey_t -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_x25519_get_pubkey #-} +{-| __C declaration:__ @botan_pubkey_x25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1473:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_x25519_get_pubkey :: Ptr.FunPtr (Botan_pubkey_t -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt) +botan_pubkey_x25519_get_pubkey = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_59f91d120c4c4c24 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_958b7f7a0b40ed9b" hs_bindgen_958b7f7a0b40ed9b :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_load_ecdsa #-} +{-| __C declaration:__ @botan_privkey_load_ecdsa@ + + __defined at:__ @botan\/ffi.h:1480:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_ecdsa :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_privkey_load_ecdsa = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_958b7f7a0b40ed9b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_571bcb48f1906df4" hs_bindgen_571bcb48f1906df4 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_mp_t -> Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_load_ecdsa #-} +{-| __C declaration:__ @botan_pubkey_load_ecdsa@ + + __defined at:__ @botan\/ffi.h:1485:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_ecdsa :: Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_mp_t -> Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_pubkey_load_ecdsa = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_571bcb48f1906df4 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_54868f6b21d1409f" hs_bindgen_54868f6b21d1409f :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_mp_t -> Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_load_ecdh #-} +{-| __C declaration:__ @botan_pubkey_load_ecdh@ + + __defined at:__ @botan\/ffi.h:1491:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_ecdh :: Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_mp_t -> Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_pubkey_load_ecdh = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_54868f6b21d1409f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_66a3c24bb10f34e9" hs_bindgen_66a3c24bb10f34e9 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_load_ecdh #-} +{-| __C declaration:__ @botan_privkey_load_ecdh@ + + __defined at:__ @botan\/ffi.h:1497:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_ecdh :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_privkey_load_ecdh = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_66a3c24bb10f34e9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_0859838656ac9d88" hs_bindgen_0859838656ac9d88 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_mp_t -> Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_load_sm2 #-} +{-| __C declaration:__ @botan_pubkey_load_sm2@ + + __defined at:__ @botan\/ffi.h:1502:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_sm2 :: Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_mp_t -> Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_pubkey_load_sm2 = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_0859838656ac9d88 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_c43ee32ff6829919" hs_bindgen_c43ee32ff6829919 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_load_sm2 #-} +{-| __C declaration:__ @botan_privkey_load_sm2@ + + __defined at:__ @botan\/ffi.h:1508:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_sm2 :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_privkey_load_sm2 = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_c43ee32ff6829919 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_7468d0c6c69840d8" hs_bindgen_7468d0c6c69840d8 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_mp_t -> Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_load_sm2_enc #-} +{-| __C declaration:__ @botan_pubkey_load_sm2_enc@ + + __defined at:__ @botan\/ffi.h:1513:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_sm2_enc :: Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_mp_t -> Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_pubkey_load_sm2_enc = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_7468d0c6c69840d8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_privkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_816deabd45e6c2b7" hs_bindgen_816deabd45e6c2b7 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_load_sm2_enc #-} +{-| __C declaration:__ @botan_privkey_load_sm2_enc@ + + __defined at:__ @botan\/ffi.h:1519:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_sm2_enc :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_privkey_load_sm2_enc = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_816deabd45e6c2b7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_sm2_compute_za@ +foreign import ccall unsafe "hs_bindgen_92d12db9f893101c" hs_bindgen_92d12db9f893101c :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> Botan_pubkey_t -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_sm2_compute_za #-} +{-| __C declaration:__ @botan_pubkey_sm2_compute_za@ + + __defined at:__ @botan\/ffi.h:1524:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_sm2_compute_za :: Ptr.FunPtr ((HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> Botan_pubkey_t -> IO FC.CInt) +botan_pubkey_sm2_compute_za = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_92d12db9f893101c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pubkey_view_ec_public_point@ +foreign import ccall unsafe "hs_bindgen_35a3952fa7e31e48" hs_bindgen_35a3952fa7e31e48 :: + IO (Ptr.FunPtr (Botan_pubkey_t -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_view_ec_public_point #-} +{-| View the uncompressed public point associated with the key + +__C declaration:__ @botan_pubkey_view_ec_public_point@ + +__defined at:__ @botan\/ffi.h:1534:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_view_ec_public_point :: Ptr.FunPtr (Botan_pubkey_t -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt) +botan_pubkey_view_ec_public_point = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_35a3952fa7e31e48 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_9738ecb752eb068e" hs_bindgen_9738ecb752eb068e :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pk_op_encrypt_t) -> Botan_pubkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_encrypt_create #-} +{-| __C declaration:__ @botan_pk_op_encrypt_create@ + + __defined at:__ @botan\/ffi.h:1544:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_encrypt_create :: Ptr.FunPtr ((Ptr.Ptr Botan_pk_op_encrypt_t) -> Botan_pubkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_pk_op_encrypt_create = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_9738ecb752eb068e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_5374e720a5c13c58" hs_bindgen_5374e720a5c13c58 :: + IO (Ptr.FunPtr (Botan_pk_op_encrypt_t -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_encrypt_destroy #-} +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pk_op_encrypt_destroy@ + +__defined at:__ @botan\/ffi.h:1552:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_encrypt_destroy :: Ptr.FunPtr (Botan_pk_op_encrypt_t -> IO FC.CInt) +botan_pk_op_encrypt_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_5374e720a5c13c58 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_encrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_d5355a5088e804e9" hs_bindgen_d5355a5088e804e9 :: + IO (Ptr.FunPtr (Botan_pk_op_encrypt_t -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_encrypt_output_length #-} +{-| __C declaration:__ @botan_pk_op_encrypt_output_length@ + + __defined at:__ @botan\/ffi.h:1554:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_encrypt_output_length :: Ptr.FunPtr (Botan_pk_op_encrypt_t -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_pk_op_encrypt_output_length = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_d5355a5088e804e9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_encrypt@ +foreign import ccall unsafe "hs_bindgen_d9efe12c0a9a83e7" hs_bindgen_d9efe12c0a9a83e7 :: + IO (Ptr.FunPtr (Botan_pk_op_encrypt_t -> Botan_rng_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_encrypt #-} +{-| __C declaration:__ @botan_pk_op_encrypt@ + + __defined at:__ @botan\/ffi.h:1558:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_encrypt :: Ptr.FunPtr (Botan_pk_op_encrypt_t -> Botan_rng_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_pk_op_encrypt = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_d9efe12c0a9a83e7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_96f9240fea0c4946" hs_bindgen_96f9240fea0c4946 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pk_op_decrypt_t) -> Botan_privkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_decrypt_create #-} +{-| __C declaration:__ @botan_pk_op_decrypt_create@ + + __defined at:__ @botan\/ffi.h:1570:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_decrypt_create :: Ptr.FunPtr ((Ptr.Ptr Botan_pk_op_decrypt_t) -> Botan_privkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_pk_op_decrypt_create = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_96f9240fea0c4946 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_2d63abea694d258e" hs_bindgen_2d63abea694d258e :: + IO (Ptr.FunPtr (Botan_pk_op_decrypt_t -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_decrypt_destroy #-} +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pk_op_decrypt_destroy@ + +__defined at:__ @botan\/ffi.h:1578:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_decrypt_destroy :: Ptr.FunPtr (Botan_pk_op_decrypt_t -> IO FC.CInt) +botan_pk_op_decrypt_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_2d63abea694d258e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_decrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_a55c24c4f3b36cac" hs_bindgen_a55c24c4f3b36cac :: + IO (Ptr.FunPtr (Botan_pk_op_decrypt_t -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_decrypt_output_length #-} +{-| __C declaration:__ @botan_pk_op_decrypt_output_length@ + + __defined at:__ @botan\/ffi.h:1580:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_decrypt_output_length :: Ptr.FunPtr (Botan_pk_op_decrypt_t -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_pk_op_decrypt_output_length = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_a55c24c4f3b36cac + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_decrypt@ +foreign import ccall unsafe "hs_bindgen_2caf38a61977843e" hs_bindgen_2caf38a61977843e :: + IO (Ptr.FunPtr (Botan_pk_op_decrypt_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_decrypt #-} +{-| __C declaration:__ @botan_pk_op_decrypt@ + + __defined at:__ @botan\/ffi.h:1584:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_decrypt :: Ptr.FunPtr (Botan_pk_op_decrypt_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_pk_op_decrypt = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_2caf38a61977843e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_sign_create@ +foreign import ccall unsafe "hs_bindgen_676fd152b710ff66" hs_bindgen_676fd152b710ff66 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pk_op_sign_t) -> Botan_privkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_sign_create #-} +{-| __C declaration:__ @botan_pk_op_sign_create@ + + __defined at:__ @botan\/ffi.h:1597:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_sign_create :: Ptr.FunPtr ((Ptr.Ptr Botan_pk_op_sign_t) -> Botan_privkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_pk_op_sign_create = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_676fd152b710ff66 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_sign_destroy@ +foreign import ccall unsafe "hs_bindgen_1ea3eaaa3ca82246" hs_bindgen_1ea3eaaa3ca82246 :: + IO (Ptr.FunPtr (Botan_pk_op_sign_t -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_sign_destroy #-} +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pk_op_sign_destroy@ + +__defined at:__ @botan\/ffi.h:1605:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_sign_destroy :: Ptr.FunPtr (Botan_pk_op_sign_t -> IO FC.CInt) +botan_pk_op_sign_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_1ea3eaaa3ca82246 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_sign_output_length@ +foreign import ccall unsafe "hs_bindgen_35ae8c960cf81996" hs_bindgen_35ae8c960cf81996 :: + IO (Ptr.FunPtr (Botan_pk_op_sign_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_sign_output_length #-} +{-| __C declaration:__ @botan_pk_op_sign_output_length@ + + __defined at:__ @botan\/ffi.h:1607:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_sign_output_length :: Ptr.FunPtr (Botan_pk_op_sign_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_pk_op_sign_output_length = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_35ae8c960cf81996 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_sign_update@ +foreign import ccall unsafe "hs_bindgen_6731fbd238949dcf" hs_bindgen_6731fbd238949dcf :: + IO (Ptr.FunPtr (Botan_pk_op_sign_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_sign_update #-} +{-| __C declaration:__ @botan_pk_op_sign_update@ + + __defined at:__ @botan\/ffi.h:1609:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_sign_update :: Ptr.FunPtr (Botan_pk_op_sign_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_pk_op_sign_update = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_6731fbd238949dcf + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_sign_finish@ +foreign import ccall unsafe "hs_bindgen_bce6ba80c3ea68f9" hs_bindgen_bce6ba80c3ea68f9 :: + IO (Ptr.FunPtr (Botan_pk_op_sign_t -> Botan_rng_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_sign_finish #-} +{-| __C declaration:__ @botan_pk_op_sign_finish@ + + __defined at:__ @botan\/ffi.h:1612:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_sign_finish :: Ptr.FunPtr (Botan_pk_op_sign_t -> Botan_rng_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_pk_op_sign_finish = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_bce6ba80c3ea68f9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_verify_create@ +foreign import ccall unsafe "hs_bindgen_2db482d10c7df8f6" hs_bindgen_2db482d10c7df8f6 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pk_op_verify_t) -> Botan_pubkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_verify_create #-} +{-| __C declaration:__ @botan_pk_op_verify_create@ + + __defined at:__ @botan\/ffi.h:1621:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_verify_create :: Ptr.FunPtr ((Ptr.Ptr Botan_pk_op_verify_t) -> Botan_pubkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_pk_op_verify_create = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_2db482d10c7df8f6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_verify_destroy@ +foreign import ccall unsafe "hs_bindgen_95e56c42436dbdec" hs_bindgen_95e56c42436dbdec :: + IO (Ptr.FunPtr (Botan_pk_op_verify_t -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_verify_destroy #-} +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pk_op_verify_destroy@ + +__defined at:__ @botan\/ffi.h:1629:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_verify_destroy :: Ptr.FunPtr (Botan_pk_op_verify_t -> IO FC.CInt) +botan_pk_op_verify_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_95e56c42436dbdec + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_verify_update@ +foreign import ccall unsafe "hs_bindgen_26131444490f9d1b" hs_bindgen_26131444490f9d1b :: + IO (Ptr.FunPtr (Botan_pk_op_verify_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_verify_update #-} +{-| __C declaration:__ @botan_pk_op_verify_update@ + + __defined at:__ @botan\/ffi.h:1631:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_verify_update :: Ptr.FunPtr (Botan_pk_op_verify_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_pk_op_verify_update = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_26131444490f9d1b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_verify_finish@ +foreign import ccall unsafe "hs_bindgen_d35a96168d04b08c" hs_bindgen_d35a96168d04b08c :: + IO (Ptr.FunPtr (Botan_pk_op_verify_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_verify_finish #-} +{-| __C declaration:__ @botan_pk_op_verify_finish@ + + __defined at:__ @botan\/ffi.h:1632:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_verify_finish :: Ptr.FunPtr (Botan_pk_op_verify_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_pk_op_verify_finish = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_d35a96168d04b08c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_key_agreement_create@ +foreign import ccall unsafe "hs_bindgen_6f3595639929db5b" hs_bindgen_6f3595639929db5b :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pk_op_ka_t) -> Botan_privkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_key_agreement_create #-} +{-| __C declaration:__ @botan_pk_op_key_agreement_create@ + + __defined at:__ @botan\/ffi.h:1640:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_key_agreement_create :: Ptr.FunPtr ((Ptr.Ptr Botan_pk_op_ka_t) -> Botan_privkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_pk_op_key_agreement_create = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_6f3595639929db5b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_key_agreement_destroy@ +foreign import ccall unsafe "hs_bindgen_6c1698a964d163d9" hs_bindgen_6c1698a964d163d9 :: + IO (Ptr.FunPtr (Botan_pk_op_ka_t -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_key_agreement_destroy #-} +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pk_op_key_agreement_destroy@ + +__defined at:__ @botan\/ffi.h:1648:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_key_agreement_destroy :: Ptr.FunPtr (Botan_pk_op_ka_t -> IO FC.CInt) +botan_pk_op_key_agreement_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_6c1698a964d163d9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_key_agreement_export_public@ +foreign import ccall unsafe "hs_bindgen_1c8911f9f35ec151" hs_bindgen_1c8911f9f35ec151 :: + IO (Ptr.FunPtr (Botan_privkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_key_agreement_export_public #-} +{-| __C declaration:__ @botan_pk_op_key_agreement_export_public@ + + __defined at:__ @botan\/ffi.h:1650:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_key_agreement_export_public :: Ptr.FunPtr (Botan_privkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_pk_op_key_agreement_export_public = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_1c8911f9f35ec151 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_key_agreement_view_public@ +foreign import ccall unsafe "hs_bindgen_5958b0281abc3170" hs_bindgen_5958b0281abc3170 :: + IO (Ptr.FunPtr (Botan_privkey_t -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_key_agreement_view_public #-} +{-| __C declaration:__ @botan_pk_op_key_agreement_view_public@ + + __defined at:__ @botan\/ffi.h:1653:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_key_agreement_view_public :: Ptr.FunPtr (Botan_privkey_t -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt) +botan_pk_op_key_agreement_view_public = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_5958b0281abc3170 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_key_agreement_size@ +foreign import ccall unsafe "hs_bindgen_577550e98c353423" hs_bindgen_577550e98c353423 :: + IO (Ptr.FunPtr (Botan_pk_op_ka_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_key_agreement_size #-} +{-| __C declaration:__ @botan_pk_op_key_agreement_size@ + + __defined at:__ @botan\/ffi.h:1658:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_key_agreement_size :: Ptr.FunPtr (Botan_pk_op_ka_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_pk_op_key_agreement_size = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_577550e98c353423 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_key_agreement@ +foreign import ccall unsafe "hs_bindgen_36a9019a6de6b3c5" hs_bindgen_36a9019a6de6b3c5 :: + IO (Ptr.FunPtr (Botan_pk_op_ka_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_key_agreement #-} +{-| __C declaration:__ @botan_pk_op_key_agreement@ + + __defined at:__ @botan\/ffi.h:1661:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_key_agreement :: Ptr.FunPtr (Botan_pk_op_ka_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_pk_op_key_agreement = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_36a9019a6de6b3c5 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_kem_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_384b205cea3a1b55" hs_bindgen_384b205cea3a1b55 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pk_op_kem_encrypt_t) -> Botan_pubkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_kem_encrypt_create #-} +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create@ + + __defined at:__ @botan\/ffi.h:1671:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_encrypt_create :: Ptr.FunPtr ((Ptr.Ptr Botan_pk_op_kem_encrypt_t) -> Botan_pubkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_pk_op_kem_encrypt_create = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_384b205cea3a1b55 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_233777493f5a261b" hs_bindgen_233777493f5a261b :: + IO (Ptr.FunPtr (Botan_pk_op_kem_encrypt_t -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_kem_encrypt_destroy #-} +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pk_op_kem_encrypt_destroy@ + +__defined at:__ @botan\/ffi.h:1679:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_encrypt_destroy :: Ptr.FunPtr (Botan_pk_op_kem_encrypt_t -> IO FC.CInt) +botan_pk_op_kem_encrypt_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_233777493f5a261b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_d41b30d668ff95c9" hs_bindgen_d41b30d668ff95c9 :: + IO (Ptr.FunPtr (Botan_pk_op_kem_encrypt_t -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_kem_encrypt_shared_key_length #-} +{-| __C declaration:__ @botan_pk_op_kem_encrypt_shared_key_length@ + + __defined at:__ @botan\/ffi.h:1682:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_encrypt_shared_key_length :: Ptr.FunPtr (Botan_pk_op_kem_encrypt_t -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_pk_op_kem_encrypt_shared_key_length = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_d41b30d668ff95c9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall unsafe "hs_bindgen_898438aded9d5215" hs_bindgen_898438aded9d5215 :: + IO (Ptr.FunPtr (Botan_pk_op_kem_encrypt_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_kem_encrypt_encapsulated_key_length #-} +{-| __C declaration:__ @botan_pk_op_kem_encrypt_encapsulated_key_length@ + + __defined at:__ @botan\/ffi.h:1688:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_encrypt_encapsulated_key_length :: Ptr.FunPtr (Botan_pk_op_kem_encrypt_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_pk_op_kem_encrypt_encapsulated_key_length = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_898438aded9d5215 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall unsafe "hs_bindgen_ae7ca1213b3d93be" hs_bindgen_ae7ca1213b3d93be :: + IO (Ptr.FunPtr (Botan_pk_op_kem_encrypt_t -> Botan_rng_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_kem_encrypt_create_shared_key #-} +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create_shared_key@ + + __defined at:__ @botan\/ffi.h:1692:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_encrypt_create_shared_key :: Ptr.FunPtr (Botan_pk_op_kem_encrypt_t -> Botan_rng_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_pk_op_kem_encrypt_create_shared_key = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_ae7ca1213b3d93be + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_kem_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_f47f80e6bcb36111" hs_bindgen_f47f80e6bcb36111 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pk_op_kem_decrypt_t) -> Botan_privkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_kem_decrypt_create #-} +{-| __C declaration:__ @botan_pk_op_kem_decrypt_create@ + + __defined at:__ @botan\/ffi.h:1705:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_decrypt_create :: Ptr.FunPtr ((Ptr.Ptr Botan_pk_op_kem_decrypt_t) -> Botan_privkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_pk_op_kem_decrypt_create = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_f47f80e6bcb36111 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_ad96bdb0d0327946" hs_bindgen_ad96bdb0d0327946 :: + IO (Ptr.FunPtr (Botan_pk_op_kem_decrypt_t -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_kem_decrypt_destroy #-} +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pk_op_kem_decrypt_destroy@ + +__defined at:__ @botan\/ffi.h:1713:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_decrypt_destroy :: Ptr.FunPtr (Botan_pk_op_kem_decrypt_t -> IO FC.CInt) +botan_pk_op_kem_decrypt_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_ad96bdb0d0327946 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_caaaca8f7f5b0374" hs_bindgen_caaaca8f7f5b0374 :: + IO (Ptr.FunPtr (Botan_pk_op_kem_decrypt_t -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_kem_decrypt_shared_key_length #-} +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key_length@ + + __defined at:__ @botan\/ffi.h:1716:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_decrypt_shared_key_length :: Ptr.FunPtr (Botan_pk_op_kem_decrypt_t -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_pk_op_kem_decrypt_shared_key_length = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_caaaca8f7f5b0374 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall unsafe "hs_bindgen_3f6eb2d559c644fd" hs_bindgen_3f6eb2d559c644fd :: + IO (Ptr.FunPtr (Botan_pk_op_kem_decrypt_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_kem_decrypt_shared_key #-} +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key@ + + __defined at:__ @botan\/ffi.h:1721:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_decrypt_shared_key :: Ptr.FunPtr (Botan_pk_op_kem_decrypt_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_pk_op_kem_decrypt_shared_key = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_3f6eb2d559c644fd + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_pkcs_hash_id@ +foreign import ccall unsafe "hs_bindgen_8b166b15b35e6fea" hs_bindgen_8b166b15b35e6fea :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_pkcs_hash_id #-} +{-| Signature Scheme Utility Functions + +__C declaration:__ @botan_pkcs_hash_id@ + +__defined at:__ @botan\/ffi.h:1735:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pkcs_hash_id :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_pkcs_hash_id = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_8b166b15b35e6fea + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mceies_encrypt@ +foreign import ccall unsafe "hs_bindgen_8a78febbda76e3e0" hs_bindgen_8a78febbda76e3e0 :: + IO (Ptr.FunPtr (Botan_pubkey_t -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_mceies_encrypt #-} +{-| __C declaration:__ @botan_mceies_encrypt@ + + __defined at:__ @botan\/ffi.h:1742:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mceies_encrypt :: Ptr.FunPtr (Botan_pubkey_t -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_mceies_encrypt = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_8a78febbda76e3e0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_mceies_decrypt@ +foreign import ccall unsafe "hs_bindgen_e342e5994d4984b7" hs_bindgen_e342e5994d4984b7 :: + IO (Ptr.FunPtr (Botan_privkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_mceies_decrypt #-} +{-| __C declaration:__ @botan_mceies_decrypt@ + + __defined at:__ @botan\/ffi.h:1753:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mceies_decrypt :: Ptr.FunPtr (Botan_privkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_mceies_decrypt = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_e342e5994d4984b7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_load@ +foreign import ccall unsafe "hs_bindgen_55eef68f0245106f" hs_bindgen_55eef68f0245106f :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_x509_cert_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_load #-} +{-| __C declaration:__ @botan_x509_cert_load@ + + __defined at:__ @botan\/ffi.h:1765:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_load :: Ptr.FunPtr ((Ptr.Ptr Botan_x509_cert_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_x509_cert_load = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_55eef68f0245106f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_load_file@ +foreign import ccall unsafe "hs_bindgen_c840813eb1a81661" hs_bindgen_c840813eb1a81661 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_x509_cert_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_load_file #-} +{-| __C declaration:__ @botan_x509_cert_load_file@ + + __defined at:__ @botan\/ffi.h:1766:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_load_file :: Ptr.FunPtr ((Ptr.Ptr Botan_x509_cert_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_x509_cert_load_file = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_c840813eb1a81661 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_destroy@ +foreign import ccall unsafe "hs_bindgen_47184535ea87e693" hs_bindgen_47184535ea87e693 :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_destroy #-} +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_x509_cert_destroy@ + +__defined at:__ @botan\/ffi.h:1771:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_destroy :: Ptr.FunPtr (Botan_x509_cert_t -> IO FC.CInt) +botan_x509_cert_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_47184535ea87e693 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_dup@ +foreign import ccall unsafe "hs_bindgen_433642bf837f0d0c" hs_bindgen_433642bf837f0d0c :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_x509_cert_t) -> Botan_x509_cert_t -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_dup #-} +{-| __C declaration:__ @botan_x509_cert_dup@ + + __defined at:__ @botan\/ffi.h:1773:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_dup :: Ptr.FunPtr ((Ptr.Ptr Botan_x509_cert_t) -> Botan_x509_cert_t -> IO FC.CInt) +botan_x509_cert_dup = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_433642bf837f0d0c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_get_time_starts@ +foreign import ccall unsafe "hs_bindgen_006232684bff6b1b" hs_bindgen_006232684bff6b1b :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_get_time_starts #-} +{-| __C declaration:__ @botan_x509_cert_get_time_starts@ + + __defined at:__ @botan\/ffi.h:1776:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_time_starts :: Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_x509_cert_get_time_starts = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_006232684bff6b1b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_get_time_expires@ +foreign import ccall unsafe "hs_bindgen_c1afe2dc65da3f76" hs_bindgen_c1afe2dc65da3f76 :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_get_time_expires #-} +{-| __C declaration:__ @botan_x509_cert_get_time_expires@ + + __defined at:__ @botan\/ffi.h:1777:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_time_expires :: Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_x509_cert_get_time_expires = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_c1afe2dc65da3f76 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_not_before@ +foreign import ccall unsafe "hs_bindgen_b3bebd79b8139fa1" hs_bindgen_b3bebd79b8139fa1 :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word64) -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_not_before #-} +{-| __C declaration:__ @botan_x509_cert_not_before@ + + __defined at:__ @botan\/ffi.h:1779:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_not_before :: Ptr.FunPtr (Botan_x509_cert_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word64) -> IO FC.CInt) +botan_x509_cert_not_before = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_b3bebd79b8139fa1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_not_after@ +foreign import ccall unsafe "hs_bindgen_c16baa683f55fc10" hs_bindgen_c16baa683f55fc10 :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word64) -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_not_after #-} +{-| __C declaration:__ @botan_x509_cert_not_after@ + + __defined at:__ @botan\/ffi.h:1780:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_not_after :: Ptr.FunPtr (Botan_x509_cert_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word64) -> IO FC.CInt) +botan_x509_cert_not_after = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_c16baa683f55fc10 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_get_fingerprint@ +foreign import ccall unsafe "hs_bindgen_28c3bc0ae42c8b03" hs_bindgen_28c3bc0ae42c8b03 :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_get_fingerprint #-} +{-| __C declaration:__ @botan_x509_cert_get_fingerprint@ + + __defined at:__ @botan\/ffi.h:1782:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_fingerprint :: Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_x509_cert_get_fingerprint = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_28c3bc0ae42c8b03 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_get_serial_number@ +foreign import ccall unsafe "hs_bindgen_eb7cdd8de739e0ee" hs_bindgen_eb7cdd8de739e0ee :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_get_serial_number #-} +{-| __C declaration:__ @botan_x509_cert_get_serial_number@ + + __defined at:__ @botan\/ffi.h:1784:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_serial_number :: Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_x509_cert_get_serial_number = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_eb7cdd8de739e0ee + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_get_authority_key_id@ +foreign import ccall unsafe "hs_bindgen_f70e478942fff9a1" hs_bindgen_f70e478942fff9a1 :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_get_authority_key_id #-} +{-| __C declaration:__ @botan_x509_cert_get_authority_key_id@ + + __defined at:__ @botan\/ffi.h:1785:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_authority_key_id :: Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_x509_cert_get_authority_key_id = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_f70e478942fff9a1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_get_subject_key_id@ +foreign import ccall unsafe "hs_bindgen_136df29f6282e3fe" hs_bindgen_136df29f6282e3fe :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_get_subject_key_id #-} +{-| __C declaration:__ @botan_x509_cert_get_subject_key_id@ + + __defined at:__ @botan\/ffi.h:1786:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_subject_key_id :: Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_x509_cert_get_subject_key_id = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_136df29f6282e3fe + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_get_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_491e4c4ece5c887a" hs_bindgen_491e4c4ece5c887a :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_get_public_key_bits #-} +{-| __C declaration:__ @botan_x509_cert_get_public_key_bits@ + + __defined at:__ @botan\/ffi.h:1788:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_public_key_bits :: Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_x509_cert_get_public_key_bits = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_491e4c4ece5c887a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_view_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_a82beaa0c0cd62da" hs_bindgen_a82beaa0c0cd62da :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_view_public_key_bits #-} +{-| __C declaration:__ @botan_x509_cert_view_public_key_bits@ + + __defined at:__ @botan\/ffi.h:1791:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_view_public_key_bits :: Ptr.FunPtr (Botan_x509_cert_t -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt) +botan_x509_cert_view_public_key_bits = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_a82beaa0c0cd62da + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_get_public_key@ +foreign import ccall unsafe "hs_bindgen_83e0f0c700e0f5d7" hs_bindgen_83e0f0c700e0f5d7 :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> (Ptr.Ptr Botan_pubkey_t) -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_get_public_key #-} +{-| __C declaration:__ @botan_x509_cert_get_public_key@ + + __defined at:__ @botan\/ffi.h:1796:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_public_key :: Ptr.FunPtr (Botan_x509_cert_t -> (Ptr.Ptr Botan_pubkey_t) -> IO FC.CInt) +botan_x509_cert_get_public_key = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_83e0f0c700e0f5d7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_get_issuer_dn@ +foreign import ccall unsafe "hs_bindgen_6f6d9c98c7c6eab3" hs_bindgen_6f6d9c98c7c6eab3 :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_get_issuer_dn #-} +{-| __C declaration:__ @botan_x509_cert_get_issuer_dn@ + + __defined at:__ @botan\/ffi.h:1799:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_issuer_dn :: Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_x509_cert_get_issuer_dn = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_6f6d9c98c7c6eab3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_get_subject_dn@ +foreign import ccall unsafe "hs_bindgen_1b632e43d90a5a85" hs_bindgen_1b632e43d90a5a85 :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_get_subject_dn #-} +{-| __C declaration:__ @botan_x509_cert_get_subject_dn@ + + __defined at:__ @botan\/ffi.h:1804:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_subject_dn :: Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_x509_cert_get_subject_dn = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_1b632e43d90a5a85 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_to_string@ +foreign import ccall unsafe "hs_bindgen_7c3aaf7a09ac4509" hs_bindgen_7c3aaf7a09ac4509 :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_to_string #-} +{-| __C declaration:__ @botan_x509_cert_to_string@ + + __defined at:__ @botan\/ffi.h:1808:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_to_string :: Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_x509_cert_to_string = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_7c3aaf7a09ac4509 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_view_as_string@ +foreign import ccall unsafe "hs_bindgen_34fef2453c6b9131" hs_bindgen_34fef2453c6b9131 :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> Botan_view_ctx -> Botan_view_str_fn -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_view_as_string #-} +{-| __C declaration:__ @botan_x509_cert_view_as_string@ + + __defined at:__ @botan\/ffi.h:1810:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_view_as_string :: Ptr.FunPtr (Botan_x509_cert_t -> Botan_view_ctx -> Botan_view_str_fn -> IO FC.CInt) +botan_x509_cert_view_as_string = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_34fef2453c6b9131 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_allowed_usage@ +foreign import ccall unsafe "hs_bindgen_806bcbfcdece3c21" hs_bindgen_806bcbfcdece3c21 :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> FC.CUInt -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_allowed_usage #-} +{-| __C declaration:__ @botan_x509_cert_allowed_usage@ + + __defined at:__ @botan\/ffi.h:1829:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_allowed_usage :: Ptr.FunPtr (Botan_x509_cert_t -> FC.CUInt -> IO FC.CInt) +botan_x509_cert_allowed_usage = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_806bcbfcdece3c21 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_hostname_match@ +foreign import ccall unsafe "hs_bindgen_9e7ea80f57209cb4" hs_bindgen_9e7ea80f57209cb4 :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_hostname_match #-} +{-| Check if the certificate matches the specified hostname via alternative name or CN match. RFC 5280 wildcards also supported. + +__C declaration:__ @botan_x509_cert_hostname_match@ + +__defined at:__ @botan\/ffi.h:1835:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_hostname_match :: Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_x509_cert_hostname_match = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_9e7ea80f57209cb4 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_verify@ +foreign import ccall unsafe "hs_bindgen_4de39f032dbfa9c2" hs_bindgen_4de39f032dbfa9c2 :: + IO (Ptr.FunPtr ((Ptr.Ptr FC.CInt) -> Botan_x509_cert_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word64 -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_verify #-} +{-| Returns 0 if the validation was successful, 1 if validation failed, and negative on error. A status code with details is written to *validation_result + + Intermediates or trusted lists can be null Trusted path can be null + +__C declaration:__ @botan_x509_cert_verify@ + +__defined at:__ @botan\/ffi.h:1845:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_verify :: Ptr.FunPtr ((Ptr.Ptr FC.CInt) -> Botan_x509_cert_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word64 -> IO FC.CInt) +botan_x509_cert_verify = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_4de39f032dbfa9c2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_validation_status@ +foreign import ccall unsafe "hs_bindgen_5b5834d58c0f0d1d" hs_bindgen_5b5834d58c0f0d1d :: + IO (Ptr.FunPtr (FC.CInt -> IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar))) + +{-# NOINLINE botan_x509_cert_validation_status #-} +{-| Returns a pointer to a static character string explaining the status code, or else NULL if unknown. + +__C declaration:__ @botan_x509_cert_validation_status@ + +__defined at:__ @botan\/ffi.h:1861:35@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_validation_status :: Ptr.FunPtr (FC.CInt -> IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar)) +botan_x509_cert_validation_status = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_5b5834d58c0f0d1d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_crl_load_file@ +foreign import ccall unsafe "hs_bindgen_2fcc03fae9b1b727" hs_bindgen_2fcc03fae9b1b727 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_x509_crl_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_x509_crl_load_file #-} +{-| __C declaration:__ @botan_x509_crl_load_file@ + + __defined at:__ @botan\/ffi.h:1869:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_crl_load_file :: Ptr.FunPtr ((Ptr.Ptr Botan_x509_crl_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_x509_crl_load_file = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_2fcc03fae9b1b727 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_crl_load@ +foreign import ccall unsafe "hs_bindgen_d19712415cccfb7c" hs_bindgen_d19712415cccfb7c :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_x509_crl_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_x509_crl_load #-} +{-| __C declaration:__ @botan_x509_crl_load@ + + __defined at:__ @botan\/ffi.h:1870:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_crl_load :: Ptr.FunPtr ((Ptr.Ptr Botan_x509_crl_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_x509_crl_load = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_d19712415cccfb7c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_crl_destroy@ +foreign import ccall unsafe "hs_bindgen_36f93d92513a0cff" hs_bindgen_36f93d92513a0cff :: + IO (Ptr.FunPtr (Botan_x509_crl_t -> IO FC.CInt)) + +{-# NOINLINE botan_x509_crl_destroy #-} +{-| __C declaration:__ @botan_x509_crl_destroy@ + + __defined at:__ @botan\/ffi.h:1872:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_crl_destroy :: Ptr.FunPtr (Botan_x509_crl_t -> IO FC.CInt) +botan_x509_crl_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_36f93d92513a0cff + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_is_revoked@ +foreign import ccall unsafe "hs_bindgen_3cbda894a2e028f1" hs_bindgen_3cbda894a2e028f1 :: + IO (Ptr.FunPtr (Botan_x509_crl_t -> Botan_x509_cert_t -> IO FC.CInt)) + +{-# NOINLINE botan_x509_is_revoked #-} +{-| Given a CRL and a certificate, check if the certificate is revoked on that particular CRL + +__C declaration:__ @botan_x509_is_revoked@ + +__defined at:__ @botan\/ffi.h:1878:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_x509_is_revoked :: Ptr.FunPtr (Botan_x509_crl_t -> Botan_x509_cert_t -> IO FC.CInt) +botan_x509_is_revoked = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_3cbda894a2e028f1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_x509_cert_verify_with_crl@ +foreign import ccall unsafe "hs_bindgen_30004abc9d720296" hs_bindgen_30004abc9d720296 :: + IO (Ptr.FunPtr ((Ptr.Ptr FC.CInt) -> Botan_x509_cert_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_crl_t) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word64 -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_verify_with_crl #-} +{-| Different flavor of `botan_x509_cert_verify`, supports revocation lists. CRLs are passed as an array, same as intermediates and trusted CAs + +__C declaration:__ @botan_x509_cert_verify_with_crl@ + +__defined at:__ @botan\/ffi.h:1884:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_verify_with_crl :: Ptr.FunPtr ((Ptr.Ptr FC.CInt) -> Botan_x509_cert_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_crl_t) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word64 -> IO FC.CInt) +botan_x509_cert_verify_with_crl = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_30004abc9d720296 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_key_wrap3394@ +foreign import ccall unsafe "hs_bindgen_fa10806869c025fb" hs_bindgen_fa10806869c025fb :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_key_wrap3394 #-} +{-| Key wrapping as per RFC 3394 + +__C declaration:__ @botan_key_wrap3394@ + +__defined at:__ @botan\/ffi.h:1903:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_key_wrap3394 :: Ptr.FunPtr ((HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_key_wrap3394 = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_fa10806869c025fb + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_key_unwrap3394@ +foreign import ccall unsafe "hs_bindgen_bed5dc75b7d1ce28" hs_bindgen_bed5dc75b7d1ce28 :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_key_unwrap3394 #-} +{-| __C declaration:__ @botan_key_unwrap3394@ + + __defined at:__ @botan\/ffi.h:1909:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_key_unwrap3394 :: Ptr.FunPtr ((HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_key_unwrap3394 = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_bed5dc75b7d1ce28 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_nist_kw_enc@ +foreign import ccall unsafe "hs_bindgen_a6eb371f3dd84775" hs_bindgen_a6eb371f3dd84775 :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> FC.CInt -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_nist_kw_enc #-} +{-| __C declaration:__ @botan_nist_kw_enc@ + + __defined at:__ @botan\/ffi.h:1914:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_nist_kw_enc :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> FC.CInt -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_nist_kw_enc = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_a6eb371f3dd84775 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_nist_kw_dec@ +foreign import ccall unsafe "hs_bindgen_ba5a5e8f0bf30b05" hs_bindgen_ba5a5e8f0bf30b05 :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> FC.CInt -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_nist_kw_dec #-} +{-| __C declaration:__ @botan_nist_kw_dec@ + + __defined at:__ @botan\/ffi.h:1920:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_nist_kw_dec :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> FC.CInt -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_nist_kw_dec = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_ba5a5e8f0bf30b05 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_hotp_init@ +foreign import ccall unsafe "hs_bindgen_c085d50bb724ccc7" hs_bindgen_c085d50bb724ccc7 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_hotp_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_hotp_init #-} +{-| Initialize a HOTP instance + +__C declaration:__ @botan_hotp_init@ + +__defined at:__ @botan\/ffi.h:1935:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_init :: Ptr.FunPtr ((Ptr.Ptr Botan_hotp_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_hotp_init = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_c085d50bb724ccc7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_hotp_destroy@ +foreign import ccall unsafe "hs_bindgen_ff4211f5d4b4580d" hs_bindgen_ff4211f5d4b4580d :: + IO (Ptr.FunPtr (Botan_hotp_t -> IO FC.CInt)) + +{-# NOINLINE botan_hotp_destroy #-} +{-| Destroy a HOTP instance + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_hotp_destroy@ + +__defined at:__ @botan\/ffi.h:1945:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_destroy :: Ptr.FunPtr (Botan_hotp_t -> IO FC.CInt) +botan_hotp_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_ff4211f5d4b4580d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_hotp_generate@ +foreign import ccall unsafe "hs_bindgen_c91b382dff276aea" hs_bindgen_c91b382dff276aea :: + IO (Ptr.FunPtr (Botan_hotp_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word32) -> HsBindgen.Runtime.Prelude.Word64 -> IO FC.CInt)) + +{-# NOINLINE botan_hotp_generate #-} +{-| Generate a HOTP code for the provided counter + +__C declaration:__ @botan_hotp_generate@ + +__defined at:__ @botan\/ffi.h:1951:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_generate :: Ptr.FunPtr (Botan_hotp_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word32) -> HsBindgen.Runtime.Prelude.Word64 -> IO FC.CInt) +botan_hotp_generate = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_c91b382dff276aea + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_hotp_check@ +foreign import ccall unsafe "hs_bindgen_a93eba51d3cc30b2" hs_bindgen_a93eba51d3cc30b2 :: + IO (Ptr.FunPtr (Botan_hotp_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word64) -> HsBindgen.Runtime.Prelude.Word32 -> HsBindgen.Runtime.Prelude.Word64 -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_hotp_check #-} +{-| Verify a HOTP code + +__C declaration:__ @botan_hotp_check@ + +__defined at:__ @botan\/ffi.h:1959:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_check :: Ptr.FunPtr (Botan_hotp_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word64) -> HsBindgen.Runtime.Prelude.Word32 -> HsBindgen.Runtime.Prelude.Word64 -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_hotp_check = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_a93eba51d3cc30b2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_totp_init@ +foreign import ccall unsafe "hs_bindgen_46f5366734270180" hs_bindgen_46f5366734270180 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_totp_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_totp_init #-} +{-| Initialize a TOTP instance + +__C declaration:__ @botan_totp_init@ + +__defined at:__ @botan\/ffi.h:1976:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_init :: Ptr.FunPtr ((Ptr.Ptr Botan_totp_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_totp_init = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_46f5366734270180 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_totp_destroy@ +foreign import ccall unsafe "hs_bindgen_deab82a703f6d294" hs_bindgen_deab82a703f6d294 :: + IO (Ptr.FunPtr (Botan_totp_t -> IO FC.CInt)) + +{-# NOINLINE botan_totp_destroy #-} +{-| Destroy a TOTP instance + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_totp_destroy@ + +__defined at:__ @botan\/ffi.h:1987:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_destroy :: Ptr.FunPtr (Botan_totp_t -> IO FC.CInt) +botan_totp_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_deab82a703f6d294 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_totp_generate@ +foreign import ccall unsafe "hs_bindgen_c4909f02f506571b" hs_bindgen_c4909f02f506571b :: + IO (Ptr.FunPtr (Botan_totp_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word32) -> HsBindgen.Runtime.Prelude.Word64 -> IO FC.CInt)) + +{-# NOINLINE botan_totp_generate #-} +{-| Generate a TOTP code for the provided timestamp + + [__@totp@ /(input)/__]: the TOTP object + + [__@totp_code@ /(input)/__]: the OTP code will be written here + + [__@timestamp@ /(input)/__]: the current local timestamp + +__C declaration:__ @botan_totp_generate@ + +__defined at:__ @botan\/ffi.h:1996:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_generate :: Ptr.FunPtr (Botan_totp_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word32) -> HsBindgen.Runtime.Prelude.Word64 -> IO FC.CInt) +botan_totp_generate = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_c4909f02f506571b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_totp_check@ +foreign import ccall unsafe "hs_bindgen_59eeb78aa76b2fe8" hs_bindgen_59eeb78aa76b2fe8 :: + IO (Ptr.FunPtr (Botan_totp_t -> HsBindgen.Runtime.Prelude.Word32 -> HsBindgen.Runtime.Prelude.Word64 -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_totp_check #-} +{-| Verify a TOTP code + + [__@totp@ /(input)/__]: the TOTP object + + [__@totp_code@ /(input)/__]: the presented OTP + + [__@timestamp@ /(input)/__]: the current local timestamp + + [__@acceptable_clock_drift@ /(input)/__]: specifies the acceptable amount of clock drift (in terms of time steps) between the two hosts. + +__C declaration:__ @botan_totp_check@ + +__defined at:__ @botan\/ffi.h:2009:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_check :: Ptr.FunPtr (Botan_totp_t -> HsBindgen.Runtime.Prelude.Word32 -> HsBindgen.Runtime.Prelude.Word64 -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_totp_check = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_59eeb78aa76b2fe8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_fpe_fe1_init@ +foreign import ccall unsafe "hs_bindgen_4b5e3f1bf224018a" hs_bindgen_4b5e3f1bf224018a :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_fpe_t) -> Botan_mp_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_fpe_fe1_init #-} +{-| __C declaration:__ @botan_fpe_fe1_init@ + + __defined at:__ @botan\/ffi.h:2024:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_fpe_fe1_init :: Ptr.FunPtr ((Ptr.Ptr Botan_fpe_t) -> Botan_mp_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_fpe_fe1_init = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_4b5e3f1bf224018a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_fpe_destroy@ +foreign import ccall unsafe "hs_bindgen_3710e8748f85a088" hs_bindgen_3710e8748f85a088 :: + IO (Ptr.FunPtr (Botan_fpe_t -> IO FC.CInt)) + +{-# NOINLINE botan_fpe_destroy #-} +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_fpe_destroy@ + +__defined at:__ @botan\/ffi.h:2032:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_fpe_destroy :: Ptr.FunPtr (Botan_fpe_t -> IO FC.CInt) +botan_fpe_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_3710e8748f85a088 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_fpe_encrypt@ +foreign import ccall unsafe "hs_bindgen_3507882e4652e06d" hs_bindgen_3507882e4652e06d :: + IO (Ptr.FunPtr (Botan_fpe_t -> Botan_mp_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_fpe_encrypt #-} +{-| __C declaration:__ @botan_fpe_encrypt@ + + __defined at:__ @botan\/ffi.h:2035:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_fpe_encrypt :: Ptr.FunPtr (Botan_fpe_t -> Botan_mp_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_fpe_encrypt = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_3507882e4652e06d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_fpe_decrypt@ +foreign import ccall unsafe "hs_bindgen_f8afee3467878f04" hs_bindgen_f8afee3467878f04 :: + IO (Ptr.FunPtr (Botan_fpe_t -> Botan_mp_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_fpe_decrypt #-} +{-| __C declaration:__ @botan_fpe_decrypt@ + + __defined at:__ @botan\/ffi.h:2038:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_fpe_decrypt :: Ptr.FunPtr (Botan_fpe_t -> Botan_mp_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_fpe_decrypt = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_f8afee3467878f04 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_srp6_server_session_init@ +foreign import ccall unsafe "hs_bindgen_c7bda5942b91c607" hs_bindgen_c7bda5942b91c607 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_srp6_server_session_t) -> IO FC.CInt)) + +{-# NOINLINE botan_srp6_server_session_init #-} +{-| Initialize an SRP-6 server session object + + [__@srp6@ /(input)/__]: SRP-6 server session object + +__C declaration:__ @botan_srp6_server_session_init@ + +__defined at:__ @botan\/ffi.h:2050:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_srp6_server_session_init :: Ptr.FunPtr ((Ptr.Ptr Botan_srp6_server_session_t) -> IO FC.CInt) +botan_srp6_server_session_init = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_c7bda5942b91c607 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_srp6_server_session_destroy@ +foreign import ccall unsafe "hs_bindgen_c7d360350b29d76b" hs_bindgen_c7d360350b29d76b :: + IO (Ptr.FunPtr (Botan_srp6_server_session_t -> IO FC.CInt)) + +{-# NOINLINE botan_srp6_server_session_destroy #-} +{-| Frees all resources of the SRP-6 server session object + + [__@srp6@ /(input)/__]: SRP-6 server session object + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_srp6_server_session_destroy@ + +__defined at:__ @botan\/ffi.h:2058:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_srp6_server_session_destroy :: Ptr.FunPtr (Botan_srp6_server_session_t -> IO FC.CInt) +botan_srp6_server_session_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_c7d360350b29d76b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_srp6_server_session_step1@ +foreign import ccall unsafe "hs_bindgen_41f8ee21adf6189a" hs_bindgen_41f8ee21adf6189a :: + IO (Ptr.FunPtr (Botan_srp6_server_session_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> Botan_rng_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_srp6_server_session_step1 #-} +{-| SRP-6 Server side step 1 + + [__@srp6@ /(input)/__]: SRP-6 server session object + + [__@verifier@ /(input)/__]: the verification value saved from client registration + + [__@verifier_len@ /(input)/__]: SRP-6 verifier value length + + [__@group_id@ /(input)/__]: the SRP group id + + [__@hash_id@ /(input)/__]: the SRP hash in use + + [__@rng_obj@ /(input)/__]: a random number generator object + + [__@B_pub@ /(input)/__]: out buffer to store the SRP-6 B value + + [__@B_pub_len@ /(input)/__]: SRP-6 B value length + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_srp6_server_session_step1@ + +__defined at:__ @botan\/ffi.h:2073:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_srp6_server_session_step1 :: Ptr.FunPtr (Botan_srp6_server_session_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> Botan_rng_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_srp6_server_session_step1 = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_41f8ee21adf6189a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_srp6_server_session_step2@ +foreign import ccall unsafe "hs_bindgen_2d5a4d7650fda17a" hs_bindgen_2d5a4d7650fda17a :: + IO (Ptr.FunPtr (Botan_srp6_server_session_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_srp6_server_session_step2 #-} +{-| SRP-6 Server side step 2 + + [__@srp6@ /(input)/__]: SRP-6 server session object + + [__@A@ /(input)/__]: the client's value + + [__@A_len@ /(input)/__]: the client's value length + + [__@key@ /(input)/__]: out buffer to store the symmetric key value + + [__@key_len@ /(input)/__]: symmetric key length + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_srp6_server_session_step2@ + +__defined at:__ @botan\/ffi.h:2089:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_srp6_server_session_step2 :: Ptr.FunPtr (Botan_srp6_server_session_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_srp6_server_session_step2 = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_2d5a4d7650fda17a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_srp6_generate_verifier@ +foreign import ccall unsafe "hs_bindgen_fd4150f48eebc0b7" hs_bindgen_fd4150f48eebc0b7 :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_srp6_generate_verifier #-} +{-| Generate a new SRP-6 verifier + + [__@identifier@ /(input)/__]: a username or other client identifier + + [__@password@ /(input)/__]: the secret used to authenticate user + + [__@salt@ /(input)/__]: a randomly chosen value, at least 128 bits long + + [__@salt_len@ /(input)/__]: the length of salt + + [__@group_id@ /(input)/__]: specifies the shared SRP group + + [__@hash_id@ /(input)/__]: specifies a secure hash function + + [__@verifier@ /(input)/__]: out buffer to store the SRP-6 verifier value + + [__@verifier_len@ /(input)/__]: SRP-6 verifier value length + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_srp6_generate_verifier@ + +__defined at:__ @botan\/ffi.h:2106:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_srp6_generate_verifier :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_srp6_generate_verifier = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_fd4150f48eebc0b7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_srp6_client_agree@ +foreign import ccall unsafe "hs_bindgen_59b62617ff5e6678" hs_bindgen_59b62617ff5e6678 :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> Botan_rng_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_srp6_client_agree #-} +{-| SRP6a Client side + + [__@username@ /(input)/__]: the username we are attempting login for + + [__@password@ /(input)/__]: the password we are attempting to use + + [__@group_id@ /(input)/__]: specifies the shared SRP group + + [__@hash_id@ /(input)/__]: specifies a secure hash function + + [__@salt@ /(input)/__]: is the salt value sent by the server + + [__@salt_len@ /(input)/__]: the length of salt + + [__@B@ /(input)/__]: is the server's public value + + [__@B_len@ /(input)/__]: is the server's public value length + + [__@rng_obj@ /(input)/__]: is a random number generator object + + [__@A@ /(input)/__]: out buffer to store the SRP-6 A value + + [__@A_len@ /(input)/__]: SRP-6 A verifier value length + + [__@K@ /(input)/__]: out buffer to store the symmetric value + + [__@K_len@ /(input)/__]: symmetric key length + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_srp6_client_agree@ + +__defined at:__ @botan\/ffi.h:2129:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_srp6_client_agree :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> Botan_rng_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_srp6_client_agree = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_59b62617ff5e6678 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_srp6_group_size@ +foreign import ccall unsafe "hs_bindgen_27d41ba98b416828" hs_bindgen_27d41ba98b416828 :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_srp6_group_size #-} +{-| Return the size, in bytes, of the prime associated with group_id + +__C declaration:__ @botan_srp6_group_size@ + +__defined at:__ @botan\/ffi.h:2140:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_srp6_group_size :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_srp6_group_size = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_27d41ba98b416828 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_zfec_encode@ +foreign import ccall unsafe "hs_bindgen_f84f75fb5060d4f8" hs_bindgen_f84f75fb5060d4f8 :: + IO (Ptr.FunPtr (HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8)) -> IO FC.CInt)) + +{-# NOINLINE botan_zfec_encode #-} +{-| Encode some bytes with certain ZFEC parameters. + + [__@K@ /(input)/__]: the number of shares needed for recovery + + [__@N@ /(input)/__]: the number of shares generated + + [__@input@ /(input)/__]: the data to FEC + + [__@size@ /(input)/__]: the length in bytes of input, which must be a multiple of K + + [__@outputs@ /(input)/__]: An out parameter pointing to a fully allocated array of size [N][size / K]. For all n in range, an encoded block will be written to the memory starting at outputs[n][0]. + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_zfec_encode@ + +__defined at:__ @botan\/ffi.h:2161:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_zfec_encode :: Ptr.FunPtr (HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8)) -> IO FC.CInt) +botan_zfec_encode = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_f84f75fb5060d4f8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_get_botan_zfec_decode@ +foreign import ccall unsafe "hs_bindgen_44652559277d66d5" hs_bindgen_44652559277d66d5 :: + IO (Ptr.FunPtr (HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.ConstPtr.ConstPtr (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8)) -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8)) -> IO FC.CInt)) + +{-# NOINLINE botan_zfec_decode #-} +{-| Decode some previously encoded shares using certain ZFEC parameters. + + [__@K@ /(input)/__]: the number of shares needed for recovery + + [__@N@ /(input)/__]: the total number of shares + + [__@indexes@ /(input)/__]: The index into the encoder's outputs for the corresponding element of the inputs array. Must be of length K. + + [__@inputs@ /(input)/__]: K previously encoded shares to decode + + [__@shareSize@ /(input)/__]: the length in bytes of each input + + [__@outputs@ /(input)/__]: An out parameter pointing to a fully allocated array of size [K][shareSize]. For all k in range, a decoded block will written to the memory starting at outputs[k][0]. + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_zfec_decode@ + +__defined at:__ @botan\/ffi.h:2185:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_zfec_decode :: Ptr.FunPtr (HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.ConstPtr.ConstPtr (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8)) -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8)) -> IO FC.CInt) +botan_zfec_decode = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_44652559277d66d5 diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_0_0/Safe.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_0_0/Safe.hs new file mode 100644 index 0000000..9442268 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_0_0/Safe.hs @@ -0,0 +1,12074 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_0_0.Safe where + +import Botan.Bindings.Generated.Botan_3_0_0 +import Data.Void (Void) +import qualified Foreign.C as FC +import qualified GHC.Ptr as Ptr +import qualified HsBindgen.Runtime.ConstantArray +import qualified HsBindgen.Runtime.ConstPtr +import qualified HsBindgen.Runtime.IncompleteArray +import qualified HsBindgen.Runtime.Prelude +import Prelude (IO) + +$(HsBindgen.Runtime.Prelude.addCSource (HsBindgen.Runtime.Prelude.unlines + [ "#include " + , "char const *hs_bindgen_596a6b339ed5f51c (" + , " signed int arg1" + , ")" + , "{" + , " return botan_error_description(arg1);" + , "}" + , "char const *hs_bindgen_5f42434cab82db31 (void)" + , "{" + , " return botan_error_last_exception_message();" + , "}" + , "uint32_t hs_bindgen_170dad4385e40e5a (void)" + , "{" + , " return botan_ffi_api_version();" + , "}" + , "signed int hs_bindgen_07bbbf259613a7dc (" + , " uint32_t arg1" + , ")" + , "{" + , " return botan_ffi_supports_api(arg1);" + , "}" + , "char const *hs_bindgen_10da9b1dd35c0807 (void)" + , "{" + , " return botan_version_string();" + , "}" + , "uint32_t hs_bindgen_cb7ee6245a0cd6b4 (void)" + , "{" + , " return botan_version_major();" + , "}" + , "uint32_t hs_bindgen_86a6e74892580de2 (void)" + , "{" + , " return botan_version_minor();" + , "}" + , "uint32_t hs_bindgen_72b525231efbab6c (void)" + , "{" + , " return botan_version_patch();" + , "}" + , "uint32_t hs_bindgen_9580d224c2c8ad37 (void)" + , "{" + , " return botan_version_datestamp();" + , "}" + , "signed int hs_bindgen_330aaca4963d5ac2 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_constant_time_compare(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_42b30b1a3c9e497b (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_same_mem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a3a8bc6ed3858273 (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_scrub_mem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c442648c9d83cbdc (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_hex_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_be7b347ca2eb5556 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_hex_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_d41b505645be7a99 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_3e4d351a1382eb9e (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_909775f0ca837495 (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_rng_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_67981c827252903f (" + , " botan_rng_t *arg1," + , " char const *arg2," + , " void *arg3," + , " signed int (*arg4) (" + , " void *arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")," + , " signed int (*arg5) (" + , " void *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")," + , " void (*arg6) (" + , " void *arg1" + , ")" + , ")" + , "{" + , " return botan_rng_init_custom(arg1, arg2, arg3, arg4, arg5, arg6);" + , "}" + , "signed int hs_bindgen_053431bb48e8d6d2 (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_get(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7928d87012ce5480 (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_system_rng_get(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fc31392c38032c64 (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_rng_reseed(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4793433e4aa91883 (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_reseed_from_rng(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c49f81adc8578abc (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_add_entropy(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_036165e2d3a07ec2 (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return botan_rng_destroy(arg1);" + , "}" + , "signed int hs_bindgen_ff6bc9d12513d64c (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_hash_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_941c1e4ff8d661c7 (" + , " botan_hash_t *arg1," + , " botan_hash_t const arg2" + , ")" + , "{" + , " return botan_hash_copy_state(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f1aaed8ec79cc4c4 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a9fd13e4951b4a08 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_block_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e93e4f32f0c63e62 (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_hash_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4e0ce560d34027ab (" + , " botan_hash_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_hash_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f53ef3e3dfe732cf (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_clear(arg1);" + , "}" + , "signed int hs_bindgen_ec9e77a1fe77bdec (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d1a9317dea1ca056 (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_hash_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_02c9f48f9d61b07d (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mac_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6cd93e19f94321e4 (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mac_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b4509340adc7661a (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1be33f404a9cd654 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_nonce(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_254e12bb3b6641c9 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_96c87de4c17bfa3d (" + , " botan_mac_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mac_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c71dbd81cf133e9d (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_clear(arg1);" + , "}" + , "signed int hs_bindgen_b446b3832df58772 (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_mac_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_da08a9e26b959b99 (" + , " botan_mac_t arg1," + , " size_t *arg2," + , " size_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_mac_get_keyspec(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_17fb2bd36458b7cd (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_destroy(arg1);" + , "}" + , "signed int hs_bindgen_b94fa71ea29b6074 (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_cipher_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_86cf6647ad774185 (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6c41cc24ad9cb49f (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_559c0a3583be5269 (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_cipher_valid_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ff336150659632a3 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_tag_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4710c462ae31371d (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_default_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5d8016303f1b4180 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_79b0139d6f1eca6d (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_ideal_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_05e27a343f523da3 (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_query_keylen(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5ffeb09a78fdacfd (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_cipher_get_keyspec(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_1e222b754990c5a0 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0f8089a35975c233 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_reset(arg1);" + , "}" + , "signed int hs_bindgen_c4083ce08ac3225f (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_associated_data(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d5cadb35fe58e484 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_start(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_80e699fe3e54e571 (" + , " botan_cipher_t arg1," + , " uint32_t arg2," + , " uint8_t *arg3," + , " size_t arg4," + , " size_t *arg5," + , " uint8_t const *arg6," + , " size_t arg7," + , " size_t *arg8" + , ")" + , "{" + , " return botan_cipher_update(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_01676cf4507c73d2 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_282bfe5e68084474 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d053ea7569b9e715 (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t arg3," + , " char const *arg4," + , " uint8_t const *arg5," + , " size_t arg6," + , " size_t arg7" + , ")" + , "{" + , " return botan_pbkdf(arg1, arg2, arg3, arg4, arg5, arg6, arg7);" + , "}" + , "signed int hs_bindgen_2b85c54ddb8bbd10 (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t arg3," + , " char const *arg4," + , " uint8_t const *arg5," + , " size_t arg6," + , " size_t arg7," + , " size_t *arg8" + , ")" + , "{" + , " return botan_pbkdf_timed(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_a7b5d2e50d0ca71b (" + , " char const *arg1," + , " size_t arg2," + , " size_t arg3," + , " size_t arg4," + , " uint8_t *arg5," + , " size_t arg6," + , " char const *arg7," + , " size_t arg8," + , " uint8_t const *arg9," + , " size_t arg10" + , ")" + , "{" + , " return botan_pwdhash(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10);" + , "}" + , "signed int hs_bindgen_3cfa05e4c6151fa0 (" + , " char const *arg1," + , " uint32_t arg2," + , " size_t *arg3," + , " size_t *arg4," + , " size_t *arg5," + , " uint8_t *arg6," + , " size_t arg7," + , " char const *arg8," + , " size_t arg9," + , " uint8_t const *arg10," + , " size_t arg11" + , ")" + , "{" + , " return botan_pwdhash_timed(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11);" + , "}" + , "signed int hs_bindgen_0f0aec9e017d37a2 (" + , " uint8_t *arg1," + , " size_t arg2," + , " char const *arg3," + , " uint8_t const *arg4," + , " size_t arg5," + , " size_t arg6," + , " size_t arg7," + , " size_t arg8" + , ")" + , "{" + , " return botan_scrypt(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_feb8d9539a40495d (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t arg3," + , " uint8_t const *arg4," + , " size_t arg5," + , " uint8_t const *arg6," + , " size_t arg7," + , " uint8_t const *arg8," + , " size_t arg9" + , ")" + , "{" + , " return botan_kdf(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9);" + , "}" + , "signed int hs_bindgen_ae9b385452abcd31 (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_block_cipher_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c2f35e0b47ffbd9c (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_ecf871214f977200 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_d7e0b74e7bb4fd0f (" + , " botan_block_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_block_cipher_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b9be48f598a3be33 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_block_size(arg1);" + , "}" + , "signed int hs_bindgen_be126fde12579275 (" + , " botan_block_cipher_t arg1," + , " uint8_t const *arg2," + , " uint8_t *arg3," + , " size_t arg4" + , ")" + , "{" + , " return botan_block_cipher_encrypt_blocks(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_6cb68231a3025630 (" + , " botan_block_cipher_t arg1," + , " uint8_t const *arg2," + , " uint8_t *arg3," + , " size_t arg4" + , ")" + , "{" + , " return botan_block_cipher_decrypt_blocks(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_1cf3557182eea51b (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_block_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c136b8399f077589 (" + , " botan_block_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_block_cipher_get_keyspec(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_6efe95e83f740e4f (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return botan_mp_init(arg1);" + , "}" + , "signed int hs_bindgen_0127b609c9c1cbcd (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_123e0a2761d8400f (" + , " botan_mp_t const arg1," + , " char *arg2" + , ")" + , "{" + , " return botan_mp_to_hex(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d1a74858ac4d995f (" + , " botan_mp_t const arg1," + , " uint8_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_mp_to_str(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_5755e038138cd939 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_clear(arg1);" + , "}" + , "signed int hs_bindgen_316631d7caf42981 (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return botan_mp_set_from_int(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7708c83ae53b689d (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2" + , ")" + , "{" + , " return botan_mp_set_from_mp(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ebd93ace17d55c73 (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_mp_set_from_str(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e336d62d74a98dd0 (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_set_from_radix_str(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f532de35da4cc3ee (" + , " botan_mp_t const arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bits(arg1, arg2);" + , "}" + , "signed int hs_bindgen_03636a27e4aa0ef5 (" + , " botan_mp_t const arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bytes(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2120c85857deee14 (" + , " botan_mp_t const arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mp_to_bin(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1acee650c935dc16 (" + , " botan_mp_t const arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_from_bin(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5b8ce8404277dc2e (" + , " botan_mp_t const arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return botan_mp_to_uint32(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e7df718ac8c314db (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return botan_mp_is_positive(arg1);" + , "}" + , "signed int hs_bindgen_3e7dd83d562bbe60 (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return botan_mp_is_negative(arg1);" + , "}" + , "signed int hs_bindgen_a40daee6a3436fca (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_flip_sign(arg1);" + , "}" + , "signed int hs_bindgen_f05544901f190d34 (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return botan_mp_is_zero(arg1);" + , "}" + , "signed int hs_bindgen_c89e120398d6044b (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return botan_mp_is_odd(arg1);" + , "}" + , "signed int hs_bindgen_4fd201b557d479db (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return botan_mp_is_even(arg1);" + , "}" + , "signed int hs_bindgen_6557bbd224364e45 (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_add_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b23f697e69e7c0b5 (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_sub_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_723e23708f77a0e1 (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3" + , ")" + , "{" + , " return botan_mp_add(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b5647131e2659949 (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3" + , ")" + , "{" + , " return botan_mp_sub(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_59d8bdd94521f9c8 (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3" + , ")" + , "{" + , " return botan_mp_mul(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_323d3b2194fa7bee (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t const arg3," + , " botan_mp_t const arg4" + , ")" + , "{" + , " return botan_mp_div(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_b047d7ba896c943e (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3," + , " botan_mp_t const arg4" + , ")" + , "{" + , " return botan_mp_mod_mul(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_f2c55377d952bed9 (" + , " botan_mp_t const arg1," + , " botan_mp_t const arg2" + , ")" + , "{" + , " return botan_mp_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4e0a5997c516bd02 (" + , " signed int *arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3" + , ")" + , "{" + , " return botan_mp_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_faa173f856495959 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_swap(arg1, arg2);" + , "}" + , "signed int hs_bindgen_be5bf641273a7d12 (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3," + , " botan_mp_t const arg4" + , ")" + , "{" + , " return botan_mp_powmod(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_f824d35bb488aa71 (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_lshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0e15e04c1f8504b6 (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cfcfc82b90c3c587 (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3" + , ")" + , "{" + , " return botan_mp_mod_inverse(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_576f8a7c96e7dde4 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rand_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_734cf6b5ebf95c5f (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " botan_mp_t const arg3," + , " botan_mp_t const arg4" + , ")" + , "{" + , " return botan_mp_rand_range(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_8df4e15bb647127c (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3" + , ")" + , "{" + , " return botan_mp_gcd(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7e538fdc9db19055 (" + , " botan_mp_t const arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_is_prime(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_50f84b61d3dcdc4b (" + , " botan_mp_t const arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_get_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6f2b18e39a239269 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_set_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a44011c971475d6b (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_clear_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1bba7b8e02356cad (" + , " uint8_t *arg1," + , " size_t *arg2," + , " char const *arg3," + , " botan_rng_t arg4," + , " size_t arg5," + , " uint32_t arg6" + , ")" + , "{" + , " return botan_bcrypt_generate(arg1, arg2, arg3, arg4, arg5, arg6);" + , "}" + , "signed int hs_bindgen_7453d293bb5fa084 (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_bcrypt_is_valid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c0c388ef637d0679 (" + , " botan_privkey_t *arg1," + , " char const *arg2," + , " char const *arg3," + , " botan_rng_t arg4" + , ")" + , "{" + , " return botan_privkey_create(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_c15e1425a27e92d2 (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_privkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6f2ea6a8c42473f2 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_create_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_269dc3eb784b9541 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_94dad37d46102184 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_fffa42f69f7579aa (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return botan_privkey_create_mceliece(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_c8e22307a271077b (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_dh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5f8b788111afb362 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return botan_privkey_create_dsa(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_061dda54a3d6748d (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return botan_privkey_create_elgamal(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_ef6a3d56cb87aa2b (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " char const *arg5" + , ")" + , "{" + , " return botan_privkey_load(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_2a011cfdbafecaec (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return botan_privkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_7d792b190f6fa2a9 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_privkey_export(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_89455525865f83d7 (" + , " botan_privkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return botan_privkey_view_der(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bee8bdf66240cb8a (" + , " botan_privkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_str_fn arg3" + , ")" + , "{" + , " return botan_privkey_view_pem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d44ea084315394c6 (" + , " botan_privkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_privkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_fe79ddee26cc3fef (" + , " botan_privkey_t arg1," + , " uint8_t *arg2," + , " size_t *arg3," + , " botan_rng_t arg4," + , " char const *arg5," + , " char const *arg6," + , " uint32_t arg7" + , ")" + , "{" + , " return botan_privkey_export_encrypted(arg1, arg2, arg3, arg4, arg5, arg6, arg7);" + , "}" + , "signed int hs_bindgen_193fe389e87fa445 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2," + , " size_t *arg3," + , " botan_rng_t arg4," + , " char const *arg5," + , " uint32_t arg6," + , " size_t *arg7," + , " char const *arg8," + , " char const *arg9," + , " uint32_t arg10" + , ")" + , "{" + , " return botan_privkey_export_encrypted_pbkdf_msec(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10);" + , "}" + , "signed int hs_bindgen_1738672dfa2fb4ed (" + , " botan_privkey_t arg1," + , " uint8_t *arg2," + , " size_t *arg3," + , " botan_rng_t arg4," + , " char const *arg5," + , " size_t arg6," + , " char const *arg7," + , " char const *arg8," + , " uint32_t arg9" + , ")" + , "{" + , " return botan_privkey_export_encrypted_pbkdf_iter(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9);" + , "}" + , "signed int hs_bindgen_f76db0ebd521e034 (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " char const *arg3," + , " char const *arg4," + , " char const *arg5," + , " size_t arg6," + , " botan_view_ctx arg7," + , " botan_view_bin_fn arg8" + , ")" + , "{" + , " return botan_privkey_view_encrypted_der(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_98db44edf2cbcaa1 (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " char const *arg3," + , " char const *arg4," + , " char const *arg5," + , " size_t arg6," + , " botan_view_ctx arg7," + , " botan_view_bin_fn arg8" + , ")" + , "{" + , " return botan_privkey_view_encrypted_der_timed(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_882d7449b1f3ecb8 (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " char const *arg3," + , " char const *arg4," + , " char const *arg5," + , " size_t arg6," + , " botan_view_ctx arg7," + , " botan_view_str_fn arg8" + , ")" + , "{" + , " return botan_privkey_view_encrypted_pem(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_f2523a17e9e5f288 (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " char const *arg3," + , " char const *arg4," + , " char const *arg5," + , " size_t arg6," + , " botan_view_ctx arg7," + , " botan_view_str_fn arg8" + , ")" + , "{" + , " return botan_privkey_view_encrypted_pem_timed(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_c069779455d9967a (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_683fbbe7f6b28e26 (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_export_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9bfadb431b8f1006 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_pubkey_export(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_7225d7bdb07881c9 (" + , " botan_pubkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return botan_pubkey_view_der(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_42c8f9cddaebf6ce (" + , " botan_pubkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_str_fn arg3" + , ")" + , "{" + , " return botan_pubkey_view_pem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7223ca56d4a79949 (" + , " botan_pubkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pubkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_eab8b9d9b19ee637 (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_pubkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_45270549acfc9725 (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pubkey_estimated_strength(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b52550e76e8a8f11 (" + , " botan_pubkey_t arg1," + , " char const *arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_pubkey_fingerprint(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_574e8d52747d7053 (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_80b7f331f421ea0c (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pubkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d933938dc565fa5d (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e6f757e880c8f1c7 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return botan_privkey_load_rsa(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_5f6282fdf2d3d6fe (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_rsa_pkcs1(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_06791d01c452f06a (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b671cfc6386beb9e (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2f3af3c6b0c2c0e2 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_d(arg1, arg2);" + , "}" + , "signed int hs_bindgen_79bd80d54f610d98 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_fa8b785baf0a8c2b (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_37e0187548bc87d8 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_privkey_rsa_get_privkey(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_b05b1593c52bb651 (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7b616346201103b4 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_07142108998ad4f6 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_694c3e747dd726f4 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4," + , " botan_mp_t arg5" + , ")" + , "{" + , " return botan_privkey_load_dsa(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_195970d94b987541 (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4," + , " botan_mp_t arg5" + , ")" + , "{" + , " return botan_pubkey_load_dsa(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_862bd3e138bbe74a (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_dsa_get_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9b0ab9cd3fbd9035 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e9e5bb0296391834 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7bbbddb00064ab93 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_g(arg1, arg2);" + , "}" + , "signed int hs_bindgen_12738e141a05a20b (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c24d5b5efe6b09ec (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return botan_privkey_load_dh(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_fde310e32c0fa198 (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return botan_pubkey_load_dh(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_9e1a8d3b44b912aa (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return botan_pubkey_load_elgamal(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_3ba6cea50af55aee (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return botan_privkey_load_elgamal(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_bb0df7a9afac3a8a (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_70d204939200707b (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_688e100cb2d247d9 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e2ffdbc2dc627d95 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_bb1fcb9416133c5b (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_40a75bd7f7e15152 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1a5d454e615ccef3 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5fd717350529d3b1 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_989883b061b3a3eb (" + , " botan_privkey_t *arg1," + , " botan_mp_t const arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_922401273c624b5a (" + , " botan_pubkey_t *arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_pubkey_load_ecdsa(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_bb47a2f6a41c4f03 (" + , " botan_pubkey_t *arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_pubkey_load_ecdh(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_c24740920ef299d6 (" + , " botan_privkey_t *arg1," + , " botan_mp_t const arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_20d6e857fd1afd00 (" + , " botan_pubkey_t *arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_pubkey_load_sm2(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_0c0278b215a5a943 (" + , " botan_privkey_t *arg1," + , " botan_mp_t const arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_084c3247da47b79b (" + , " botan_pubkey_t *arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_pubkey_load_sm2_enc(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_ca157d050b5829e0 (" + , " botan_privkey_t *arg1," + , " botan_mp_t const arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2_enc(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_dbb4320e2ae8455b (" + , " uint8_t *arg1," + , " size_t *arg2," + , " char const *arg3," + , " char const *arg4," + , " botan_pubkey_t const arg5" + , ")" + , "{" + , " return botan_pubkey_sm2_compute_za(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_812387d7bc8299df (" + , " botan_pubkey_t const arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return botan_pubkey_view_ec_public_point(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4e4dc8b8a09ad4ad (" + , " botan_pk_op_encrypt_t *arg1," + , " botan_pubkey_t arg2," + , " char const *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_pk_op_encrypt_create(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_1726fe09f7857d92 (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_83ddf86cf7647e2e (" + , " botan_pk_op_encrypt_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pk_op_encrypt_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_fad471132293642a (" + , " botan_pk_op_encrypt_t arg1," + , " botan_rng_t arg2," + , " uint8_t *arg3," + , " size_t *arg4," + , " uint8_t const *arg5," + , " size_t arg6" + , ")" + , "{" + , " return botan_pk_op_encrypt(arg1, arg2, arg3, arg4, arg5, arg6);" + , "}" + , "signed int hs_bindgen_cc0274c8e8845a16 (" + , " botan_pk_op_decrypt_t *arg1," + , " botan_privkey_t arg2," + , " char const *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_pk_op_decrypt_create(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_1de958bfa72e3c97 (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_b3f515e95de17195 (" + , " botan_pk_op_decrypt_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pk_op_decrypt_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_37a41d251aa140a0 (" + , " botan_pk_op_decrypt_t arg1," + , " uint8_t *arg2," + , " size_t *arg3," + , " uint8_t const *arg4," + , " size_t arg5" + , ")" + , "{" + , " return botan_pk_op_decrypt(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_e702d6b32b4c5e4d (" + , " botan_pk_op_sign_t *arg1," + , " botan_privkey_t arg2," + , " char const *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_pk_op_sign_create(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_b2a8b9c62f6ec697 (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return botan_pk_op_sign_destroy(arg1);" + , "}" + , "signed int hs_bindgen_c4e5229dd70842c2 (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_sign_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_17d01bb61890d2e7 (" + , " botan_pk_op_sign_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pk_op_sign_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_514e881cdd281f68 (" + , " botan_pk_op_sign_t arg1," + , " botan_rng_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_pk_op_sign_finish(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_2b513128ec6831a8 (" + , " botan_pk_op_verify_t *arg1," + , " botan_pubkey_t arg2," + , " char const *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_pk_op_verify_create(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_d22d427c67362256 (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return botan_pk_op_verify_destroy(arg1);" + , "}" + , "signed int hs_bindgen_ed10c3c07a259217 (" + , " botan_pk_op_verify_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pk_op_verify_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c551ee95e966107d (" + , " botan_pk_op_verify_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pk_op_verify_finish(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_38eae892ae3a0d5c (" + , " botan_pk_op_ka_t *arg1," + , " botan_privkey_t arg2," + , " char const *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_pk_op_key_agreement_create(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_a3a5e9d8a8623615 (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return botan_pk_op_key_agreement_destroy(arg1);" + , "}" + , "signed int hs_bindgen_a6e802a718976f66 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pk_op_key_agreement_export_public(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5d18ef95e49fe41b (" + , " botan_privkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return botan_pk_op_key_agreement_view_public(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_35d5f46dbaa171e1 (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_key_agreement_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7f8dcc24297a9b18 (" + , " botan_pk_op_ka_t arg1," + , " uint8_t *arg2," + , " size_t *arg3," + , " uint8_t const *arg4," + , " size_t arg5," + , " uint8_t const *arg6," + , " size_t arg7" + , ")" + , "{" + , " return botan_pk_op_key_agreement(arg1, arg2, arg3, arg4, arg5, arg6, arg7);" + , "}" + , "signed int hs_bindgen_54ba4b01fa6dd811 (" + , " botan_pk_op_kem_encrypt_t *arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_create(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_481c7ebe4670323a (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_1d0e3a0f6697925d (" + , " botan_pk_op_kem_encrypt_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_shared_key_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4133b673d82ae380 (" + , " botan_pk_op_kem_encrypt_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_encapsulated_key_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e3542444b22a3c7e (" + , " botan_pk_op_kem_encrypt_t arg1," + , " botan_rng_t arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " size_t arg5," + , " uint8_t *arg6," + , " size_t *arg7," + , " uint8_t *arg8," + , " size_t *arg9" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_create_shared_key(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9);" + , "}" + , "signed int hs_bindgen_530943de1c943683 (" + , " botan_pk_op_kem_decrypt_t *arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_create(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0f51711cb9895c85 (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_de8a00f5bb2f4316 (" + , " botan_pk_op_kem_decrypt_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_shared_key_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_aeed291522f49286 (" + , " botan_pk_op_kem_decrypt_t arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " uint8_t const *arg4," + , " size_t arg5," + , " size_t arg6," + , " uint8_t *arg7," + , " size_t *arg8" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_shared_key(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_f67c40f86a7234c7 (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pkcs_hash_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_186c2cecc517c333 (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " char const *arg3," + , " uint8_t const *arg4," + , " size_t arg5," + , " uint8_t const *arg6," + , " size_t arg7," + , " uint8_t *arg8," + , " size_t *arg9" + , ")" + , "{" + , " return botan_mceies_encrypt(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9);" + , "}" + , "signed int hs_bindgen_03e75310e36bb2f0 (" + , " botan_privkey_t arg1," + , " char const *arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " uint8_t const *arg5," + , " size_t arg6," + , " uint8_t *arg7," + , " size_t *arg8" + , ")" + , "{" + , " return botan_mceies_decrypt(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_4986b485d9902959 (" + , " botan_x509_cert_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_cert_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8467d08ea11d2add (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9badee90a48043a7 (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return botan_x509_cert_destroy(arg1);" + , "}" + , "signed int hs_bindgen_1bd8e0027302e2d6 (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_cert_dup(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c6ac03597e6ccf51 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_starts(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a20053710db534b7 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_expires(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6366b5fd9db342d2 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_before(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5b0c3777e85fe7af (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_after(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ece3a0dd18d1ab10 (" + , " botan_x509_cert_t arg1," + , " char const *arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_x509_cert_get_fingerprint(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_b4c92b110a490330 (" + , " botan_x509_cert_t arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_serial_number(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_07757401581a4d69 (" + , " botan_x509_cert_t arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_authority_key_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4d80bc8df6a9adcd (" + , " botan_x509_cert_t arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_subject_key_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a3c54e76356ebe7e (" + , " botan_x509_cert_t arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_public_key_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7df7e952b5e2e7ef (" + , " botan_x509_cert_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return botan_x509_cert_view_public_key_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_41f4b707a1e290d2 (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_get_public_key(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5dd3c16ca98467ce (" + , " botan_x509_cert_t arg1," + , " char const *arg2," + , " size_t arg3," + , " uint8_t *arg4," + , " size_t *arg5" + , ")" + , "{" + , " return botan_x509_cert_get_issuer_dn(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_ac9f6fba96565b35 (" + , " botan_x509_cert_t arg1," + , " char const *arg2," + , " size_t arg3," + , " uint8_t *arg4," + , " size_t *arg5" + , ")" + , "{" + , " return botan_x509_cert_get_subject_dn(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_eeea8f953b9e7ac3 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_to_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8040877213664f5a (" + , " botan_x509_cert_t arg1," + , " botan_view_ctx arg2," + , " botan_view_str_fn arg3" + , ")" + , "{" + , " return botan_x509_cert_view_as_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6398629a0cb69dc8 (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return botan_x509_cert_allowed_usage(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6f67007c7bfcf586 (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_hostname_match(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4b0a8ad1a770e044 (" + , " signed int *arg1," + , " botan_x509_cert_t arg2," + , " botan_x509_cert_t const *arg3," + , " size_t arg4," + , " botan_x509_cert_t const *arg5," + , " size_t arg6," + , " char const *arg7," + , " size_t arg8," + , " char const *arg9," + , " uint64_t arg10" + , ")" + , "{" + , " return botan_x509_cert_verify(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10);" + , "}" + , "char const *hs_bindgen_e73f0a5e20541b48 (" + , " signed int arg1" + , ")" + , "{" + , " return botan_x509_cert_validation_status(arg1);" + , "}" + , "signed int hs_bindgen_e62ed3f6a970dbe9 (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_crl_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5b86eb8c65a38a21 (" + , " botan_x509_crl_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_crl_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ff6579b4f28d6ff6 (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return botan_x509_crl_destroy(arg1);" + , "}" + , "signed int hs_bindgen_27d7cdbd090a4578 (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_is_revoked(arg1, arg2);" + , "}" + , "signed int hs_bindgen_348db2408ee7dbbb (" + , " signed int *arg1," + , " botan_x509_cert_t arg2," + , " botan_x509_cert_t const *arg3," + , " size_t arg4," + , " botan_x509_cert_t const *arg5," + , " size_t arg6," + , " botan_x509_crl_t const *arg7," + , " size_t arg8," + , " char const *arg9," + , " size_t arg10," + , " char const *arg11," + , " uint64_t arg12" + , ")" + , "{" + , " return botan_x509_cert_verify_with_crl(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11, arg12);" + , "}" + , "signed int hs_bindgen_4b5a7a61314aff0a (" + , " uint8_t const *arg1," + , " size_t arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " uint8_t *arg5," + , " size_t *arg6" + , ")" + , "{" + , " return botan_key_wrap3394(arg1, arg2, arg3, arg4, arg5, arg6);" + , "}" + , "signed int hs_bindgen_f7ea1291ddceb60c (" + , " uint8_t const *arg1," + , " size_t arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " uint8_t *arg5," + , " size_t *arg6" + , ")" + , "{" + , " return botan_key_unwrap3394(arg1, arg2, arg3, arg4, arg5, arg6);" + , "}" + , "signed int hs_bindgen_2f2fc3344aa6deb7 (" + , " char const *arg1," + , " signed int arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " uint8_t const *arg5," + , " size_t arg6," + , " uint8_t *arg7," + , " size_t *arg8" + , ")" + , "{" + , " return botan_nist_kw_enc(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_7568303b7f7f274a (" + , " char const *arg1," + , " signed int arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " uint8_t const *arg5," + , " size_t arg6," + , " uint8_t *arg7," + , " size_t *arg8" + , ")" + , "{" + , " return botan_nist_kw_dec(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_2e976ba196051b1d (" + , " botan_hotp_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4," + , " size_t arg5" + , ")" + , "{" + , " return botan_hotp_init(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_deb8b0ce66185c11 (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return botan_hotp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_56be02786eae2eb6 (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_hotp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8a289fd4d98dbdbe (" + , " botan_hotp_t arg1," + , " uint64_t *arg2," + , " uint32_t arg3," + , " uint64_t arg4," + , " size_t arg5" + , ")" + , "{" + , " return botan_hotp_check(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_9737f2d9690025ef (" + , " botan_totp_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4," + , " size_t arg5," + , " size_t arg6" + , ")" + , "{" + , " return botan_totp_init(arg1, arg2, arg3, arg4, arg5, arg6);" + , "}" + , "signed int hs_bindgen_4e4a43059f0ed259 (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return botan_totp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_3efbcbac9fa85052 (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_totp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ad0aa2ce620fbb15 (" + , " botan_totp_t arg1," + , " uint32_t arg2," + , " uint64_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return botan_totp_check(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_7ce55945192576f1 (" + , " botan_fpe_t *arg1," + , " botan_mp_t arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " size_t arg5," + , " uint32_t arg6" + , ")" + , "{" + , " return botan_fpe_fe1_init(arg1, arg2, arg3, arg4, arg5, arg6);" + , "}" + , "signed int hs_bindgen_3203fd241a880758 (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return botan_fpe_destroy(arg1);" + , "}" + , "signed int hs_bindgen_2bde5a2597219f11 (" + , " botan_fpe_t arg1," + , " botan_mp_t arg2," + , " uint8_t const *arg3," + , " size_t arg4" + , ")" + , "{" + , " return botan_fpe_encrypt(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_2208701a33226747 (" + , " botan_fpe_t arg1," + , " botan_mp_t arg2," + , " uint8_t const *arg3," + , " size_t arg4" + , ")" + , "{" + , " return botan_fpe_decrypt(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_a82ce61ed5a2b021 (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return botan_srp6_server_session_init(arg1);" + , "}" + , "signed int hs_bindgen_f093eecb19f6f1dd (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return botan_srp6_server_session_destroy(arg1);" + , "}" + , "signed int hs_bindgen_480522cca5289634 (" + , " botan_srp6_server_session_t arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4," + , " char const *arg5," + , " botan_rng_t arg6," + , " uint8_t *arg7," + , " size_t *arg8" + , ")" + , "{" + , " return botan_srp6_server_session_step1(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_bfb61084eb26c979 (" + , " botan_srp6_server_session_t arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " uint8_t *arg4," + , " size_t *arg5" + , ")" + , "{" + , " return botan_srp6_server_session_step2(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_bb59be19f1727b3d (" + , " char const *arg1," + , " char const *arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " char const *arg5," + , " char const *arg6," + , " uint8_t *arg7," + , " size_t *arg8" + , ")" + , "{" + , " return botan_srp6_generate_verifier(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_94d61a874d7e2184 (" + , " char const *arg1," + , " char const *arg2," + , " char const *arg3," + , " char const *arg4," + , " uint8_t const *arg5," + , " size_t arg6," + , " uint8_t const *arg7," + , " size_t arg8," + , " botan_rng_t arg9," + , " uint8_t *arg10," + , " size_t *arg11," + , " uint8_t *arg12," + , " size_t *arg13" + , ")" + , "{" + , " return botan_srp6_client_agree(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11, arg12, arg13);" + , "}" + , "signed int hs_bindgen_459d7c978909b55a (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_srp6_group_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4bee8014eeaeae3a (" + , " size_t arg1," + , " size_t arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " uint8_t **arg5" + , ")" + , "{" + , " return botan_zfec_encode(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_7d691553504533b9 (" + , " size_t arg1," + , " size_t arg2," + , " size_t const *arg3," + , " uint8_t *const *const arg4," + , " size_t arg5," + , " uint8_t **arg6" + , ")" + , "{" + , " return botan_zfec_decode(arg1, arg2, arg3, arg4, arg5, arg6);" + , "}" + ])) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_error_description@ +foreign import ccall safe "hs_bindgen_596a6b339ed5f51c" hs_bindgen_596a6b339ed5f51c :: + FC.CInt + -> IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) + +{-| Convert an error code into a string. Returns "Unknown error" if the error code is not a known one. + +__C declaration:__ @botan_error_description@ + +__defined at:__ @botan\/ffi.h:125:35@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_error_description :: + FC.CInt + -- ^ __C declaration:__ @err@ + -> IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_error_description = hs_bindgen_596a6b339ed5f51c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_error_last_exception_message@ +foreign import ccall safe "hs_bindgen_5f42434cab82db31" hs_bindgen_5f42434cab82db31 :: + IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) + +{-| Return the message of the last exception caught in this thread. + + This pointer can/will be reallocated or overwritten the next time this thread calls any other Botan FFI function and must be copied to persistent storage first. + +__C declaration:__ @botan_error_last_exception_message@ + +__defined at:__ @botan\/ffi.h:134:35@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_error_last_exception_message :: IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_error_last_exception_message = + hs_bindgen_5f42434cab82db31 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_ffi_api_version@ +foreign import ccall safe "hs_bindgen_170dad4385e40e5a" hs_bindgen_170dad4385e40e5a :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the version of the currently supported FFI API. This is expressed in the form YYYYMMDD of the release date of this version of the API. + +__C declaration:__ @botan_ffi_api_version@ + +__defined at:__ @botan\/ffi.h:141:32@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_api_version :: IO HsBindgen.Runtime.Prelude.Word32 +botan_ffi_api_version = hs_bindgen_170dad4385e40e5a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_ffi_supports_api@ +foreign import ccall safe "hs_bindgen_07bbbf259613a7dc" hs_bindgen_07bbbf259613a7dc :: + HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| Return 0 (ok) if the version given is one this library supports. botan_ffi_supports_api(botan_ffi_api_version()) will always return 0. + +__C declaration:__ @botan_ffi_supports_api@ + +__defined at:__ @botan\/ffi.h:147:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_supports_api :: + HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @api_version@ + -> IO FC.CInt +botan_ffi_supports_api = hs_bindgen_07bbbf259613a7dc + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_version_string@ +foreign import ccall safe "hs_bindgen_10da9b1dd35c0807" hs_bindgen_10da9b1dd35c0807 :: + IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) + +{-| Return a free-form version string, e.g., 2.0.0 + +__C declaration:__ @botan_version_string@ + +__defined at:__ @botan\/ffi.h:152:35@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_string :: IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_version_string = hs_bindgen_10da9b1dd35c0807 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_version_major@ +foreign import ccall safe "hs_bindgen_cb7ee6245a0cd6b4" hs_bindgen_cb7ee6245a0cd6b4 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the major version of the library + +__C declaration:__ @botan_version_major@ + +__defined at:__ @botan\/ffi.h:157:32@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_major :: IO HsBindgen.Runtime.Prelude.Word32 +botan_version_major = hs_bindgen_cb7ee6245a0cd6b4 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_version_minor@ +foreign import ccall safe "hs_bindgen_86a6e74892580de2" hs_bindgen_86a6e74892580de2 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the minor version of the library + +__C declaration:__ @botan_version_minor@ + +__defined at:__ @botan\/ffi.h:162:32@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_minor :: IO HsBindgen.Runtime.Prelude.Word32 +botan_version_minor = hs_bindgen_86a6e74892580de2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_version_patch@ +foreign import ccall safe "hs_bindgen_72b525231efbab6c" hs_bindgen_72b525231efbab6c :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the patch version of the library + +__C declaration:__ @botan_version_patch@ + +__defined at:__ @botan\/ffi.h:167:32@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_patch :: IO HsBindgen.Runtime.Prelude.Word32 +botan_version_patch = hs_bindgen_72b525231efbab6c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_version_datestamp@ +foreign import ccall safe "hs_bindgen_9580d224c2c8ad37" hs_bindgen_9580d224c2c8ad37 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the date this version was released as an integer, or 0 if an unreleased version + +__C declaration:__ @botan_version_datestamp@ + +__defined at:__ @botan\/ffi.h:173:32@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_datestamp :: IO HsBindgen.Runtime.Prelude.Word32 +botan_version_datestamp = hs_bindgen_9580d224c2c8ad37 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_constant_time_compare@ +foreign import ccall safe "hs_bindgen_330aaca4963d5ac2" hs_bindgen_330aaca4963d5ac2 :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Returns 0 if x[0..len] == y[0..len], or otherwise -1 + +__C declaration:__ @botan_constant_time_compare@ + +__defined at:__ @botan\/ffi.h:178:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_constant_time_compare :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @x@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @y@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> IO FC.CInt +botan_constant_time_compare = + hs_bindgen_330aaca4963d5ac2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_same_mem@ +foreign import ccall safe "hs_bindgen_42b30b1a3c9e497b" hs_bindgen_42b30b1a3c9e497b :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Deprecated equivalent to botan_constant_time_compare + +__C declaration:__ @botan_same_mem@ + +__defined at:__ @botan\/ffi.h:184:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_same_mem :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @x@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @y@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> IO FC.CInt +botan_same_mem = hs_bindgen_42b30b1a3c9e497b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_scrub_mem@ +foreign import ccall safe "hs_bindgen_a3a8bc6ed3858273" hs_bindgen_a3a8bc6ed3858273 :: + Ptr.Ptr Void + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Clear out memory using a system specific approach to bypass elision by the compiler (currently using RtlSecureZeroMemory or tricks with volatile pointers). + +__C declaration:__ @botan_scrub_mem@ + +__defined at:__ @botan\/ffi.h:190:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_scrub_mem :: + Ptr.Ptr Void + -- ^ __C declaration:__ @mem@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @bytes@ + -> IO FC.CInt +botan_scrub_mem = hs_bindgen_a3a8bc6ed3858273 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_hex_encode@ +foreign import ccall safe "hs_bindgen_c442648c9d83cbdc" hs_bindgen_c442648c9d83cbdc :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| Perform hex encoding + + [__@x@ /(input)/__]: is some binary data + + [__@len@ /(input)/__]: length of x in bytes + + [__@out@ /(input)/__]: an array of at least x*2 bytes + + [__@flags@ /(input)/__]: flags out be upper or lower case? + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hex_encode@ + +__defined at:__ @botan\/ffi.h:202:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hex_encode :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@x@ /(input)/__]: is some binary data + + __C declaration:__ @x@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@len@ /(input)/__]: length of x in bytes + + __C declaration:__ @len@ + -} + -> Ptr.Ptr FC.CChar + {- ^ + + [__@out@ /(input)/__]: an array of at least x*2 bytes + + __C declaration:__ @out@ + -} + -> HsBindgen.Runtime.Prelude.Word32 + {- ^ + + [__@flags@ /(input)/__]: flags out be upper or lower case? + + __C declaration:__ @flags@ + -} + -> IO FC.CInt +botan_hex_encode = hs_bindgen_c442648c9d83cbdc + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_hex_decode@ +foreign import ccall safe "hs_bindgen_be7b347ca2eb5556" hs_bindgen_be7b347ca2eb5556 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Perform hex decoding + + [__@hex_str@ /(input)/__]: a string of hex chars (whitespace is ignored) + + [__@in_len@ /(input)/__]: the length of hex_str + + [__@out@ /(input)/__]: the output buffer should be at least strlen(hex_str)/2 bytes + + [__@out_len@ /(input)/__]: the size of the output buffer on input, set to the number of bytes written + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hex_decode@ + +__defined at:__ @botan\/ffi.h:212:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hex_decode :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@hex_str@ /(input)/__]: a string of hex chars (whitespace is ignored) + + __C declaration:__ @hex_str@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@in_len@ /(input)/__]: the length of hex_str + + __C declaration:__ @in_len@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: the output buffer should be at least strlen(hex_str)/2 bytes + + __C declaration:__ @out@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_len@ /(input)/__]: the size of the output buffer on input, set to the number of bytes written + + __C declaration:__ @out_len@ + -} + -> IO FC.CInt +botan_hex_decode = hs_bindgen_be7b347ca2eb5556 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_base64_encode@ +foreign import ccall safe "hs_bindgen_d41b505645be7a99" hs_bindgen_d41b505645be7a99 :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Perform base64 encoding + +__C declaration:__ @botan_base64_encode@ + +__defined at:__ @botan\/ffi.h:217:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_base64_encode :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @x@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> Ptr.Ptr FC.CChar + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_base64_encode = hs_bindgen_d41b505645be7a99 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_base64_decode@ +foreign import ccall safe "hs_bindgen_3e4d351a1382eb9e" hs_bindgen_3e4d351a1382eb9e :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Perform base64 decoding + +__C declaration:__ @botan_base64_decode@ + +__defined at:__ @botan\/ffi.h:223:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_base64_decode :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @base64_str@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @in_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_base64_decode = hs_bindgen_3e4d351a1382eb9e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_rng_init@ +foreign import ccall safe "hs_bindgen_909775f0ca837495" hs_bindgen_909775f0ca837495 :: + Ptr.Ptr Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Initialize a random number generator object + + [__@rng@ /(input)/__]: rng object + + [__@rng_type@ /(input)/__]: type of the rng, possible values: "system": system RNG "user": userspace RNG "user-threadsafe": userspace RNG, with internal locking "rdrand": directly read RDRAND Set rng_type to null to let the library choose some default. + +__C declaration:__ @botan_rng_init@ + +__defined at:__ @botan\/ffi.h:241:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_init :: + Ptr.Ptr Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: rng object + + __C declaration:__ @rng@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@rng_type@ /(input)/__]: type of the rng, possible values: "system": system RNG "user": userspace RNG "user-threadsafe": userspace RNG, with internal locking "rdrand": directly read RDRAND Set rng_type to null to let the library choose some default. + + __C declaration:__ @rng_type@ + -} + -> IO FC.CInt +botan_rng_init = hs_bindgen_909775f0ca837495 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_rng_init_custom@ +foreign import ccall safe "hs_bindgen_67981c827252903f" hs_bindgen_67981c827252903f :: + Ptr.Ptr Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Ptr.Ptr Void + -> Ptr.FunPtr ((Ptr.Ptr Void) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) + -> Ptr.FunPtr ((Ptr.Ptr Void) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) + -> Ptr.FunPtr ((Ptr.Ptr Void) -> IO ()) + -> IO FC.CInt + +{-| Initialize a custom random number generator from a set of callback functions + + [__@rng_out@ /(input)/__]: rng object to create + + [__@rng_name@ /(input)/__]: name of the rng + + [__@context@ /(input)/__]: An application-specific context passed to the callback functions + + [__@get_cb@ /(input)/__]: Callback for getting random bytes from the rng, return 0 for success + + [__@add_entropy_cb@ /(input)/__]: Callback for adding entropy to the rng, return 0 for success, may be NULL + + [__@destroy_cb@ /(input)/__]: Callback called when rng is destroyed, may be NULL + +__C declaration:__ @botan_rng_init_custom@ + +__defined at:__ @botan\/ffi.h:252:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_init_custom :: + Ptr.Ptr Botan_rng_t + {- ^ + + [__@rng_out@ /(input)/__]: rng object to create + + __C declaration:__ @rng_out@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@rng_name@ /(input)/__]: name of the rng + + __C declaration:__ @rng_name@ + -} + -> Ptr.Ptr Void + {- ^ + + [__@context@ /(input)/__]: An application-specific context passed to the callback functions + + __C declaration:__ @context@ + -} + -> Ptr.FunPtr ((Ptr.Ptr Void) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) + {- ^ + + [__@get_cb@ /(input)/__]: Callback for getting random bytes from the rng, return 0 for success + + __C declaration:__ @get_cb@ + -} + -> Ptr.FunPtr ((Ptr.Ptr Void) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) + {- ^ + + [__@add_entropy_cb@ /(input)/__]: Callback for adding entropy to the rng, return 0 for success, may be NULL + + __C declaration:__ @add_entropy_cb@ + -} + -> Ptr.FunPtr ((Ptr.Ptr Void) -> IO ()) + {- ^ + + [__@destroy_cb@ /(input)/__]: Callback called when rng is destroyed, may be NULL + + __C declaration:__ @destroy_cb@ + -} + -> IO FC.CInt +botan_rng_init_custom = hs_bindgen_67981c827252903f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_rng_get@ +foreign import ccall safe "hs_bindgen_053431bb48e8d6d2" hs_bindgen_053431bb48e8d6d2 :: + Botan_rng_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get random bytes from a random number generator + + [__@rng@ /(input)/__]: rng object + + [__@out@ /(input)/__]: output buffer of size out_len + + [__@out_len@ /(input)/__]: number of requested bytes + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_rng_get@ + +__defined at:__ @botan\/ffi.h:264:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_get :: + Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: rng object + + __C declaration:__ @rng@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: output buffer of size out_len + + __C declaration:__ @out@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_len@ /(input)/__]: number of requested bytes + + __C declaration:__ @out_len@ + -} + -> IO FC.CInt +botan_rng_get = hs_bindgen_053431bb48e8d6d2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_system_rng_get@ +foreign import ccall safe "hs_bindgen_7928d87012ce5480" hs_bindgen_7928d87012ce5480 :: + Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get random bytes from system random number generator + + [__@out@ /(input)/__]: output buffer of size out_len + + [__@out_len@ /(input)/__]: number of requested bytes + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_system_rng_get@ + +__defined at:__ @botan\/ffi.h:272:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_system_rng_get :: + Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: output buffer of size out_len + + __C declaration:__ @out@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_len@ /(input)/__]: number of requested bytes + + __C declaration:__ @out_len@ + -} + -> IO FC.CInt +botan_system_rng_get = hs_bindgen_7928d87012ce5480 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_rng_reseed@ +foreign import ccall safe "hs_bindgen_fc31392c38032c64" hs_bindgen_fc31392c38032c64 :: + Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Reseed a random number generator Uses the System_RNG as a seed generator. + + [__@rng@ /(input)/__]: rng object + + [__@bits@ /(input)/__]: number of bits to reseed with + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_rng_reseed@ + +__defined at:__ @botan\/ffi.h:282:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_reseed :: + Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: rng object + + __C declaration:__ @rng@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@bits@ /(input)/__]: number of bits to reseed with + + __C declaration:__ @bits@ + -} + -> IO FC.CInt +botan_rng_reseed = hs_bindgen_fc31392c38032c64 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_rng_reseed_from_rng@ +foreign import ccall safe "hs_bindgen_4793433e4aa91883" hs_bindgen_4793433e4aa91883 :: + Botan_rng_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Reseed a random number generator + + [__@rng@ /(input)/__]: rng object + + [__@source_rng@ /(input)/__]: the rng that will be read from + + [__@bits@ /(input)/__]: number of bits to reseed with + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_rng_reseed_from_rng@ + +__defined at:__ @botan\/ffi.h:292:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_reseed_from_rng :: + Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: rng object + + __C declaration:__ @rng@ + -} + -> Botan_rng_t + {- ^ + + [__@source_rng@ /(input)/__]: the rng that will be read from + + __C declaration:__ @source_rng@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@bits@ /(input)/__]: number of bits to reseed with + + __C declaration:__ @bits@ + -} + -> IO FC.CInt +botan_rng_reseed_from_rng = + hs_bindgen_4793433e4aa91883 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_rng_add_entropy@ +foreign import ccall safe "hs_bindgen_c49f81adc8578abc" hs_bindgen_c49f81adc8578abc :: + Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Add some seed material to a random number generator + + [__@rng@ /(input)/__]: rng object + + [__@entropy@ /(input)/__]: the data to add + + [__@entropy_len@ /(input)/__]: length of entropy buffer + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_rng_add_entropy@ + +__defined at:__ @botan\/ffi.h:304:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_add_entropy :: + Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: rng object + + __C declaration:__ @rng@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@entropy@ /(input)/__]: the data to add + + __C declaration:__ @entropy@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@entropy_len@ /(input)/__]: length of entropy buffer + + __C declaration:__ @entropy_len@ + -} + -> IO FC.CInt +botan_rng_add_entropy = hs_bindgen_c49f81adc8578abc + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_rng_destroy@ +foreign import ccall safe "hs_bindgen_036165e2d3a07ec2" hs_bindgen_036165e2d3a07ec2 :: + Botan_rng_t + -> IO FC.CInt + +{-| Frees all resources of the random number generator object + + [__@rng@ /(input)/__]: rng object + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_rng_destroy@ + +__defined at:__ @botan\/ffi.h:313:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_destroy :: + Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: rng object + + __C declaration:__ @rng@ + -} + -> IO FC.CInt +botan_rng_destroy = hs_bindgen_036165e2d3a07ec2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_hash_init@ +foreign import ccall safe "hs_bindgen_ff6bc9d12513d64c" hs_bindgen_ff6bc9d12513d64c :: + Ptr.Ptr Botan_hash_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| Initialize a hash function object + + [__@hash@ /(input)/__]: hash object + + [__@hash_name@ /(input)/__]: name of the hash function, e.g., "SHA-384" + + [__@flags@ /(input)/__]: should be 0 in current API revision, all other uses are reserved and return BOTAN_FFI_ERROR_BAD_FLAG + +__C declaration:__ @botan_hash_init@ + +__defined at:__ @botan\/ffi.h:327:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_init :: + Ptr.Ptr Botan_hash_t + {- ^ + + [__@hash@ /(input)/__]: hash object + + __C declaration:__ @hash@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@hash_name@ /(input)/__]: name of the hash function, e.g., "SHA-384" + + __C declaration:__ @hash_name@ + -} + -> HsBindgen.Runtime.Prelude.Word32 + {- ^ + + [__@flags@ /(input)/__]: should be 0 in current API revision, all other uses are reserved and return BOTAN_FFI_ERROR_BAD_FLAG + + __C declaration:__ @flags@ + -} + -> IO FC.CInt +botan_hash_init = hs_bindgen_ff6bc9d12513d64c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_hash_copy_state@ +foreign import ccall safe "hs_bindgen_941c1e4ff8d661c7" hs_bindgen_941c1e4ff8d661c7 :: + Ptr.Ptr Botan_hash_t + -> Botan_hash_t + -> IO FC.CInt + +{-| Copy the state of a hash function object + + [__@dest@ /(input)/__]: destination hash object + + [__@source@ /(input)/__]: source hash object + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_copy_state@ + +__defined at:__ @botan\/ffi.h:335:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_copy_state :: + Ptr.Ptr Botan_hash_t + {- ^ + + [__@dest@ /(input)/__]: destination hash object + + __C declaration:__ @dest@ + -} + -> Botan_hash_t + {- ^ + + [__@source@ /(input)/__]: source hash object + + __C declaration:__ @source@ + -} + -> IO FC.CInt +botan_hash_copy_state = hs_bindgen_941c1e4ff8d661c7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_hash_output_length@ +foreign import ccall safe "hs_bindgen_f1aaed8ec79cc4c4" hs_bindgen_f1aaed8ec79cc4c4 :: + Botan_hash_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Writes the output length of the hash function to *output_length + + [__@hash@ /(input)/__]: hash object + + [__@output_length@ /(input)/__]: output buffer to hold the hash function output length + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_output_length@ + +__defined at:__ @botan\/ffi.h:343:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_output_length :: + Botan_hash_t + {- ^ + + [__@hash@ /(input)/__]: hash object + + __C declaration:__ @hash@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@output_length@ /(input)/__]: output buffer to hold the hash function output length + + __C declaration:__ @output_length@ + -} + -> IO FC.CInt +botan_hash_output_length = + hs_bindgen_f1aaed8ec79cc4c4 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_hash_block_size@ +foreign import ccall safe "hs_bindgen_a9fd13e4951b4a08" hs_bindgen_a9fd13e4951b4a08 :: + Botan_hash_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Writes the block size of the hash function to *block_size + + [__@hash@ /(input)/__]: hash object + + [__@block_size@ /(input)/__]: output buffer to hold the hash function output length + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_block_size@ + +__defined at:__ @botan\/ffi.h:351:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_block_size :: + Botan_hash_t + {- ^ + + [__@hash@ /(input)/__]: hash object + + __C declaration:__ @hash@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@block_size@ /(input)/__]: output buffer to hold the hash function output length + + __C declaration:__ @block_size@ + -} + -> IO FC.CInt +botan_hash_block_size = hs_bindgen_a9fd13e4951b4a08 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_hash_update@ +foreign import ccall safe "hs_bindgen_e93e4f32f0c63e62" hs_bindgen_e93e4f32f0c63e62 :: + Botan_hash_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Send more input to the hash function + + [__@hash@ /(input)/__]: hash object + + [__@in@ /(input)/__]: input buffer + + [__@in_len@ /(input)/__]: number of bytes to read from the input buffer + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_update@ + +__defined at:__ @botan\/ffi.h:360:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_update :: + Botan_hash_t + {- ^ + + [__@hash@ /(input)/__]: hash object + + __C declaration:__ @hash@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @in'@ + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@in_len@ /(input)/__]: number of bytes to read from the input buffer + + __C declaration:__ @in_len@ + -} + -> IO FC.CInt +botan_hash_update = hs_bindgen_e93e4f32f0c63e62 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_hash_final@ +foreign import ccall safe "hs_bindgen_4e0ce560d34027ab" hs_bindgen_4e0ce560d34027ab :: + Botan_hash_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| Finalizes the hash computation and writes the output to out[0:botan_hash_output_length()] then reinitializes for computing another digest as if botan_hash_clear had been called. + + [__@hash@ /(input)/__]: hash object + + [__@out@ /(input)/__]: output buffer + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_final@ + +__defined at:__ @botan\/ffi.h:370:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_final :: + Botan_hash_t + {- ^ + + [__@hash@ /(input)/__]: hash object + + __C declaration:__ @hash@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: output buffer + + __C declaration:__ @out@ + -} + -> IO FC.CInt +botan_hash_final = hs_bindgen_4e0ce560d34027ab + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_hash_clear@ +foreign import ccall safe "hs_bindgen_f53ef3e3dfe732cf" hs_bindgen_f53ef3e3dfe732cf :: + Botan_hash_t + -> IO FC.CInt + +{-| Reinitializes the state of the hash computation. A hash can be computed (with update/final) immediately. + + [__@hash@ /(input)/__]: hash object + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_clear@ + +__defined at:__ @botan\/ffi.h:378:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_clear :: + Botan_hash_t + {- ^ + + [__@hash@ /(input)/__]: hash object + + __C declaration:__ @hash@ + -} + -> IO FC.CInt +botan_hash_clear = hs_bindgen_f53ef3e3dfe732cf + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_hash_destroy@ +foreign import ccall safe "hs_bindgen_ec9e77a1fe77bdec" hs_bindgen_ec9e77a1fe77bdec :: + Botan_hash_t + -> IO FC.CInt + +{-| Frees all resources of the hash object + + [__@hash@ /(input)/__]: hash object + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_hash_destroy@ + +__defined at:__ @botan\/ffi.h:385:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_destroy :: + Botan_hash_t + {- ^ + + [__@hash@ /(input)/__]: hash object + + __C declaration:__ @hash@ + -} + -> IO FC.CInt +botan_hash_destroy = hs_bindgen_ec9e77a1fe77bdec + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_hash_name@ +foreign import ccall safe "hs_bindgen_d1a9317dea1ca056" hs_bindgen_d1a9317dea1ca056 :: + Botan_hash_t + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get the name of this hash function + + [__@hash@ /(input)/__]: the object to read + + [__@name@ /(input)/__]: output buffer + + [__@name_len@ /(input)/__]: on input, the length of buffer, on success the number of bytes written + +__C declaration:__ @botan_hash_name@ + +__defined at:__ @botan\/ffi.h:393:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_name :: + Botan_hash_t + {- ^ + + [__@hash@ /(input)/__]: the object to read + + __C declaration:__ @hash@ + -} + -> Ptr.Ptr FC.CChar + {- ^ + + [__@name@ /(input)/__]: output buffer + + __C declaration:__ @name@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@name_len@ /(input)/__]: on input, the length of buffer, on success the number of bytes written + + __C declaration:__ @name_len@ + -} + -> IO FC.CInt +botan_hash_name = hs_bindgen_d1a9317dea1ca056 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mac_init@ +foreign import ccall safe "hs_bindgen_02c9f48f9d61b07d" hs_bindgen_02c9f48f9d61b07d :: + Ptr.Ptr Botan_mac_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| Initialize a message authentication code object + + [__@mac@ /(input)/__]: mac object + + [__@mac_name@ /(input)/__]: name of the hash function, e.g., "HMAC(SHA-384)" + + [__@flags@ /(input)/__]: should be 0 in current API revision, all other uses are reserved and return a negative value (error code) + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_init@ + +__defined at:__ @botan\/ffi.h:408:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_init :: + Ptr.Ptr Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: mac object + + __C declaration:__ @mac@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@mac_name@ /(input)/__]: name of the hash function, e.g., "HMAC(SHA-384)" + + __C declaration:__ @mac_name@ + -} + -> HsBindgen.Runtime.Prelude.Word32 + {- ^ + + [__@flags@ /(input)/__]: should be 0 in current API revision, all other uses are reserved and return a negative value (error code) + + __C declaration:__ @flags@ + -} + -> IO FC.CInt +botan_mac_init = hs_bindgen_02c9f48f9d61b07d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mac_output_length@ +foreign import ccall safe "hs_bindgen_6cd93e19f94321e4" hs_bindgen_6cd93e19f94321e4 :: + Botan_mac_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Writes the output length of the message authentication code to *output_length + + [__@mac@ /(input)/__]: mac object + + [__@output_length@ /(input)/__]: output buffer to hold the MAC output length + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_output_length@ + +__defined at:__ @botan\/ffi.h:416:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_output_length :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: mac object + + __C declaration:__ @mac@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@output_length@ /(input)/__]: output buffer to hold the MAC output length + + __C declaration:__ @output_length@ + -} + -> IO FC.CInt +botan_mac_output_length = hs_bindgen_6cd93e19f94321e4 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mac_set_key@ +foreign import ccall safe "hs_bindgen_b4509340adc7661a" hs_bindgen_b4509340adc7661a :: + Botan_mac_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Sets the key on the MAC + + [__@mac@ /(input)/__]: mac object + + [__@key@ /(input)/__]: buffer holding the key + + [__@key_len@ /(input)/__]: size of the key buffer in bytes + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_set_key@ + +__defined at:__ @botan\/ffi.h:425:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_set_key :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: mac object + + __C declaration:__ @mac@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@key@ /(input)/__]: buffer holding the key + + __C declaration:__ @key@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@key_len@ /(input)/__]: size of the key buffer in bytes + + __C declaration:__ @key_len@ + -} + -> IO FC.CInt +botan_mac_set_key = hs_bindgen_b4509340adc7661a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mac_set_nonce@ +foreign import ccall safe "hs_bindgen_1be33f404a9cd654" hs_bindgen_1be33f404a9cd654 :: + Botan_mac_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Sets the nonce on the MAC + + [__@mac@ /(input)/__]: mac object + + [__@nonce@ /(input)/__]: buffer holding the key + + [__@nonce_len@ /(input)/__]: size of the key buffer in bytes + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_set_nonce@ + +__defined at:__ @botan\/ffi.h:434:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_set_nonce :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: mac object + + __C declaration:__ @mac@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@nonce@ /(input)/__]: buffer holding the key + + __C declaration:__ @nonce@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@nonce_len@ /(input)/__]: size of the key buffer in bytes + + __C declaration:__ @nonce_len@ + -} + -> IO FC.CInt +botan_mac_set_nonce = hs_bindgen_1be33f404a9cd654 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mac_update@ +foreign import ccall safe "hs_bindgen_254e12bb3b6641c9" hs_bindgen_254e12bb3b6641c9 :: + Botan_mac_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Send more input to the message authentication code + + [__@mac@ /(input)/__]: mac object + + [__@buf@ /(input)/__]: input buffer + + [__@len@ /(input)/__]: number of bytes to read from the input buffer + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_update@ + +__defined at:__ @botan\/ffi.h:443:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_update :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: mac object + + __C declaration:__ @mac@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@buf@ /(input)/__]: input buffer + + __C declaration:__ @buf@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@len@ /(input)/__]: number of bytes to read from the input buffer + + __C declaration:__ @len@ + -} + -> IO FC.CInt +botan_mac_update = hs_bindgen_254e12bb3b6641c9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mac_final@ +foreign import ccall safe "hs_bindgen_96c87de4c17bfa3d" hs_bindgen_96c87de4c17bfa3d :: + Botan_mac_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| Finalizes the MAC computation and writes the output to out[0:botan_mac_output_length()] then reinitializes for computing another MAC as if botan_mac_clear had been called. + + [__@mac@ /(input)/__]: mac object + + [__@out@ /(input)/__]: output buffer + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_final@ + +__defined at:__ @botan\/ffi.h:453:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_final :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: mac object + + __C declaration:__ @mac@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: output buffer + + __C declaration:__ @out@ + -} + -> IO FC.CInt +botan_mac_final = hs_bindgen_96c87de4c17bfa3d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mac_clear@ +foreign import ccall safe "hs_bindgen_c71dbd81cf133e9d" hs_bindgen_c71dbd81cf133e9d :: + Botan_mac_t + -> IO FC.CInt + +{-| Reinitializes the state of the MAC computation. A MAC can be computed (with update/final) immediately. + + [__@mac@ /(input)/__]: mac object + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_clear@ + +__defined at:__ @botan\/ffi.h:461:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_clear :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: mac object + + __C declaration:__ @mac@ + -} + -> IO FC.CInt +botan_mac_clear = hs_bindgen_c71dbd81cf133e9d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mac_name@ +foreign import ccall safe "hs_bindgen_b446b3832df58772" hs_bindgen_b446b3832df58772 :: + Botan_mac_t + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get the name of this MAC + + [__@mac@ /(input)/__]: the object to read + + [__@name@ /(input)/__]: output buffer + + [__@name_len@ /(input)/__]: on input, the length of buffer, on success the number of bytes written + +__C declaration:__ @botan_mac_name@ + +__defined at:__ @botan\/ffi.h:469:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_name :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: the object to read + + __C declaration:__ @mac@ + -} + -> Ptr.Ptr FC.CChar + {- ^ + + [__@name@ /(input)/__]: output buffer + + __C declaration:__ @name@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@name_len@ /(input)/__]: on input, the length of buffer, on success the number of bytes written + + __C declaration:__ @name_len@ + -} + -> IO FC.CInt +botan_mac_name = hs_bindgen_b446b3832df58772 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mac_get_keyspec@ +foreign import ccall safe "hs_bindgen_da08a9e26b959b99" hs_bindgen_da08a9e26b959b99 :: + Botan_mac_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get the key length limits of this auth code + + [__@mac@ /(input)/__]: the object to read + + [__@out_minimum_keylength@ /(input)/__]: if non-NULL, will be set to minimum keylength of MAC + + [__@out_maximum_keylength@ /(input)/__]: if non-NULL, will be set to maximum keylength of MAC + + [__@out_keylength_modulo@ /(input)/__]: if non-NULL will be set to byte multiple of valid keys + +__C declaration:__ @botan_mac_get_keyspec@ + +__defined at:__ @botan\/ffi.h:478:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_get_keyspec :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: the object to read + + __C declaration:__ @mac@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_minimum_keylength@ /(input)/__]: if non-NULL, will be set to minimum keylength of MAC + + __C declaration:__ @out_minimum_keylength@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_maximum_keylength@ /(input)/__]: if non-NULL, will be set to maximum keylength of MAC + + __C declaration:__ @out_maximum_keylength@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_keylength_modulo@ /(input)/__]: if non-NULL will be set to byte multiple of valid keys + + __C declaration:__ @out_keylength_modulo@ + -} + -> IO FC.CInt +botan_mac_get_keyspec = hs_bindgen_da08a9e26b959b99 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mac_destroy@ +foreign import ccall safe "hs_bindgen_17fb2bd36458b7cd" hs_bindgen_17fb2bd36458b7cd :: + Botan_mac_t + -> IO FC.CInt + +{-| Frees all resources of the MAC object + + [__@mac@ /(input)/__]: mac object + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_mac_destroy@ + +__defined at:__ @botan\/ffi.h:488:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_destroy :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: mac object + + __C declaration:__ @mac@ + -} + -> IO FC.CInt +botan_mac_destroy = hs_bindgen_17fb2bd36458b7cd + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_cipher_init@ +foreign import ccall safe "hs_bindgen_b94fa71ea29b6074" hs_bindgen_b94fa71ea29b6074 :: + Ptr.Ptr Botan_cipher_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| Initialize a cipher object + +__C declaration:__ @botan_cipher_init@ + +__defined at:__ @botan\/ffi.h:502:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_init :: + Ptr.Ptr Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @name@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_cipher_init = hs_bindgen_b94fa71ea29b6074 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_cipher_name@ +foreign import ccall safe "hs_bindgen_86cf6647ad774185" hs_bindgen_86cf6647ad774185 :: + Botan_cipher_t + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Return the name of the cipher object + +__C declaration:__ @botan_cipher_name@ + +__defined at:__ @botan\/ffi.h:507:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_name :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> Ptr.Ptr FC.CChar + -- ^ __C declaration:__ @name@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @name_len@ + -> IO FC.CInt +botan_cipher_name = hs_bindgen_86cf6647ad774185 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_cipher_output_length@ +foreign import ccall safe "hs_bindgen_6c41cc24ad9cb49f" hs_bindgen_6c41cc24ad9cb49f :: + Botan_cipher_t + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Return the output length of this cipher, for a particular input length. + +__C declaration:__ @botan_cipher_output_length@ + +__defined at:__ @botan\/ffi.h:512:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_output_length :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @in_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_cipher_output_length = + hs_bindgen_6c41cc24ad9cb49f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_cipher_valid_nonce_length@ +foreign import ccall safe "hs_bindgen_559c0a3583be5269" hs_bindgen_559c0a3583be5269 :: + Botan_cipher_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Return if the specified nonce length is valid for this cipher + +__C declaration:__ @botan_cipher_valid_nonce_length@ + +__defined at:__ @botan\/ffi.h:517:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_valid_nonce_length :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @nl@ + -> IO FC.CInt +botan_cipher_valid_nonce_length = + hs_bindgen_559c0a3583be5269 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_cipher_get_tag_length@ +foreign import ccall safe "hs_bindgen_ff336150659632a3" hs_bindgen_ff336150659632a3 :: + Botan_cipher_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get the tag length of the cipher (0 for non-AEAD modes) + +__C declaration:__ @botan_cipher_get_tag_length@ + +__defined at:__ @botan\/ffi.h:522:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_get_tag_length :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @tag_size@ + -> IO FC.CInt +botan_cipher_get_tag_length = + hs_bindgen_ff336150659632a3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_cipher_get_default_nonce_length@ +foreign import ccall safe "hs_bindgen_4710c462ae31371d" hs_bindgen_4710c462ae31371d :: + Botan_cipher_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get the default nonce length of this cipher + +__C declaration:__ @botan_cipher_get_default_nonce_length@ + +__defined at:__ @botan\/ffi.h:527:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_get_default_nonce_length :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @nl@ + -> IO FC.CInt +botan_cipher_get_default_nonce_length = + hs_bindgen_4710c462ae31371d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_cipher_get_update_granularity@ +foreign import ccall safe "hs_bindgen_5d8016303f1b4180" hs_bindgen_5d8016303f1b4180 :: + Botan_cipher_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Return the update granularity of the cipher; botan_cipher_update must be called with blocks of this size, except for the final. + +__C declaration:__ @botan_cipher_get_update_granularity@ + +__defined at:__ @botan\/ffi.h:533:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_get_update_granularity :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ug@ + -> IO FC.CInt +botan_cipher_get_update_granularity = + hs_bindgen_5d8016303f1b4180 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_cipher_get_ideal_update_granularity@ +foreign import ccall safe "hs_bindgen_79b0139d6f1eca6d" hs_bindgen_79b0139d6f1eca6d :: + Botan_cipher_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Return the ideal update granularity of the cipher. This is some multiple of the update granularity, reflecting possibilities for optimization. + +__C declaration:__ @botan_cipher_get_ideal_update_granularity@ + +__defined at:__ @botan\/ffi.h:539:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_get_ideal_update_granularity :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ug@ + -> IO FC.CInt +botan_cipher_get_ideal_update_granularity = + hs_bindgen_79b0139d6f1eca6d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_cipher_query_keylen@ +foreign import ccall safe "hs_bindgen_05e27a343f523da3" hs_bindgen_05e27a343f523da3 :: + Botan_cipher_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get information about the key lengths. Prefer botan_cipher_get_keyspec + +__C declaration:__ @botan_cipher_query_keylen@ + +__defined at:__ @botan\/ffi.h:544:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_query_keylen :: + Botan_cipher_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_minimum_keylength@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_maximum_keylength@ + -> IO FC.CInt +botan_cipher_query_keylen = + hs_bindgen_05e27a343f523da3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_cipher_get_keyspec@ +foreign import ccall safe "hs_bindgen_5ffeb09a78fdacfd" hs_bindgen_5ffeb09a78fdacfd :: + Botan_cipher_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get information about the supported key lengths. + +__C declaration:__ @botan_cipher_get_keyspec@ + +__defined at:__ @botan\/ffi.h:551:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_get_keyspec :: + Botan_cipher_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @min_keylen@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @max_keylen@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @mod_keylen@ + -> IO FC.CInt +botan_cipher_get_keyspec = + hs_bindgen_5ffeb09a78fdacfd + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_cipher_set_key@ +foreign import ccall safe "hs_bindgen_1e222b754990c5a0" hs_bindgen_1e222b754990c5a0 :: + Botan_cipher_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Set the key for this cipher object + +__C declaration:__ @botan_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:559:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_set_key :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> IO FC.CInt +botan_cipher_set_key = hs_bindgen_1e222b754990c5a0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_cipher_reset@ +foreign import ccall safe "hs_bindgen_0f8089a35975c233" hs_bindgen_0f8089a35975c233 :: + Botan_cipher_t + -> IO FC.CInt + +{-| Reset the message specific state for this cipher. Without resetting the keys, this resets the nonce, and any state associated with any message bits that have been processed so far. + + It is conceptually equivalent to calling botan_cipher_clear followed by botan_cipher_set_key with the original key. + +__C declaration:__ @botan_cipher_reset@ + +__defined at:__ @botan\/ffi.h:570:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_reset :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_reset = hs_bindgen_0f8089a35975c233 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_cipher_set_associated_data@ +foreign import ccall safe "hs_bindgen_c4083ce08ac3225f" hs_bindgen_c4083ce08ac3225f :: + Botan_cipher_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Set the associated data. Will fail if cipher is not an AEAD + +__C declaration:__ @botan_cipher_set_associated_data@ + +__defined at:__ @botan\/ffi.h:575:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_set_associated_data :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @ad@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ad_len@ + -> IO FC.CInt +botan_cipher_set_associated_data = + hs_bindgen_c4083ce08ac3225f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_cipher_start@ +foreign import ccall safe "hs_bindgen_d5cadb35fe58e484" hs_bindgen_d5cadb35fe58e484 :: + Botan_cipher_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Begin processing a new message using the provided nonce + +__C declaration:__ @botan_cipher_start@ + +__defined at:__ @botan\/ffi.h:581:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_start :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @nonce@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @nonce_len@ + -> IO FC.CInt +botan_cipher_start = hs_bindgen_d5cadb35fe58e484 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_cipher_update@ +foreign import ccall safe "hs_bindgen_80e699fe3e54e571" hs_bindgen_80e699fe3e54e571 :: + Botan_cipher_t + -> HsBindgen.Runtime.Prelude.Word32 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_cipher_update' +-} +botan_cipher_update_wrapper :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @output@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @output_size@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @output_written@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @input_bytes@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @input_size@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @input_consumed@ + -> IO FC.CInt +botan_cipher_update_wrapper = + hs_bindgen_80e699fe3e54e571 + +{-| Encrypt some data + +__C declaration:__ @botan_cipher_update@ + +__defined at:__ @botan\/ffi.h:589:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_update :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @output@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @output_size@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @output_written@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @input_bytes@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @input_size@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @input_consumed@ + -> IO FC.CInt +botan_cipher_update = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + HsBindgen.Runtime.IncompleteArray.withPtr x5 (\ptr8 -> + hs_bindgen_80e699fe3e54e571 x0 x1 x2 x3 x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x6 x7) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_cipher_clear@ +foreign import ccall safe "hs_bindgen_01676cf4507c73d2" hs_bindgen_01676cf4507c73d2 :: + Botan_cipher_t + -> IO FC.CInt + +{-| Reset the key, nonce, AD and all other state on this cipher object + +__C declaration:__ @botan_cipher_clear@ + +__defined at:__ @botan\/ffi.h:601:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_clear :: + Botan_cipher_t + -- ^ __C declaration:__ @hash@ + -> IO FC.CInt +botan_cipher_clear = hs_bindgen_01676cf4507c73d2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_cipher_destroy@ +foreign import ccall safe "hs_bindgen_282bfe5e68084474" hs_bindgen_282bfe5e68084474 :: + Botan_cipher_t + -> IO FC.CInt + +{-| Destroy the cipher object + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_cipher_destroy@ + +__defined at:__ @botan\/ffi.h:607:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_destroy :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_destroy = hs_bindgen_282bfe5e68084474 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pbkdf@ +foreign import ccall safe "hs_bindgen_d053ea7569b9e715" hs_bindgen_d053ea7569b9e715 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pbkdf' +-} +botan_pbkdf_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @pbkdf_algo@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @iterations@ + -> IO FC.CInt +botan_pbkdf_wrapper = hs_bindgen_d053ea7569b9e715 + +{-| __C declaration:__ @botan_pbkdf@ + + __defined at:__ @botan\/ffi.h:626:1@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pbkdf :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @pbkdf_algo@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @iterations@ + -> IO FC.CInt +botan_pbkdf = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + HsBindgen.Runtime.IncompleteArray.withPtr x4 (\ptr7 -> + hs_bindgen_d053ea7569b9e715 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x5 x6) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pbkdf_timed@ +foreign import ccall safe "hs_bindgen_2b85c54ddb8bbd10" hs_bindgen_2b85c54ddb8bbd10 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pbkdf_timed' +-} +botan_pbkdf_timed_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@pbkdf_algo@ /(input)/__]: PBKDF algorithm, e.g., "PBKDF2(SHA-256)" + + __C declaration:__ @pbkdf_algo@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: buffer to store the derived key, must be of out_len bytes + + __C declaration:__ @out@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_len@ /(input)/__]: the desired length of the key to produce + + __C declaration:__ @out_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@passphrase@ /(input)/__]: the password to derive the key from + + __C declaration:__ @passphrase@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@salt@ /(input)/__]: a randomly chosen salt + + __C declaration:__ @salt@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@salt_len@ /(input)/__]: length of salt in bytes + + __C declaration:__ @salt_len@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@milliseconds_to_run@ /(input)/__]: if iterations is zero, then instead the PBKDF is run until milliseconds_to_run milliseconds has passed + + __C declaration:__ @milliseconds_to_run@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_iterations_used@ /(input)/__]: set to the number iterations executed + + __C declaration:__ @out_iterations_used@ + -} + -> IO FC.CInt +botan_pbkdf_timed_wrapper = + hs_bindgen_2b85c54ddb8bbd10 + +{-| Derive a key from a passphrase, running until msec time has elapsed. + + [__@pbkdf_algo@ /(input)/__]: PBKDF algorithm, e.g., "PBKDF2(SHA-256)" + + [__@out@ /(input)/__]: buffer to store the derived key, must be of out_len bytes + + [__@out_len@ /(input)/__]: the desired length of the key to produce + + [__@passphrase@ /(input)/__]: the password to derive the key from + + [__@salt@ /(input)/__]: a randomly chosen salt + + [__@salt_len@ /(input)/__]: length of salt in bytes + + [__@milliseconds_to_run@ /(input)/__]: if iterations is zero, then instead the PBKDF is run until milliseconds_to_run milliseconds has passed + + [__@out_iterations_used@ /(input)/__]: set to the number iterations executed + + __returns:__ 0 on success, a negative value on failure + + Deprecated: use + + botan_pwdhash_timed(pbkdf_algo, static_cast (ms_to_run), iterations_used, nullptr, nullptr, out, out_len, password, 0, salt, salt_len); + +__C declaration:__ @botan_pbkdf_timed@ + +__defined at:__ @botan\/ffi.h:656:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pbkdf_timed :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@pbkdf_algo@ /(input)/__]: PBKDF algorithm, e.g., "PBKDF2(SHA-256)" + + __C declaration:__ @pbkdf_algo@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: buffer to store the derived key, must be of out_len bytes + + __C declaration:__ @out@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_len@ /(input)/__]: the desired length of the key to produce + + __C declaration:__ @out_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@passphrase@ /(input)/__]: the password to derive the key from + + __C declaration:__ @passphrase@ + -} + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@salt@ /(input)/__]: a randomly chosen salt + + __C declaration:__ @salt@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@salt_len@ /(input)/__]: length of salt in bytes + + __C declaration:__ @salt_len@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@milliseconds_to_run@ /(input)/__]: if iterations is zero, then instead the PBKDF is run until milliseconds_to_run milliseconds has passed + + __C declaration:__ @milliseconds_to_run@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_iterations_used@ /(input)/__]: set to the number iterations executed + + __C declaration:__ @out_iterations_used@ + -} + -> IO FC.CInt +botan_pbkdf_timed = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + HsBindgen.Runtime.IncompleteArray.withPtr x4 (\ptr8 -> + hs_bindgen_2b85c54ddb8bbd10 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pwdhash@ +foreign import ccall safe "hs_bindgen_a7b5d2e50d0ca71b" hs_bindgen_a7b5d2e50d0ca71b :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pwdhash' +-} +botan_pwdhash_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @algo@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param1@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param2@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param3@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @passphrase_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> IO FC.CInt +botan_pwdhash_wrapper = hs_bindgen_a7b5d2e50d0ca71b + +{-| __C declaration:__ @botan_pwdhash@ + + __defined at:__ @botan\/ffi.h:679:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pwdhash :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @algo@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param1@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param2@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param3@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @passphrase_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> IO FC.CInt +botan_pwdhash = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + \x8 -> + \x9 -> + HsBindgen.Runtime.IncompleteArray.withPtr x8 (\ptr10 -> + hs_bindgen_a7b5d2e50d0ca71b x0 x1 x2 x3 x4 x5 x6 x7 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x9) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pwdhash_timed@ +foreign import ccall safe "hs_bindgen_3cfa05e4c6151fa0" hs_bindgen_3cfa05e4c6151fa0 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pwdhash_timed' +-} +botan_pwdhash_timed_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @algo@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @msec@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param1@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param2@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param3@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @passphrase_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> IO FC.CInt +botan_pwdhash_timed_wrapper = + hs_bindgen_3cfa05e4c6151fa0 + +{-| __C declaration:__ @botan_pwdhash_timed@ + + __defined at:__ @botan\/ffi.h:707:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pwdhash_timed :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @algo@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @msec@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param1@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param2@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param3@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @passphrase_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> IO FC.CInt +botan_pwdhash_timed = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + \x8 -> + \x9 -> + \x10 -> + HsBindgen.Runtime.IncompleteArray.withPtr x9 (\ptr11 -> + hs_bindgen_3cfa05e4c6151fa0 x0 x1 x2 x3 x4 x5 x6 x7 x8 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr11) x10) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_scrypt@ +foreign import ccall safe "hs_bindgen_0f0aec9e017d37a2" hs_bindgen_0f0aec9e017d37a2 :: + Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_scrypt' +-} +botan_scrypt_wrapper :: + Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @n@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @r@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @p@ + -> IO FC.CInt +botan_scrypt_wrapper = hs_bindgen_0f0aec9e017d37a2 + +{-| Derive a key using scrypt Deprecated; use botan_pwdhash("Scrypt", N, r, p, out, out_len, password, 0, salt, salt_len); + +__C declaration:__ @botan_scrypt@ + +__defined at:__ @botan\/ffi.h:727:1@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_scrypt :: + Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @n@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @r@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @p@ + -> IO FC.CInt +botan_scrypt = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + HsBindgen.Runtime.IncompleteArray.withPtr x3 (\ptr8 -> + hs_bindgen_0f0aec9e017d37a2 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_kdf@ +foreign import ccall safe "hs_bindgen_feb8d9539a40495d" hs_bindgen_feb8d9539a40495d :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_kdf' +-} +botan_kdf_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@kdf_algo@ /(input)/__]: KDF algorithm, e.g., "SP800-56C" + + __C declaration:__ @kdf_algo@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: buffer holding the derived key, must be of length out_len + + __C declaration:__ @out@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_len@ /(input)/__]: the desired output length in bytes + + __C declaration:__ @out_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@secret@ /(input)/__]: the secret input + + __C declaration:__ @secret@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@secret_len@ /(input)/__]: size of secret in bytes + + __C declaration:__ @secret_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@salt@ /(input)/__]: a diversifier + + __C declaration:__ @salt@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@salt_len@ /(input)/__]: size of salt in bytes + + __C declaration:__ @salt_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@label@ /(input)/__]: purpose for the derived keying material + + __C declaration:__ @label@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@label_len@ /(input)/__]: size of label in bytes + + __C declaration:__ @label_len@ + -} + -> IO FC.CInt +botan_kdf_wrapper = hs_bindgen_feb8d9539a40495d + +{-| Derive a key + + [__@kdf_algo@ /(input)/__]: KDF algorithm, e.g., "SP800-56C" + + [__@out@ /(input)/__]: buffer holding the derived key, must be of length out_len + + [__@out_len@ /(input)/__]: the desired output length in bytes + + [__@secret@ /(input)/__]: the secret input + + [__@secret_len@ /(input)/__]: size of secret in bytes + + [__@salt@ /(input)/__]: a diversifier + + [__@salt_len@ /(input)/__]: size of salt in bytes + + [__@label@ /(input)/__]: purpose for the derived keying material + + [__@label_len@ /(input)/__]: size of label in bytes + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_kdf@ + +__defined at:__ @botan\/ffi.h:745:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_kdf :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@kdf_algo@ /(input)/__]: KDF algorithm, e.g., "SP800-56C" + + __C declaration:__ @kdf_algo@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: buffer holding the derived key, must be of length out_len + + __C declaration:__ @out@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_len@ /(input)/__]: the desired output length in bytes + + __C declaration:__ @out_len@ + -} + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@secret@ /(input)/__]: the secret input + + __C declaration:__ @secret@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@secret_len@ /(input)/__]: size of secret in bytes + + __C declaration:__ @secret_len@ + -} + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@salt@ /(input)/__]: a diversifier + + __C declaration:__ @salt@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@salt_len@ /(input)/__]: size of salt in bytes + + __C declaration:__ @salt_len@ + -} + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@label@ /(input)/__]: purpose for the derived keying material + + __C declaration:__ @label@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@label_len@ /(input)/__]: size of label in bytes + + __C declaration:__ @label_len@ + -} + -> IO FC.CInt +botan_kdf = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + \x8 -> + HsBindgen.Runtime.IncompleteArray.withPtr x7 (\ptr9 -> + HsBindgen.Runtime.IncompleteArray.withPtr x5 (\ptr10 -> + HsBindgen.Runtime.IncompleteArray.withPtr x3 (\ptr11 -> + hs_bindgen_feb8d9539a40495d x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr11) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x6 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x8))) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_block_cipher_init@ +foreign import ccall safe "hs_bindgen_ae9b385452abcd31" hs_bindgen_ae9b385452abcd31 :: + Ptr.Ptr Botan_block_cipher_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Initialize a block cipher object + +__C declaration:__ @botan_block_cipher_init@ + +__defined at:__ @botan\/ffi.h:759:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_init :: + Ptr.Ptr Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cipher_name@ + -> IO FC.CInt +botan_block_cipher_init = hs_bindgen_ae9b385452abcd31 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_block_cipher_destroy@ +foreign import ccall safe "hs_bindgen_c2f35e0b47ffbd9c" hs_bindgen_c2f35e0b47ffbd9c :: + Botan_block_cipher_t + -> IO FC.CInt + +{-| Destroy a block cipher object + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_block_cipher_destroy@ + +__defined at:__ @botan\/ffi.h:766:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_destroy :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> IO FC.CInt +botan_block_cipher_destroy = + hs_bindgen_c2f35e0b47ffbd9c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_block_cipher_clear@ +foreign import ccall safe "hs_bindgen_ecf871214f977200" hs_bindgen_ecf871214f977200 :: + Botan_block_cipher_t + -> IO FC.CInt + +{-| Reinitializes the block cipher + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_block_cipher_clear@ + +__defined at:__ @botan\/ffi.h:772:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_clear :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> IO FC.CInt +botan_block_cipher_clear = + hs_bindgen_ecf871214f977200 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_block_cipher_set_key@ +foreign import ccall safe "hs_bindgen_d7e0b74e7bb4fd0f" hs_bindgen_d7e0b74e7bb4fd0f :: + Botan_block_cipher_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_block_cipher_set_key' +-} +botan_block_cipher_set_key_wrapper :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> IO FC.CInt +botan_block_cipher_set_key_wrapper = + hs_bindgen_d7e0b74e7bb4fd0f + +{-| Set the key for a block cipher instance + +__C declaration:__ @botan_block_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:777:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_set_key :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> IO FC.CInt +botan_block_cipher_set_key = + \x0 -> + \x1 -> + \x2 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr3 -> + hs_bindgen_d7e0b74e7bb4fd0f x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_block_cipher_block_size@ +foreign import ccall safe "hs_bindgen_b9be48f598a3be33" hs_bindgen_b9be48f598a3be33 :: + Botan_block_cipher_t + -> IO FC.CInt + +{-| Return the positive block size of this block cipher, or negative to indicate an error + +__C declaration:__ @botan_block_cipher_block_size@ + +__defined at:__ @botan\/ffi.h:784:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_block_size :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> IO FC.CInt +botan_block_cipher_block_size = + hs_bindgen_b9be48f598a3be33 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_block_cipher_encrypt_blocks@ +foreign import ccall safe "hs_bindgen_be126fde12579275" hs_bindgen_be126fde12579275 :: + Botan_block_cipher_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_block_cipher_encrypt_blocks' +-} +botan_block_cipher_encrypt_blocks_wrapper :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @in'@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @blocks@ + -> IO FC.CInt +botan_block_cipher_encrypt_blocks_wrapper = + hs_bindgen_be126fde12579275 + +{-| Encrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_encrypt_blocks@ + +__defined at:__ @botan\/ffi.h:789:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_encrypt_blocks :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @in'@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @blocks@ + -> IO FC.CInt +botan_block_cipher_encrypt_blocks = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr4 -> + hs_bindgen_be126fde12579275 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_block_cipher_decrypt_blocks@ +foreign import ccall safe "hs_bindgen_6cb68231a3025630" hs_bindgen_6cb68231a3025630 :: + Botan_block_cipher_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_block_cipher_decrypt_blocks' +-} +botan_block_cipher_decrypt_blocks_wrapper :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @in'@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @blocks@ + -> IO FC.CInt +botan_block_cipher_decrypt_blocks_wrapper = + hs_bindgen_6cb68231a3025630 + +{-| Decrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_decrypt_blocks@ + +__defined at:__ @botan\/ffi.h:797:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_decrypt_blocks :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @in'@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @blocks@ + -> IO FC.CInt +botan_block_cipher_decrypt_blocks = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr4 -> + hs_bindgen_6cb68231a3025630 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_block_cipher_name@ +foreign import ccall safe "hs_bindgen_1cf3557182eea51b" hs_bindgen_1cf3557182eea51b :: + Botan_block_cipher_t + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get the name of this block cipher + + [__@cipher@ /(input)/__]: the object to read + + [__@name@ /(input)/__]: output buffer + + [__@name_len@ /(input)/__]: on input, the length of buffer, on success the number of bytes written + +__C declaration:__ @botan_block_cipher_name@ + +__defined at:__ @botan\/ffi.h:808:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_name :: + Botan_block_cipher_t + {- ^ + + [__@cipher@ /(input)/__]: the object to read + + __C declaration:__ @cipher@ + -} + -> Ptr.Ptr FC.CChar + {- ^ + + [__@name@ /(input)/__]: output buffer + + __C declaration:__ @name@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@name_len@ /(input)/__]: on input, the length of buffer, on success the number of bytes written + + __C declaration:__ @name_len@ + -} + -> IO FC.CInt +botan_block_cipher_name = hs_bindgen_1cf3557182eea51b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_block_cipher_get_keyspec@ +foreign import ccall safe "hs_bindgen_c136b8399f077589" hs_bindgen_c136b8399f077589 :: + Botan_block_cipher_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get the key length limits of this block cipher + + [__@cipher@ /(input)/__]: the object to read + + [__@out_minimum_keylength@ /(input)/__]: if non-NULL, will be set to minimum keylength of cipher + + [__@out_maximum_keylength@ /(input)/__]: if non-NULL, will be set to maximum keylength of cipher + + [__@out_keylength_modulo@ /(input)/__]: if non-NULL will be set to byte multiple of valid keys + +__C declaration:__ @botan_block_cipher_get_keyspec@ + +__defined at:__ @botan\/ffi.h:819:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_get_keyspec :: + Botan_block_cipher_t + {- ^ + + [__@cipher@ /(input)/__]: the object to read + + __C declaration:__ @cipher@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_minimum_keylength@ /(input)/__]: if non-NULL, will be set to minimum keylength of cipher + + __C declaration:__ @out_minimum_keylength@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_maximum_keylength@ /(input)/__]: if non-NULL, will be set to maximum keylength of cipher + + __C declaration:__ @out_maximum_keylength@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_keylength_modulo@ /(input)/__]: if non-NULL will be set to byte multiple of valid keys + + __C declaration:__ @out_keylength_modulo@ + -} + -> IO FC.CInt +botan_block_cipher_get_keyspec = + hs_bindgen_c136b8399f077589 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_init@ +foreign import ccall safe "hs_bindgen_6efe95e83f740e4f" hs_bindgen_6efe95e83f740e4f :: + Ptr.Ptr Botan_mp_t + -> IO FC.CInt + +{-| Initialize an MPI + +__C declaration:__ @botan_mp_init@ + +__defined at:__ @botan\/ffi.h:832:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_init :: + Ptr.Ptr Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_init = hs_bindgen_6efe95e83f740e4f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_destroy@ +foreign import ccall safe "hs_bindgen_0127b609c9c1cbcd" hs_bindgen_0127b609c9c1cbcd :: + Botan_mp_t + -> IO FC.CInt + +{-| Destroy (deallocate) an MPI + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_mp_destroy@ + +__defined at:__ @botan\/ffi.h:838:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_destroy :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_destroy = hs_bindgen_0127b609c9c1cbcd + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_to_hex@ +foreign import ccall safe "hs_bindgen_123e0a2761d8400f" hs_bindgen_123e0a2761d8400f :: + Botan_mp_t + -> Ptr.Ptr FC.CChar + -> IO FC.CInt + +{-| Convert the MPI to a hex string. Writes botan_mp_num_bytes(mp)*2 + 1 bytes + +__C declaration:__ @botan_mp_to_hex@ + +__defined at:__ @botan\/ffi.h:843:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_to_hex :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> Ptr.Ptr FC.CChar + -- ^ __C declaration:__ @out@ + -> IO FC.CInt +botan_mp_to_hex = hs_bindgen_123e0a2761d8400f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_to_str@ +foreign import ccall safe "hs_bindgen_d1a74858ac4d995f" hs_bindgen_d1a74858ac4d995f :: + Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Convert the MPI to a string. Currently base == 10 and base == 16 are supported. + +__C declaration:__ @botan_mp_to_str@ + +__defined at:__ @botan\/ffi.h:848:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_to_str :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @base@ + -> Ptr.Ptr FC.CChar + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_mp_to_str = hs_bindgen_d1a74858ac4d995f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_clear@ +foreign import ccall safe "hs_bindgen_5755e038138cd939" hs_bindgen_5755e038138cd939 :: + Botan_mp_t + -> IO FC.CInt + +{-| Set the MPI to zero + +__C declaration:__ @botan_mp_clear@ + +__defined at:__ @botan\/ffi.h:853:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_clear = hs_bindgen_5755e038138cd939 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_set_from_int@ +foreign import ccall safe "hs_bindgen_316631d7caf42981" hs_bindgen_316631d7caf42981 :: + Botan_mp_t + -> FC.CInt + -> IO FC.CInt + +{-| Set the MPI value from an int + +__C declaration:__ @botan_mp_set_from_int@ + +__defined at:__ @botan\/ffi.h:858:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_set_from_int :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> FC.CInt + -- ^ __C declaration:__ @initial_value@ + -> IO FC.CInt +botan_mp_set_from_int = hs_bindgen_316631d7caf42981 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_set_from_mp@ +foreign import ccall safe "hs_bindgen_7708c83ae53b689d" hs_bindgen_7708c83ae53b689d :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| Set the MPI value from another MP object + +__C declaration:__ @botan_mp_set_from_mp@ + +__defined at:__ @botan\/ffi.h:863:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_set_from_mp :: + Botan_mp_t + -- ^ __C declaration:__ @dest@ + -> Botan_mp_t + -- ^ __C declaration:__ @source@ + -> IO FC.CInt +botan_mp_set_from_mp = hs_bindgen_7708c83ae53b689d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_set_from_str@ +foreign import ccall safe "hs_bindgen_ebd93ace17d55c73" hs_bindgen_ebd93ace17d55c73 :: + Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Set the MPI value from a string + +__C declaration:__ @botan_mp_set_from_str@ + +__defined at:__ @botan\/ffi.h:868:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_set_from_str :: + Botan_mp_t + -- ^ __C declaration:__ @dest@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @str@ + -> IO FC.CInt +botan_mp_set_from_str = hs_bindgen_ebd93ace17d55c73 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_set_from_radix_str@ +foreign import ccall safe "hs_bindgen_e336d62d74a98dd0" hs_bindgen_e336d62d74a98dd0 :: + Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Set the MPI value from a string with arbitrary radix. For arbitrary being 10 or 16. + +__C declaration:__ @botan_mp_set_from_radix_str@ + +__defined at:__ @botan\/ffi.h:874:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_set_from_radix_str :: + Botan_mp_t + -- ^ __C declaration:__ @dest@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @str@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @radix@ + -> IO FC.CInt +botan_mp_set_from_radix_str = + hs_bindgen_e336d62d74a98dd0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_num_bits@ +foreign import ccall safe "hs_bindgen_f532de35da4cc3ee" hs_bindgen_f532de35da4cc3ee :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Return the number of significant bits in the MPI + +__C declaration:__ @botan_mp_num_bits@ + +__defined at:__ @botan\/ffi.h:879:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_num_bits :: + Botan_mp_t + -- ^ __C declaration:__ @n@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @bits@ + -> IO FC.CInt +botan_mp_num_bits = hs_bindgen_f532de35da4cc3ee + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_num_bytes@ +foreign import ccall safe "hs_bindgen_03636a27e4aa0ef5" hs_bindgen_03636a27e4aa0ef5 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Return the number of significant bytes in the MPI + +__C declaration:__ @botan_mp_num_bytes@ + +__defined at:__ @botan\/ffi.h:884:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_num_bytes :: + Botan_mp_t + -- ^ __C declaration:__ @n@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @bytes@ + -> IO FC.CInt +botan_mp_num_bytes = hs_bindgen_03636a27e4aa0ef5 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_to_bin@ +foreign import ccall safe "hs_bindgen_2120c85857deee14" hs_bindgen_2120c85857deee14 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_bin@ + + __defined at:__ @botan\/ffi.h:889:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_to_bin :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @vec@ + -> IO FC.CInt +botan_mp_to_bin = hs_bindgen_2120c85857deee14 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_from_bin@ +foreign import ccall safe "hs_bindgen_1acee650c935dc16" hs_bindgen_1acee650c935dc16 :: + Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_mp_from_bin' +-} +botan_mp_from_bin_wrapper :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @vec@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @vec_len@ + -> IO FC.CInt +botan_mp_from_bin_wrapper = + hs_bindgen_1acee650c935dc16 + +{-| __C declaration:__ @botan_mp_from_bin@ + + __defined at:__ @botan\/ffi.h:894:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_from_bin :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @vec@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @vec_len@ + -> IO FC.CInt +botan_mp_from_bin = + \x0 -> + \x1 -> + \x2 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr3 -> + hs_bindgen_1acee650c935dc16 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_to_uint32@ +foreign import ccall safe "hs_bindgen_5b8ce8404277dc2e" hs_bindgen_5b8ce8404277dc2e :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_uint32@ + + __defined at:__ @botan\/ffi.h:899:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_to_uint32 :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @val@ + -> IO FC.CInt +botan_mp_to_uint32 = hs_bindgen_5b8ce8404277dc2e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_is_positive@ +foreign import ccall safe "hs_bindgen_e7df718ac8c314db" hs_bindgen_e7df718ac8c314db :: + Botan_mp_t + -> IO FC.CInt + +{-| This function should have been named mp_is_non_negative. Returns 1 iff mp is greater than *or equal to* zero. Use botan_mp_is_negative to detect negative numbers, botan_mp_is_zero to check for zero. + +__C declaration:__ @botan_mp_is_positive@ + +__defined at:__ @botan\/ffi.h:906:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_positive :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_is_positive = hs_bindgen_e7df718ac8c314db + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_is_negative@ +foreign import ccall safe "hs_bindgen_3e7dd83d562bbe60" hs_bindgen_3e7dd83d562bbe60 :: + Botan_mp_t + -> IO FC.CInt + +{-| Return 1 iff mp is less than 0 + +__C declaration:__ @botan_mp_is_negative@ + +__defined at:__ @botan\/ffi.h:911:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_negative :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_is_negative = hs_bindgen_3e7dd83d562bbe60 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_flip_sign@ +foreign import ccall safe "hs_bindgen_a40daee6a3436fca" hs_bindgen_a40daee6a3436fca :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_flip_sign@ + + __defined at:__ @botan\/ffi.h:913:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_flip_sign :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_flip_sign = hs_bindgen_a40daee6a3436fca + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_is_zero@ +foreign import ccall safe "hs_bindgen_f05544901f190d34" hs_bindgen_f05544901f190d34 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_zero@ + + __defined at:__ @botan\/ffi.h:915:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_zero :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_is_zero = hs_bindgen_f05544901f190d34 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_is_odd@ +foreign import ccall safe "hs_bindgen_c89e120398d6044b" hs_bindgen_c89e120398d6044b :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_odd@ + + __defined at:__ @botan\/ffi.h:918:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_odd :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_is_odd = hs_bindgen_c89e120398d6044b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_is_even@ +foreign import ccall safe "hs_bindgen_4fd201b557d479db" hs_bindgen_4fd201b557d479db :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_even@ + + __defined at:__ @botan\/ffi.h:920:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_even :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_is_even = hs_bindgen_4fd201b557d479db + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_add_u32@ +foreign import ccall safe "hs_bindgen_6557bbd224364e45" hs_bindgen_6557bbd224364e45 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add_u32@ + + __defined at:__ @botan\/ffi.h:922:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_add_u32 :: + Botan_mp_t + -- ^ __C declaration:__ @result@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_add_u32 = hs_bindgen_6557bbd224364e45 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_sub_u32@ +foreign import ccall safe "hs_bindgen_b23f697e69e7c0b5" hs_bindgen_b23f697e69e7c0b5 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub_u32@ + + __defined at:__ @botan\/ffi.h:923:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_sub_u32 :: + Botan_mp_t + -- ^ __C declaration:__ @result@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_sub_u32 = hs_bindgen_b23f697e69e7c0b5 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_add@ +foreign import ccall safe "hs_bindgen_723e23708f77a0e1" hs_bindgen_723e23708f77a0e1 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add@ + + __defined at:__ @botan\/ffi.h:925:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_add :: + Botan_mp_t + -- ^ __C declaration:__ @result@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_add = hs_bindgen_723e23708f77a0e1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_sub@ +foreign import ccall safe "hs_bindgen_b5647131e2659949" hs_bindgen_b5647131e2659949 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub@ + + __defined at:__ @botan\/ffi.h:926:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_sub :: + Botan_mp_t + -- ^ __C declaration:__ @result@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_sub = hs_bindgen_b5647131e2659949 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_mul@ +foreign import ccall safe "hs_bindgen_59d8bdd94521f9c8" hs_bindgen_59d8bdd94521f9c8 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mul@ + + __defined at:__ @botan\/ffi.h:927:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_mul :: + Botan_mp_t + -- ^ __C declaration:__ @result@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_mul = hs_bindgen_59d8bdd94521f9c8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_div@ +foreign import ccall safe "hs_bindgen_323d3b2194fa7bee" hs_bindgen_323d3b2194fa7bee :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_div@ + + __defined at:__ @botan\/ffi.h:929:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_div :: + Botan_mp_t + -- ^ __C declaration:__ @quotient@ + -> Botan_mp_t + -- ^ __C declaration:__ @remainder@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_div = hs_bindgen_323d3b2194fa7bee + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_mod_mul@ +foreign import ccall safe "hs_bindgen_b047d7ba896c943e" hs_bindgen_b047d7ba896c943e :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mod_mul@ + + __defined at:__ @botan\/ffi.h:933:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_mod_mul :: + Botan_mp_t + -- ^ __C declaration:__ @result@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> Botan_mp_t + -- ^ __C declaration:__ @mod@ + -> IO FC.CInt +botan_mp_mod_mul = hs_bindgen_b047d7ba896c943e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_equal@ +foreign import ccall safe "hs_bindgen_f2c55377d952bed9" hs_bindgen_f2c55377d952bed9 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_equal@ + + __defined at:__ @botan\/ffi.h:941:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_equal :: + Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_equal = hs_bindgen_f2c55377d952bed9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_cmp@ +foreign import ccall safe "hs_bindgen_4e0a5997c516bd02" hs_bindgen_4e0a5997c516bd02 :: + Ptr.Ptr FC.CInt + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_cmp@ + + __defined at:__ @botan\/ffi.h:948:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_cmp :: + Ptr.Ptr FC.CInt + -- ^ __C declaration:__ @result@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_cmp = hs_bindgen_4e0a5997c516bd02 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_swap@ +foreign import ccall safe "hs_bindgen_faa173f856495959" hs_bindgen_faa173f856495959 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_swap@ + + __defined at:__ @botan\/ffi.h:953:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_swap :: + Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_swap = hs_bindgen_faa173f856495959 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_powmod@ +foreign import ccall safe "hs_bindgen_be5bf641273a7d12" hs_bindgen_be5bf641273a7d12 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_powmod@ + + __defined at:__ @botan\/ffi.h:956:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_powmod :: + Botan_mp_t + -- ^ __C declaration:__ @out@ + -> Botan_mp_t + -- ^ __C declaration:__ @base@ + -> Botan_mp_t + -- ^ __C declaration:__ @exponent@ + -> Botan_mp_t + -- ^ __C declaration:__ @modulus@ + -> IO FC.CInt +botan_mp_powmod = hs_bindgen_be5bf641273a7d12 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_lshift@ +foreign import ccall safe "hs_bindgen_f824d35bb488aa71" hs_bindgen_f824d35bb488aa71 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_lshift@ + + __defined at:__ @botan\/ffi.h:958:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_lshift :: + Botan_mp_t + -- ^ __C declaration:__ @out@ + -> Botan_mp_t + -- ^ __C declaration:__ @in'@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @shift@ + -> IO FC.CInt +botan_mp_lshift = hs_bindgen_f824d35bb488aa71 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_rshift@ +foreign import ccall safe "hs_bindgen_0e15e04c1f8504b6" hs_bindgen_0e15e04c1f8504b6 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rshift@ + + __defined at:__ @botan\/ffi.h:959:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_rshift :: + Botan_mp_t + -- ^ __C declaration:__ @out@ + -> Botan_mp_t + -- ^ __C declaration:__ @in'@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @shift@ + -> IO FC.CInt +botan_mp_rshift = hs_bindgen_0e15e04c1f8504b6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_mod_inverse@ +foreign import ccall safe "hs_bindgen_cfcfc82b90c3c587" hs_bindgen_cfcfc82b90c3c587 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mod_inverse@ + + __defined at:__ @botan\/ffi.h:961:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_mod_inverse :: + Botan_mp_t + -- ^ __C declaration:__ @out@ + -> Botan_mp_t + -- ^ __C declaration:__ @in'@ + -> Botan_mp_t + -- ^ __C declaration:__ @modulus@ + -> IO FC.CInt +botan_mp_mod_inverse = hs_bindgen_cfcfc82b90c3c587 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_rand_bits@ +foreign import ccall safe "hs_bindgen_576f8a7c96e7dde4" hs_bindgen_576f8a7c96e7dde4 :: + Botan_mp_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rand_bits@ + + __defined at:__ @botan\/ffi.h:963:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_rand_bits :: + Botan_mp_t + -- ^ __C declaration:__ @rand_out@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @bits@ + -> IO FC.CInt +botan_mp_rand_bits = hs_bindgen_576f8a7c96e7dde4 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_rand_range@ +foreign import ccall safe "hs_bindgen_734cf6b5ebf95c5f" hs_bindgen_734cf6b5ebf95c5f :: + Botan_mp_t + -> Botan_rng_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rand_range@ + + __defined at:__ @botan\/ffi.h:965:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_rand_range :: + Botan_mp_t + -- ^ __C declaration:__ @rand_out@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> Botan_mp_t + -- ^ __C declaration:__ @lower_bound@ + -> Botan_mp_t + -- ^ __C declaration:__ @upper_bound@ + -> IO FC.CInt +botan_mp_rand_range = hs_bindgen_734cf6b5ebf95c5f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_gcd@ +foreign import ccall safe "hs_bindgen_8df4e15bb647127c" hs_bindgen_8df4e15bb647127c :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_gcd@ + + __defined at:__ @botan\/ffi.h:968:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_gcd :: + Botan_mp_t + -- ^ __C declaration:__ @out@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_gcd = hs_bindgen_8df4e15bb647127c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_is_prime@ +foreign import ccall safe "hs_bindgen_7e538fdc9db19055" hs_bindgen_7e538fdc9db19055 :: + Botan_mp_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Returns 0 if n is not prime Returns 1 if n is prime Returns negative number on error + +__C declaration:__ @botan_mp_is_prime@ + +__defined at:__ @botan\/ffi.h:975:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_prime :: + Botan_mp_t + -- ^ __C declaration:__ @n@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @test_prob@ + -> IO FC.CInt +botan_mp_is_prime = hs_bindgen_7e538fdc9db19055 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_get_bit@ +foreign import ccall safe "hs_bindgen_50f84b61d3dcdc4b" hs_bindgen_50f84b61d3dcdc4b :: + Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Returns 0 if specified bit of n is not set Returns 1 if specified bit of n is set Returns negative number on error + +__C declaration:__ @botan_mp_get_bit@ + +__defined at:__ @botan\/ffi.h:982:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_get_bit :: + Botan_mp_t + -- ^ __C declaration:__ @n@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @bit@ + -> IO FC.CInt +botan_mp_get_bit = hs_bindgen_50f84b61d3dcdc4b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_set_bit@ +foreign import ccall safe "hs_bindgen_6f2b18e39a239269" hs_bindgen_6f2b18e39a239269 :: + Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Set the specified bit + +__C declaration:__ @botan_mp_set_bit@ + +__defined at:__ @botan\/ffi.h:987:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_set_bit :: + Botan_mp_t + -- ^ __C declaration:__ @n@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @bit@ + -> IO FC.CInt +botan_mp_set_bit = hs_bindgen_6f2b18e39a239269 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mp_clear_bit@ +foreign import ccall safe "hs_bindgen_a44011c971475d6b" hs_bindgen_a44011c971475d6b :: + Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Clear the specified bit + +__C declaration:__ @botan_mp_clear_bit@ + +__defined at:__ @botan\/ffi.h:992:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear_bit :: + Botan_mp_t + -- ^ __C declaration:__ @n@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @bit@ + -> IO FC.CInt +botan_mp_clear_bit = hs_bindgen_a44011c971475d6b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_bcrypt_generate@ +foreign import ccall safe "hs_bindgen_1bba7b8e02356cad" hs_bindgen_1bba7b8e02356cad :: + Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| Create a password hash using Bcrypt + + [__@out@ /(input)/__]: buffer holding the password hash, should be of length 64 bytes + + [__@out_len@ /(input)/__]: the desired output length in bytes + + [__@password@ /(input)/__]: the password + + [__@rng@ /(input)/__]: a random number generator + + [__@work_factor@ /(input)/__]: how much work to do to slow down guessing attacks + + [__@flags@ /(input)/__]: should be 0 in current API revision, all other uses are reserved and return BOTAN_FFI_ERROR_BAD_FLAG + + __returns:__ 0 on success, a negative value on failure + + Output is formatted bcrypt $2a$... + +__C declaration:__ @botan_bcrypt_generate@ + +__defined at:__ @botan\/ffi.h:1009:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_bcrypt_generate :: + Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: buffer holding the password hash, should be of length 64 bytes + + __C declaration:__ @out@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_len@ /(input)/__]: the desired output length in bytes + + __C declaration:__ @out_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@password@ /(input)/__]: the password + + __C declaration:__ @password@ + -} + -> Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: a random number generator + + __C declaration:__ @rng@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@work_factor@ /(input)/__]: how much work to do to slow down guessing attacks + + __C declaration:__ @work_factor@ + -} + -> HsBindgen.Runtime.Prelude.Word32 + {- ^ + + [__@flags@ /(input)/__]: should be 0 in current API revision, all other uses are reserved and return BOTAN_FFI_ERROR_BAD_FLAG + + __C declaration:__ @flags@ + -} + -> IO FC.CInt +botan_bcrypt_generate = hs_bindgen_1bba7b8e02356cad + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_bcrypt_is_valid@ +foreign import ccall safe "hs_bindgen_7453d293bb5fa084" hs_bindgen_7453d293bb5fa084 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Check a previously created password hash + + [__@pass@ /(input)/__]: the password to check against + + [__@hash@ /(input)/__]: the stored hash to check against + + __returns:__ 0 if if this password/hash combination is valid, 1 if the combination is not valid (but otherwise well formed), negative on error + +__C declaration:__ @botan_bcrypt_is_valid@ + +__defined at:__ @botan\/ffi.h:1023:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_bcrypt_is_valid :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@pass@ /(input)/__]: the password to check against + + __C declaration:__ @pass@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@hash@ /(input)/__]: the stored hash to check against + + __C declaration:__ @hash@ + -} + -> IO FC.CInt +botan_bcrypt_is_valid = hs_bindgen_7453d293bb5fa084 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_create@ +foreign import ccall safe "hs_bindgen_c0c388ef637d0679" hs_bindgen_c0c388ef637d0679 :: + Ptr.Ptr Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Botan_rng_t + -> IO FC.CInt + +{-| Create a new private key + + [__@key@ /(input)/__]: the new object will be placed here + + [__@algo_name@ /(input)/__]: something like "RSA" or "ECDSA" + + [__@algo_params@ /(input)/__]: is specific to the algorithm. For RSA, specifies the modulus bit length. For ECC is the name of the curve. + + [__@rng@ /(input)/__]: a random number generator + +__C declaration:__ @botan_privkey_create@ + +__defined at:__ @botan\/ffi.h:1038:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create :: + Ptr.Ptr Botan_privkey_t + {- ^ + + [__@key@ /(input)/__]: the new object will be placed here + + __C declaration:__ @key@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@algo_name@ /(input)/__]: something like "RSA" or "ECDSA" + + __C declaration:__ @algo_name@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@algo_params@ /(input)/__]: is specific to the algorithm. For RSA, specifies the modulus bit length. For ECC is the name of the curve. + + __C declaration:__ @algo_params@ + -} + -> Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: a random number generator + + __C declaration:__ @rng@ + -} + -> IO FC.CInt +botan_privkey_create = hs_bindgen_c0c388ef637d0679 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_check_key@ +foreign import ccall safe "hs_bindgen_c15e1425a27e92d2" hs_bindgen_c15e1425a27e92d2 :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_check_key@ + + __defined at:__ @botan\/ffi.h:1045:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_check_key :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_privkey_check_key = hs_bindgen_c15e1425a27e92d2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_create_rsa@ +foreign import ccall safe "hs_bindgen_6f2ea6a8c42473f2" hs_bindgen_6f2ea6a8c42473f2 :: + Ptr.Ptr Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_create_rsa@ + + __defined at:__ @botan\/ffi.h:1048:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create_rsa :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @n_bits@ + -> IO FC.CInt +botan_privkey_create_rsa = + hs_bindgen_6f2ea6a8c42473f2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_create_ecdsa@ +foreign import ccall safe "hs_bindgen_269dc3eb784b9541" hs_bindgen_269dc3eb784b9541 :: + Ptr.Ptr Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_create_ecdsa@ + + __defined at:__ @botan\/ffi.h:1050:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create_ecdsa :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @params@ + -> IO FC.CInt +botan_privkey_create_ecdsa = + hs_bindgen_269dc3eb784b9541 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_create_ecdh@ +foreign import ccall safe "hs_bindgen_94dad37d46102184" hs_bindgen_94dad37d46102184 :: + Ptr.Ptr Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_create_ecdh@ + + __defined at:__ @botan\/ffi.h:1052:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create_ecdh :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @params@ + -> IO FC.CInt +botan_privkey_create_ecdh = + hs_bindgen_94dad37d46102184 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_create_mceliece@ +foreign import ccall safe "hs_bindgen_fffa42f69f7579aa" hs_bindgen_fffa42f69f7579aa :: + Ptr.Ptr Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_create_mceliece@ + + __defined at:__ @botan\/ffi.h:1054:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create_mceliece :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @n@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @t@ + -> IO FC.CInt +botan_privkey_create_mceliece = + hs_bindgen_fffa42f69f7579aa + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_create_dh@ +foreign import ccall safe "hs_bindgen_c8e22307a271077b" hs_bindgen_c8e22307a271077b :: + Ptr.Ptr Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_create_dh@ + + __defined at:__ @botan\/ffi.h:1056:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create_dh :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @param@ + -> IO FC.CInt +botan_privkey_create_dh = hs_bindgen_c8e22307a271077b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_create_dsa@ +foreign import ccall safe "hs_bindgen_5f8b788111afb362" hs_bindgen_5f8b788111afb362 :: + Ptr.Ptr Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Generates DSA key pair. Gives to a caller control over key length and order of a subgroup 'q'. + + [__@key@ /(input)/__]: handler to the resulting key + + [__@rng@ /(input)/__]: initialized PRNG + + [__@pbits@ /(input)/__]: length of the key in bits. Must be between in range (1024, 3072) and multiple of 64. Bit size of the prime 'p' + + [__@qbits@ /(input)/__]: order of the subgroup. Must be in range (160, 256) and multiple of 8 + + __returns:__ BOTAN_FFI_SUCCESS Success, `key' initialized with DSA key + + __returns:__ BOTAN_FFI_ERROR_NULL_POINTER either `key' or `rng' is NULL + + __returns:__ BOTAN_FFI_ERROR_BAD_PARAMETER unexpected value for either `pbits' or `qbits' + + __returns:__ BOTAN_FFI_ERROR_NOT_IMPLEMENTED functionality not implemented + +__C declaration:__ @botan_privkey_create_dsa@ + +__defined at:__ @botan\/ffi.h:1076:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create_dsa :: + Ptr.Ptr Botan_privkey_t + {- ^ + + [__@key@ /(input)/__]: handler to the resulting key + + __C declaration:__ @key@ + -} + -> Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: initialized PRNG + + __C declaration:__ @rng@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@pbits@ /(input)/__]: length of the key in bits. Must be between in range (1024, 3072) and multiple of 64. Bit size of the prime 'p' + + __C declaration:__ @pbits@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@qbits@ /(input)/__]: order of the subgroup. Must be in range (160, 256) and multiple of 8 + + __C declaration:__ @qbits@ + -} + -> IO FC.CInt +botan_privkey_create_dsa = + hs_bindgen_5f8b788111afb362 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_create_elgamal@ +foreign import ccall safe "hs_bindgen_061dda54a3d6748d" hs_bindgen_061dda54a3d6748d :: + Ptr.Ptr Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Generates ElGamal key pair. Caller has a control over key length and order of a subgroup 'q'. Function is able to use two types of primes: * if pbits-1 == qbits then safe primes are used for key generation * otherwise generation uses group of prime order + + [__@key@ /(input)/__]: handler to the resulting key + + [__@rng@ /(input)/__]: initialized PRNG + + [__@pbits@ /(input)/__]: length of the key in bits. Must be at least 1024 + + [__@qbits@ /(input)/__]: order of the subgroup. Must be at least 160 + + __returns:__ BOTAN_FFI_SUCCESS Success, `key' initialized with DSA key + + __returns:__ BOTAN_FFI_ERROR_NULL_POINTER either `key' or `rng' is NULL + + __returns:__ BOTAN_FFI_ERROR_BAD_PARAMETER unexpected value for either `pbits' or `qbits' + + __returns:__ BOTAN_FFI_ERROR_NOT_IMPLEMENTED functionality not implemented + +__C declaration:__ @botan_privkey_create_elgamal@ + +__defined at:__ @botan\/ffi.h:1101:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create_elgamal :: + Ptr.Ptr Botan_privkey_t + {- ^ + + [__@key@ /(input)/__]: handler to the resulting key + + __C declaration:__ @key@ + -} + -> Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: initialized PRNG + + __C declaration:__ @rng@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@pbits@ /(input)/__]: length of the key in bits. Must be at least 1024 + + __C declaration:__ @pbits@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@qbits@ /(input)/__]: order of the subgroup. Must be at least 160 + + __C declaration:__ @qbits@ + -} + -> IO FC.CInt +botan_privkey_create_elgamal = + hs_bindgen_061dda54a3d6748d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_load@ +foreign import ccall safe "hs_bindgen_ef6a3d56cb87aa2b" hs_bindgen_ef6a3d56cb87aa2b :: + Ptr.Ptr Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Pointer-based API for 'botan_privkey_load' +-} +botan_privkey_load_wrapper :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @bits@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @password@ + -> IO FC.CInt +botan_privkey_load_wrapper = + hs_bindgen_ef6a3d56cb87aa2b + +{-| Input currently assumed to be PKCS #8 structure; Set password to NULL to indicate no encryption expected Starting in 2.8.0, the rng parameter is unused and may be set to null + +__C declaration:__ @botan_privkey_load@ + +__defined at:__ @botan\/ffi.h:1112:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @bits@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @password@ + -> IO FC.CInt +botan_privkey_load = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + HsBindgen.Runtime.IncompleteArray.withPtr x2 (\ptr5 -> + hs_bindgen_ef6a3d56cb87aa2b x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x3 x4) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_destroy@ +foreign import ccall safe "hs_bindgen_2a011cfdbafecaec" hs_bindgen_2a011cfdbafecaec :: + Botan_privkey_t + -> IO FC.CInt + +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_privkey_destroy@ + +__defined at:__ @botan\/ffi.h:1120:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_destroy :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_privkey_destroy = hs_bindgen_2a011cfdbafecaec + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_export@ +foreign import ccall safe "hs_bindgen_7d792b190f6fa2a9" hs_bindgen_7d792b190f6fa2a9 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| On input *out_len is number of bytes in out[] On output *out_len is number of bytes written (or required) If out is not big enough no output is written, *out_len is set and 1 is returned Returns 0 on success and sets If some other error occurs a negative integer is returned. + +__C declaration:__ @botan_privkey_export@ + +__defined at:__ @botan\/ffi.h:1132:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_export :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_privkey_export = hs_bindgen_7d792b190f6fa2a9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_view_der@ +foreign import ccall safe "hs_bindgen_89455525865f83d7" hs_bindgen_89455525865f83d7 :: + Botan_privkey_t + -> Botan_view_ctx + -> Botan_view_bin_fn + -> IO FC.CInt + +{-| View the private key's DER encoding + +__C declaration:__ @botan_privkey_view_der@ + +__defined at:__ @botan\/ffi.h:1139:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_view_der :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_bin_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_privkey_view_der = hs_bindgen_89455525865f83d7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_view_pem@ +foreign import ccall safe "hs_bindgen_bee8bdf66240cb8a" hs_bindgen_bee8bdf66240cb8a :: + Botan_privkey_t + -> Botan_view_ctx + -> Botan_view_str_fn + -> IO FC.CInt + +{-| View the private key's PEM encoding + +__C declaration:__ @botan_privkey_view_pem@ + +__defined at:__ @botan\/ffi.h:1147:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_view_pem :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_str_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_privkey_view_pem = hs_bindgen_bee8bdf66240cb8a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_algo_name@ +foreign import ccall safe "hs_bindgen_d44ea084315394c6" hs_bindgen_d44ea084315394c6 :: + Botan_privkey_t + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_algo_name@ + + __defined at:__ @botan\/ffi.h:1152:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_algo_name :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr FC.CChar + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_privkey_algo_name = hs_bindgen_d44ea084315394c6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_export_encrypted@ +foreign import ccall safe "hs_bindgen_fe79ddee26cc3fef" hs_bindgen_fe79ddee26cc3fef :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_encrypted@ + + __defined at:__ @botan\/ffi.h:1158:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_export_encrypted :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @encryption_algo@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_privkey_export_encrypted = + hs_bindgen_fe79ddee26cc3fef + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall safe "hs_bindgen_193fe389e87fa445" hs_bindgen_193fe389e87fa445 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_encrypted_pbkdf_msec@ + + __defined at:__ @botan\/ffi.h:1171:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_export_encrypted_pbkdf_msec :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @pbkdf_msec_runtime@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @pbkdf_iterations_out@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cipher_algo@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @pbkdf_algo@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_privkey_export_encrypted_pbkdf_msec = + hs_bindgen_193fe389e87fa445 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall safe "hs_bindgen_1738672dfa2fb4ed" hs_bindgen_1738672dfa2fb4ed :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| Export a private key using the specified number of iterations. + +__C declaration:__ @botan_privkey_export_encrypted_pbkdf_iter@ + +__defined at:__ @botan\/ffi.h:1184:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_export_encrypted_pbkdf_iter :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @pbkdf_iterations@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cipher_algo@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @pbkdf_algo@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_privkey_export_encrypted_pbkdf_iter = + hs_bindgen_1738672dfa2fb4ed + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_view_encrypted_der@ +foreign import ccall safe "hs_bindgen_f76db0ebd521e034" hs_bindgen_f76db0ebd521e034 :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> Botan_view_ctx + -> Botan_view_bin_fn + -> IO FC.CInt + +{-| View the encryption of a private key (binary DER encoding) + + Set cipher_algo, pbkdf_algo to NULL to use defaults Set pbkdf_iterations to 0 to use defaults + +__C declaration:__ @botan_privkey_view_encrypted_der@ + +__defined at:__ @botan\/ffi.h:1199:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_view_encrypted_der :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cipher_algo@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @pbkdf_algo@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @pbkdf_iterations@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_bin_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_privkey_view_encrypted_der = + hs_bindgen_f76db0ebd521e034 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_view_encrypted_der_timed@ +foreign import ccall safe "hs_bindgen_98db44edf2cbcaa1" hs_bindgen_98db44edf2cbcaa1 :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> Botan_view_ctx + -> Botan_view_bin_fn + -> IO FC.CInt + +{-| View the encryption of a private key (binary DER encoding) + + Set cipher_algo, pbkdf_algo to NULL to use defaults + +__C declaration:__ @botan_privkey_view_encrypted_der_timed@ + +__defined at:__ @botan\/ffi.h:1214:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_view_encrypted_der_timed :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cipher_algo@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @pbkdf_algo@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @pbkdf_runtime_msec@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_bin_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_privkey_view_encrypted_der_timed = + hs_bindgen_98db44edf2cbcaa1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_view_encrypted_pem@ +foreign import ccall safe "hs_bindgen_882d7449b1f3ecb8" hs_bindgen_882d7449b1f3ecb8 :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> Botan_view_ctx + -> Botan_view_str_fn + -> IO FC.CInt + +{-| View the encryption of a private key (PEM encoding) + + Set cipher_algo, pbkdf_algo to NULL to use defaults Set pbkdf_iterations to 0 to use defaults + +__C declaration:__ @botan_privkey_view_encrypted_pem@ + +__defined at:__ @botan\/ffi.h:1230:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_view_encrypted_pem :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cipher_algo@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @pbkdf_algo@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @pbkdf_iterations@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_str_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_privkey_view_encrypted_pem = + hs_bindgen_882d7449b1f3ecb8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall safe "hs_bindgen_f2523a17e9e5f288" hs_bindgen_f2523a17e9e5f288 :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> Botan_view_ctx + -> Botan_view_str_fn + -> IO FC.CInt + +{-| View the encryption of a private key (PEM encoding) + + Set cipher_algo, pbkdf_algo to NULL to use defaults + +__C declaration:__ @botan_privkey_view_encrypted_pem_timed@ + +__defined at:__ @botan\/ffi.h:1245:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_view_encrypted_pem_timed :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cipher_algo@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @pbkdf_algo@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @pbkdf_runtime_msec@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_str_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_privkey_view_encrypted_pem_timed = + hs_bindgen_f2523a17e9e5f288 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pubkey_load@ +foreign import ccall safe "hs_bindgen_c069779455d9967a" hs_bindgen_c069779455d9967a :: + Ptr.Ptr Botan_pubkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pubkey_load' +-} +botan_pubkey_load_wrapper :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @bits@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> IO FC.CInt +botan_pubkey_load_wrapper = + hs_bindgen_c069779455d9967a + +{-| __C declaration:__ @botan_pubkey_load@ + + __defined at:__ @botan\/ffi.h:1257:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @bits@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> IO FC.CInt +botan_pubkey_load = + \x0 -> + \x1 -> + \x2 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr3 -> + hs_bindgen_c069779455d9967a x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_export_pubkey@ +foreign import ccall safe "hs_bindgen_683fbbe7f6b28e26" hs_bindgen_683fbbe7f6b28e26 :: + Ptr.Ptr Botan_pubkey_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_pubkey@ + + __defined at:__ @botan\/ffi.h:1259:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_export_pubkey :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @out@ + -> Botan_privkey_t + -- ^ __C declaration:__ @in'@ + -> IO FC.CInt +botan_privkey_export_pubkey = + hs_bindgen_683fbbe7f6b28e26 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pubkey_export@ +foreign import ccall safe "hs_bindgen_9bfadb431b8f1006" hs_bindgen_9bfadb431b8f1006 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_export@ + + __defined at:__ @botan\/ffi.h:1261:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_export :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_pubkey_export = hs_bindgen_9bfadb431b8f1006 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pubkey_view_der@ +foreign import ccall safe "hs_bindgen_7225d7bdb07881c9" hs_bindgen_7225d7bdb07881c9 :: + Botan_pubkey_t + -> Botan_view_ctx + -> Botan_view_bin_fn + -> IO FC.CInt + +{-| View the public key's DER encoding + +__C declaration:__ @botan_pubkey_view_der@ + +__defined at:__ @botan\/ffi.h:1266:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_view_der :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_bin_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_pubkey_view_der = hs_bindgen_7225d7bdb07881c9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pubkey_view_pem@ +foreign import ccall safe "hs_bindgen_42c8f9cddaebf6ce" hs_bindgen_42c8f9cddaebf6ce :: + Botan_pubkey_t + -> Botan_view_ctx + -> Botan_view_str_fn + -> IO FC.CInt + +{-| View the public key's PEM encoding + +__C declaration:__ @botan_pubkey_view_pem@ + +__defined at:__ @botan\/ffi.h:1274:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_view_pem :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_str_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_pubkey_view_pem = hs_bindgen_42c8f9cddaebf6ce + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pubkey_algo_name@ +foreign import ccall safe "hs_bindgen_7223ca56d4a79949" hs_bindgen_7223ca56d4a79949 :: + Botan_pubkey_t + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_algo_name@ + + __defined at:__ @botan\/ffi.h:1279:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_algo_name :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr FC.CChar + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_pubkey_algo_name = hs_bindgen_7223ca56d4a79949 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pubkey_check_key@ +foreign import ccall safe "hs_bindgen_eab8b9d9b19ee637" hs_bindgen_eab8b9d9b19ee637 :: + Botan_pubkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| Returns 0 if key is valid, negative if invalid key or some other error + +__C declaration:__ @botan_pubkey_check_key@ + +__defined at:__ @botan\/ffi.h:1284:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_check_key :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_pubkey_check_key = hs_bindgen_eab8b9d9b19ee637 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pubkey_estimated_strength@ +foreign import ccall safe "hs_bindgen_45270549acfc9725" hs_bindgen_45270549acfc9725 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_estimated_strength@ + + __defined at:__ @botan\/ffi.h:1286:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_estimated_strength :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @estimate@ + -> IO FC.CInt +botan_pubkey_estimated_strength = + hs_bindgen_45270549acfc9725 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pubkey_fingerprint@ +foreign import ccall safe "hs_bindgen_b52550e76e8a8f11" hs_bindgen_b52550e76e8a8f11 :: + Botan_pubkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_fingerprint@ + + __defined at:__ @botan\/ffi.h:1288:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_fingerprint :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hash@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_pubkey_fingerprint = + hs_bindgen_b52550e76e8a8f11 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pubkey_destroy@ +foreign import ccall safe "hs_bindgen_574e8d52747d7053" hs_bindgen_574e8d52747d7053 :: + Botan_pubkey_t + -> IO FC.CInt + +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pubkey_destroy@ + +__defined at:__ @botan\/ffi.h:1294:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_destroy :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_destroy = hs_bindgen_574e8d52747d7053 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pubkey_get_field@ +foreign import ccall safe "hs_bindgen_80b7f331f421ea0c" hs_bindgen_80b7f331f421ea0c :: + Botan_mp_t + -> Botan_pubkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_get_field@ + + __defined at:__ @botan\/ffi.h:1299:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_get_field :: + Botan_mp_t + -- ^ __C declaration:__ @output@ + -> Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @field_name@ + -> IO FC.CInt +botan_pubkey_get_field = hs_bindgen_80b7f331f421ea0c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_get_field@ +foreign import ccall safe "hs_bindgen_d933938dc565fa5d" hs_bindgen_d933938dc565fa5d :: + Botan_mp_t + -> Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_get_field@ + + __defined at:__ @botan\/ffi.h:1303:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_get_field :: + Botan_mp_t + -- ^ __C declaration:__ @output@ + -> Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @field_name@ + -> IO FC.CInt +botan_privkey_get_field = hs_bindgen_d933938dc565fa5d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_load_rsa@ +foreign import ccall safe "hs_bindgen_e6f757e880c8f1c7" hs_bindgen_e6f757e880c8f1c7 :: + Ptr.Ptr Botan_privkey_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_load_rsa@ + + __defined at:__ @botan\/ffi.h:1310:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_rsa :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @p@ + -> Botan_mp_t + -- ^ __C declaration:__ @q@ + -> Botan_mp_t + -- ^ __C declaration:__ @e@ + -> IO FC.CInt +botan_privkey_load_rsa = hs_bindgen_e6f757e880c8f1c7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_load_rsa_pkcs1@ +foreign import ccall safe "hs_bindgen_5f6282fdf2d3d6fe" hs_bindgen_5f6282fdf2d3d6fe :: + Ptr.Ptr Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_privkey_load_rsa_pkcs1' +-} +botan_privkey_load_rsa_pkcs1_wrapper :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @bits@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> IO FC.CInt +botan_privkey_load_rsa_pkcs1_wrapper = + hs_bindgen_5f6282fdf2d3d6fe + +{-| __C declaration:__ @botan_privkey_load_rsa_pkcs1@ + + __defined at:__ @botan\/ffi.h:1315:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_rsa_pkcs1 :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @bits@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> IO FC.CInt +botan_privkey_load_rsa_pkcs1 = + \x0 -> + \x1 -> + \x2 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr3 -> + hs_bindgen_5f6282fdf2d3d6fe x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_rsa_get_p@ +foreign import ccall safe "hs_bindgen_06791d01c452f06a" hs_bindgen_06791d01c452f06a :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_p@ + + __defined at:__ @botan\/ffi.h:1320:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_rsa_get_p :: + Botan_mp_t + -- ^ __C declaration:__ @p@ + -> Botan_privkey_t + -- ^ __C declaration:__ @rsa_key@ + -> IO FC.CInt +botan_privkey_rsa_get_p = hs_bindgen_06791d01c452f06a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_rsa_get_q@ +foreign import ccall safe "hs_bindgen_b671cfc6386beb9e" hs_bindgen_b671cfc6386beb9e :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_q@ + + __defined at:__ @botan\/ffi.h:1322:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_rsa_get_q :: + Botan_mp_t + -- ^ __C declaration:__ @q@ + -> Botan_privkey_t + -- ^ __C declaration:__ @rsa_key@ + -> IO FC.CInt +botan_privkey_rsa_get_q = hs_bindgen_b671cfc6386beb9e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_rsa_get_d@ +foreign import ccall safe "hs_bindgen_2f3af3c6b0c2c0e2" hs_bindgen_2f3af3c6b0c2c0e2 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_d@ + + __defined at:__ @botan\/ffi.h:1324:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_rsa_get_d :: + Botan_mp_t + -- ^ __C declaration:__ @d@ + -> Botan_privkey_t + -- ^ __C declaration:__ @rsa_key@ + -> IO FC.CInt +botan_privkey_rsa_get_d = hs_bindgen_2f3af3c6b0c2c0e2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_rsa_get_n@ +foreign import ccall safe "hs_bindgen_79bd80d54f610d98" hs_bindgen_79bd80d54f610d98 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1326:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_rsa_get_n :: + Botan_mp_t + -- ^ __C declaration:__ @n@ + -> Botan_privkey_t + -- ^ __C declaration:__ @rsa_key@ + -> IO FC.CInt +botan_privkey_rsa_get_n = hs_bindgen_79bd80d54f610d98 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_rsa_get_e@ +foreign import ccall safe "hs_bindgen_fa8b785baf0a8c2b" hs_bindgen_fa8b785baf0a8c2b :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1328:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_rsa_get_e :: + Botan_mp_t + -- ^ __C declaration:__ @e@ + -> Botan_privkey_t + -- ^ __C declaration:__ @rsa_key@ + -> IO FC.CInt +botan_privkey_rsa_get_e = hs_bindgen_fa8b785baf0a8c2b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_rsa_get_privkey@ +foreign import ccall safe "hs_bindgen_37e0187548bc87d8" hs_bindgen_37e0187548bc87d8 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_privkey@ + + __defined at:__ @botan\/ffi.h:1330:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_rsa_get_privkey :: + Botan_privkey_t + -- ^ __C declaration:__ @rsa_key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_privkey_rsa_get_privkey = + hs_bindgen_37e0187548bc87d8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pubkey_load_rsa@ +foreign import ccall safe "hs_bindgen_b05b1593c52bb651" hs_bindgen_b05b1593c52bb651 :: + Ptr.Ptr Botan_pubkey_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_load_rsa@ + + __defined at:__ @botan\/ffi.h:1334:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_rsa :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @n@ + -> Botan_mp_t + -- ^ __C declaration:__ @e@ + -> IO FC.CInt +botan_pubkey_load_rsa = hs_bindgen_b05b1593c52bb651 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pubkey_rsa_get_e@ +foreign import ccall safe "hs_bindgen_7b616346201103b4" hs_bindgen_7b616346201103b4 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1339:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_rsa_get_e :: + Botan_mp_t + -- ^ __C declaration:__ @e@ + -> Botan_pubkey_t + -- ^ __C declaration:__ @rsa_key@ + -> IO FC.CInt +botan_pubkey_rsa_get_e = hs_bindgen_7b616346201103b4 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pubkey_rsa_get_n@ +foreign import ccall safe "hs_bindgen_07142108998ad4f6" hs_bindgen_07142108998ad4f6 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1341:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_rsa_get_n :: + Botan_mp_t + -- ^ __C declaration:__ @n@ + -> Botan_pubkey_t + -- ^ __C declaration:__ @rsa_key@ + -> IO FC.CInt +botan_pubkey_rsa_get_n = hs_bindgen_07142108998ad4f6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_load_dsa@ +foreign import ccall safe "hs_bindgen_694c3e747dd726f4" hs_bindgen_694c3e747dd726f4 :: + Ptr.Ptr Botan_privkey_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_load_dsa@ + + __defined at:__ @botan\/ffi.h:1346:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_dsa :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @p@ + -> Botan_mp_t + -- ^ __C declaration:__ @q@ + -> Botan_mp_t + -- ^ __C declaration:__ @g@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> IO FC.CInt +botan_privkey_load_dsa = hs_bindgen_694c3e747dd726f4 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pubkey_load_dsa@ +foreign import ccall safe "hs_bindgen_195970d94b987541" hs_bindgen_195970d94b987541 :: + Ptr.Ptr Botan_pubkey_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_load_dsa@ + + __defined at:__ @botan\/ffi.h:1352:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_dsa :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @p@ + -> Botan_mp_t + -- ^ __C declaration:__ @q@ + -> Botan_mp_t + -- ^ __C declaration:__ @g@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_pubkey_load_dsa = hs_bindgen_195970d94b987541 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_dsa_get_x@ +foreign import ccall safe "hs_bindgen_862bd3e138bbe74a" hs_bindgen_862bd3e138bbe74a :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_dsa_get_x@ + + __defined at:__ @botan\/ffi.h:1359:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_dsa_get_x :: + Botan_mp_t + -- ^ __C declaration:__ @n@ + -> Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_privkey_dsa_get_x = hs_bindgen_862bd3e138bbe74a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pubkey_dsa_get_p@ +foreign import ccall safe "hs_bindgen_9b0ab9cd3fbd9035" hs_bindgen_9b0ab9cd3fbd9035 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_p@ + + __defined at:__ @botan\/ffi.h:1362:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_dsa_get_p :: + Botan_mp_t + -- ^ __C declaration:__ @p@ + -> Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_dsa_get_p = hs_bindgen_9b0ab9cd3fbd9035 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pubkey_dsa_get_q@ +foreign import ccall safe "hs_bindgen_e9e5bb0296391834" hs_bindgen_e9e5bb0296391834 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_q@ + + __defined at:__ @botan\/ffi.h:1364:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_dsa_get_q :: + Botan_mp_t + -- ^ __C declaration:__ @q@ + -> Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_dsa_get_q = hs_bindgen_e9e5bb0296391834 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pubkey_dsa_get_g@ +foreign import ccall safe "hs_bindgen_7bbbddb00064ab93" hs_bindgen_7bbbddb00064ab93 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_g@ + + __defined at:__ @botan\/ffi.h:1366:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_dsa_get_g :: + Botan_mp_t + -- ^ __C declaration:__ @d@ + -> Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_dsa_get_g = hs_bindgen_7bbbddb00064ab93 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pubkey_dsa_get_y@ +foreign import ccall safe "hs_bindgen_12738e141a05a20b" hs_bindgen_12738e141a05a20b :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_y@ + + __defined at:__ @botan\/ffi.h:1368:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_dsa_get_y :: + Botan_mp_t + -- ^ __C declaration:__ @y@ + -> Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_dsa_get_y = hs_bindgen_12738e141a05a20b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_load_dh@ +foreign import ccall safe "hs_bindgen_c24d5b5efe6b09ec" hs_bindgen_c24d5b5efe6b09ec :: + Ptr.Ptr Botan_privkey_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_load_dh@ + + __defined at:__ @botan\/ffi.h:1383:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_dh :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @p@ + -> Botan_mp_t + -- ^ __C declaration:__ @g@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> IO FC.CInt +botan_privkey_load_dh = hs_bindgen_c24d5b5efe6b09ec + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pubkey_load_dh@ +foreign import ccall safe "hs_bindgen_fde310e32c0fa198" hs_bindgen_fde310e32c0fa198 :: + Ptr.Ptr Botan_pubkey_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| Loads Diffie Hellman public key + + [__@key@ /(input)/__]: variable populated with key material + + [__@p@ /(input)/__]: prime order of a Z_p group + + [__@g@ /(input)/__]: group generator + + [__@y@ /(input)/__]: public key + + __pre condition:__ key is NULL on input + + __post condition:__ function allocates memory and assigns to `key' + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_pubkey_load_dh@ + +__defined at:__ @botan\/ffi.h:1400:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_dh :: + Ptr.Ptr Botan_pubkey_t + {- ^ + + [__@key@ /(input)/__]: variable populated with key material + + __C declaration:__ @key@ + -} + -> Botan_mp_t + {- ^ + + [__@p@ /(input)/__]: prime order of a Z_p group + + __C declaration:__ @p@ + -} + -> Botan_mp_t + {- ^ + + [__@g@ /(input)/__]: group generator + + __C declaration:__ @g@ + -} + -> Botan_mp_t + {- ^ + + [__@y@ /(input)/__]: public key + + __C declaration:__ @y@ + -} + -> IO FC.CInt +botan_pubkey_load_dh = hs_bindgen_fde310e32c0fa198 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pubkey_load_elgamal@ +foreign import ccall safe "hs_bindgen_9e1a8d3b44b912aa" hs_bindgen_9e1a8d3b44b912aa :: + Ptr.Ptr Botan_pubkey_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| Loads ElGamal public key + + [__@key@ /(input)/__]: variable populated with key material + + [__@p@ /(input)/__]: prime order of a Z_p group + + [__@g@ /(input)/__]: group generator + + [__@y@ /(input)/__]: public key + + __pre condition:__ key is NULL on input + + __post condition:__ function allocates memory and assigns to `key' + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_pubkey_load_elgamal@ + +__defined at:__ @botan\/ffi.h:1421:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_elgamal :: + Ptr.Ptr Botan_pubkey_t + {- ^ + + [__@key@ /(input)/__]: variable populated with key material + + __C declaration:__ @key@ + -} + -> Botan_mp_t + {- ^ + + [__@p@ /(input)/__]: prime order of a Z_p group + + __C declaration:__ @p@ + -} + -> Botan_mp_t + {- ^ + + [__@g@ /(input)/__]: group generator + + __C declaration:__ @g@ + -} + -> Botan_mp_t + {- ^ + + [__@y@ /(input)/__]: public key + + __C declaration:__ @y@ + -} + -> IO FC.CInt +botan_pubkey_load_elgamal = + hs_bindgen_9e1a8d3b44b912aa + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_load_elgamal@ +foreign import ccall safe "hs_bindgen_3ba6cea50af55aee" hs_bindgen_3ba6cea50af55aee :: + Ptr.Ptr Botan_privkey_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| Loads ElGamal private key + + [__@key@ /(input)/__]: variable populated with key material + + [__@p@ /(input)/__]: prime order of a Z_p group + + [__@g@ /(input)/__]: group generator + + [__@x@ /(input)/__]: private key + + __pre condition:__ key is NULL on input + + __post condition:__ function allocates memory and assigns to `key' + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_privkey_load_elgamal@ + +__defined at:__ @botan\/ffi.h:1439:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_elgamal :: + Ptr.Ptr Botan_privkey_t + {- ^ + + [__@key@ /(input)/__]: variable populated with key material + + __C declaration:__ @key@ + -} + -> Botan_mp_t + {- ^ + + [__@p@ /(input)/__]: prime order of a Z_p group + + __C declaration:__ @p@ + -} + -> Botan_mp_t + {- ^ + + [__@g@ /(input)/__]: group generator + + __C declaration:__ @g@ + -} + -> Botan_mp_t + {- ^ + + [__@x@ /(input)/__]: private key + + __C declaration:__ @x@ + -} + -> IO FC.CInt +botan_privkey_load_elgamal = + hs_bindgen_3ba6cea50af55aee + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_load_ed25519@ +foreign import ccall safe "hs_bindgen_bb0df7a9afac3a8a" hs_bindgen_bb0df7a9afac3a8a :: + Ptr.Ptr Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| Pointer-based API for 'botan_privkey_load_ed25519' +-} +botan_privkey_load_ed25519_wrapper :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @privkey@ + -> IO FC.CInt +botan_privkey_load_ed25519_wrapper = + hs_bindgen_bb0df7a9afac3a8a + +{-| __C declaration:__ @botan_privkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1448:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_ed25519 :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> (HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @privkey@ + -> IO FC.CInt +botan_privkey_load_ed25519 = + \x0 -> + \x1 -> + HsBindgen.Runtime.ConstantArray.withPtr x1 (\ptr2 -> + hs_bindgen_bb0df7a9afac3a8a x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pubkey_load_ed25519@ +foreign import ccall safe "hs_bindgen_70d204939200707b" hs_bindgen_70d204939200707b :: + Ptr.Ptr Botan_pubkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pubkey_load_ed25519' +-} +botan_pubkey_load_ed25519_wrapper :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> IO FC.CInt +botan_pubkey_load_ed25519_wrapper = + hs_bindgen_70d204939200707b + +{-| __C declaration:__ @botan_pubkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1451:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_ed25519 :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> (HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> IO FC.CInt +botan_pubkey_load_ed25519 = + \x0 -> + \x1 -> + HsBindgen.Runtime.ConstantArray.withPtr x1 (\ptr2 -> + hs_bindgen_70d204939200707b x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_ed25519_get_privkey@ +foreign import ccall safe "hs_bindgen_688e100cb2d247d9" hs_bindgen_688e100cb2d247d9 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1454:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_ed25519_get_privkey :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @output@ + -> IO FC.CInt +botan_privkey_ed25519_get_privkey = + hs_bindgen_688e100cb2d247d9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall safe "hs_bindgen_e2ffdbc2dc627d95" hs_bindgen_e2ffdbc2dc627d95 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1457:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_ed25519_get_pubkey :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> IO FC.CInt +botan_pubkey_ed25519_get_pubkey = + hs_bindgen_e2ffdbc2dc627d95 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_load_x25519@ +foreign import ccall safe "hs_bindgen_bb1fcb9416133c5b" hs_bindgen_bb1fcb9416133c5b :: + Ptr.Ptr Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| Pointer-based API for 'botan_privkey_load_x25519' +-} +botan_privkey_load_x25519_wrapper :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @privkey@ + -> IO FC.CInt +botan_privkey_load_x25519_wrapper = + hs_bindgen_bb1fcb9416133c5b + +{-| __C declaration:__ @botan_privkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1464:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_x25519 :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> (HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @privkey@ + -> IO FC.CInt +botan_privkey_load_x25519 = + \x0 -> + \x1 -> + HsBindgen.Runtime.ConstantArray.withPtr x1 (\ptr2 -> + hs_bindgen_bb1fcb9416133c5b x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pubkey_load_x25519@ +foreign import ccall safe "hs_bindgen_40a75bd7f7e15152" hs_bindgen_40a75bd7f7e15152 :: + Ptr.Ptr Botan_pubkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pubkey_load_x25519' +-} +botan_pubkey_load_x25519_wrapper :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> IO FC.CInt +botan_pubkey_load_x25519_wrapper = + hs_bindgen_40a75bd7f7e15152 + +{-| __C declaration:__ @botan_pubkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1467:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_x25519 :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> (HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> IO FC.CInt +botan_pubkey_load_x25519 = + \x0 -> + \x1 -> + HsBindgen.Runtime.ConstantArray.withPtr x1 (\ptr2 -> + hs_bindgen_40a75bd7f7e15152 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_x25519_get_privkey@ +foreign import ccall safe "hs_bindgen_1a5d454e615ccef3" hs_bindgen_1a5d454e615ccef3 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1470:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_x25519_get_privkey :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @output@ + -> IO FC.CInt +botan_privkey_x25519_get_privkey = + hs_bindgen_1a5d454e615ccef3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pubkey_x25519_get_pubkey@ +foreign import ccall safe "hs_bindgen_5fd717350529d3b1" hs_bindgen_5fd717350529d3b1 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1473:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_x25519_get_pubkey :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> IO FC.CInt +botan_pubkey_x25519_get_pubkey = + hs_bindgen_5fd717350529d3b1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_load_ecdsa@ +foreign import ccall safe "hs_bindgen_989883b061b3a3eb" hs_bindgen_989883b061b3a3eb :: + Ptr.Ptr Botan_privkey_t + -> Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_load_ecdsa@ + + __defined at:__ @botan\/ffi.h:1480:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_ecdsa :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @scalar@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @curve_name@ + -> IO FC.CInt +botan_privkey_load_ecdsa = + hs_bindgen_989883b061b3a3eb + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pubkey_load_ecdsa@ +foreign import ccall safe "hs_bindgen_922401273c624b5a" hs_bindgen_922401273c624b5a :: + Ptr.Ptr Botan_pubkey_t + -> Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_load_ecdsa@ + + __defined at:__ @botan\/ffi.h:1485:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_ecdsa :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @public_x@ + -> Botan_mp_t + -- ^ __C declaration:__ @public_y@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @curve_name@ + -> IO FC.CInt +botan_pubkey_load_ecdsa = hs_bindgen_922401273c624b5a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pubkey_load_ecdh@ +foreign import ccall safe "hs_bindgen_bb47a2f6a41c4f03" hs_bindgen_bb47a2f6a41c4f03 :: + Ptr.Ptr Botan_pubkey_t + -> Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_load_ecdh@ + + __defined at:__ @botan\/ffi.h:1491:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_ecdh :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @public_x@ + -> Botan_mp_t + -- ^ __C declaration:__ @public_y@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @curve_name@ + -> IO FC.CInt +botan_pubkey_load_ecdh = hs_bindgen_bb47a2f6a41c4f03 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_load_ecdh@ +foreign import ccall safe "hs_bindgen_c24740920ef299d6" hs_bindgen_c24740920ef299d6 :: + Ptr.Ptr Botan_privkey_t + -> Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_load_ecdh@ + + __defined at:__ @botan\/ffi.h:1497:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_ecdh :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @scalar@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @curve_name@ + -> IO FC.CInt +botan_privkey_load_ecdh = hs_bindgen_c24740920ef299d6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pubkey_load_sm2@ +foreign import ccall safe "hs_bindgen_20d6e857fd1afd00" hs_bindgen_20d6e857fd1afd00 :: + Ptr.Ptr Botan_pubkey_t + -> Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_load_sm2@ + + __defined at:__ @botan\/ffi.h:1502:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_sm2 :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @public_x@ + -> Botan_mp_t + -- ^ __C declaration:__ @public_y@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @curve_name@ + -> IO FC.CInt +botan_pubkey_load_sm2 = hs_bindgen_20d6e857fd1afd00 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_load_sm2@ +foreign import ccall safe "hs_bindgen_0c0278b215a5a943" hs_bindgen_0c0278b215a5a943 :: + Ptr.Ptr Botan_privkey_t + -> Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_load_sm2@ + + __defined at:__ @botan\/ffi.h:1508:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_sm2 :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @scalar@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @curve_name@ + -> IO FC.CInt +botan_privkey_load_sm2 = hs_bindgen_0c0278b215a5a943 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pubkey_load_sm2_enc@ +foreign import ccall safe "hs_bindgen_084c3247da47b79b" hs_bindgen_084c3247da47b79b :: + Ptr.Ptr Botan_pubkey_t + -> Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_load_sm2_enc@ + + __defined at:__ @botan\/ffi.h:1513:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_sm2_enc :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @public_x@ + -> Botan_mp_t + -- ^ __C declaration:__ @public_y@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @curve_name@ + -> IO FC.CInt +botan_pubkey_load_sm2_enc = + hs_bindgen_084c3247da47b79b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_privkey_load_sm2_enc@ +foreign import ccall safe "hs_bindgen_ca157d050b5829e0" hs_bindgen_ca157d050b5829e0 :: + Ptr.Ptr Botan_privkey_t + -> Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_load_sm2_enc@ + + __defined at:__ @botan\/ffi.h:1519:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_sm2_enc :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @scalar@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @curve_name@ + -> IO FC.CInt +botan_privkey_load_sm2_enc = + hs_bindgen_ca157d050b5829e0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pubkey_sm2_compute_za@ +foreign import ccall safe "hs_bindgen_dbb4320e2ae8455b" hs_bindgen_dbb4320e2ae8455b :: + Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_sm2_compute_za@ + + __defined at:__ @botan\/ffi.h:1524:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_sm2_compute_za :: + Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @ident@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hash_algo@ + -> Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_sm2_compute_za = + hs_bindgen_dbb4320e2ae8455b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pubkey_view_ec_public_point@ +foreign import ccall safe "hs_bindgen_812387d7bc8299df" hs_bindgen_812387d7bc8299df :: + Botan_pubkey_t + -> Botan_view_ctx + -> Botan_view_bin_fn + -> IO FC.CInt + +{-| View the uncompressed public point associated with the key + +__C declaration:__ @botan_pubkey_view_ec_public_point@ + +__defined at:__ @botan\/ffi.h:1534:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_view_ec_public_point :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_bin_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_pubkey_view_ec_public_point = + hs_bindgen_812387d7bc8299df + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pk_op_encrypt_create@ +foreign import ccall safe "hs_bindgen_4e4dc8b8a09ad4ad" hs_bindgen_4e4dc8b8a09ad4ad :: + Ptr.Ptr Botan_pk_op_encrypt_t + -> Botan_pubkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_encrypt_create@ + + __defined at:__ @botan\/ffi.h:1544:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_encrypt_create :: + Ptr.Ptr Botan_pk_op_encrypt_t + -- ^ __C declaration:__ @op@ + -> Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @padding@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_pk_op_encrypt_create = + hs_bindgen_4e4dc8b8a09ad4ad + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pk_op_encrypt_destroy@ +foreign import ccall safe "hs_bindgen_1726fe09f7857d92" hs_bindgen_1726fe09f7857d92 :: + Botan_pk_op_encrypt_t + -> IO FC.CInt + +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pk_op_encrypt_destroy@ + +__defined at:__ @botan\/ffi.h:1552:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_encrypt_destroy :: + Botan_pk_op_encrypt_t + -- ^ __C declaration:__ @op@ + -> IO FC.CInt +botan_pk_op_encrypt_destroy = + hs_bindgen_1726fe09f7857d92 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pk_op_encrypt_output_length@ +foreign import ccall safe "hs_bindgen_83ddf86cf7647e2e" hs_bindgen_83ddf86cf7647e2e :: + Botan_pk_op_encrypt_t + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_encrypt_output_length@ + + __defined at:__ @botan\/ffi.h:1554:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_encrypt_output_length :: + Botan_pk_op_encrypt_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ptext_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ctext_len@ + -> IO FC.CInt +botan_pk_op_encrypt_output_length = + hs_bindgen_83ddf86cf7647e2e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pk_op_encrypt@ +foreign import ccall safe "hs_bindgen_fad471132293642a" hs_bindgen_fad471132293642a :: + Botan_pk_op_encrypt_t + -> Botan_rng_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pk_op_encrypt' +-} +botan_pk_op_encrypt_wrapper :: + Botan_pk_op_encrypt_t + -- ^ __C declaration:__ @op@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @plaintext@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @plaintext_len@ + -> IO FC.CInt +botan_pk_op_encrypt_wrapper = + hs_bindgen_fad471132293642a + +{-| __C declaration:__ @botan_pk_op_encrypt@ + + __defined at:__ @botan\/ffi.h:1558:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_encrypt :: + Botan_pk_op_encrypt_t + -- ^ __C declaration:__ @op@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @plaintext@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @plaintext_len@ + -> IO FC.CInt +botan_pk_op_encrypt = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + HsBindgen.Runtime.IncompleteArray.withPtr x4 (\ptr6 -> + hs_bindgen_fad471132293642a x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x5) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pk_op_decrypt_create@ +foreign import ccall safe "hs_bindgen_cc0274c8e8845a16" hs_bindgen_cc0274c8e8845a16 :: + Ptr.Ptr Botan_pk_op_decrypt_t + -> Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_decrypt_create@ + + __defined at:__ @botan\/ffi.h:1570:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_decrypt_create :: + Ptr.Ptr Botan_pk_op_decrypt_t + -- ^ __C declaration:__ @op@ + -> Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @padding@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_pk_op_decrypt_create = + hs_bindgen_cc0274c8e8845a16 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pk_op_decrypt_destroy@ +foreign import ccall safe "hs_bindgen_1de958bfa72e3c97" hs_bindgen_1de958bfa72e3c97 :: + Botan_pk_op_decrypt_t + -> IO FC.CInt + +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pk_op_decrypt_destroy@ + +__defined at:__ @botan\/ffi.h:1578:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_decrypt_destroy :: + Botan_pk_op_decrypt_t + -- ^ __C declaration:__ @op@ + -> IO FC.CInt +botan_pk_op_decrypt_destroy = + hs_bindgen_1de958bfa72e3c97 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pk_op_decrypt_output_length@ +foreign import ccall safe "hs_bindgen_b3f515e95de17195" hs_bindgen_b3f515e95de17195 :: + Botan_pk_op_decrypt_t + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_decrypt_output_length@ + + __defined at:__ @botan\/ffi.h:1580:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_decrypt_output_length :: + Botan_pk_op_decrypt_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ctext_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ptext_len@ + -> IO FC.CInt +botan_pk_op_decrypt_output_length = + hs_bindgen_b3f515e95de17195 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pk_op_decrypt@ +foreign import ccall safe "hs_bindgen_37a41d251aa140a0" hs_bindgen_37a41d251aa140a0 :: + Botan_pk_op_decrypt_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pk_op_decrypt' +-} +botan_pk_op_decrypt_wrapper :: + Botan_pk_op_decrypt_t + -- ^ __C declaration:__ @op@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @ciphertext@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ciphertext_len@ + -> IO FC.CInt +botan_pk_op_decrypt_wrapper = + hs_bindgen_37a41d251aa140a0 + +{-| __C declaration:__ @botan_pk_op_decrypt@ + + __defined at:__ @botan\/ffi.h:1584:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_decrypt :: + Botan_pk_op_decrypt_t + -- ^ __C declaration:__ @op@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @ciphertext@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ciphertext_len@ + -> IO FC.CInt +botan_pk_op_decrypt = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + HsBindgen.Runtime.IncompleteArray.withPtr x3 (\ptr5 -> + hs_bindgen_37a41d251aa140a0 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x4) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pk_op_sign_create@ +foreign import ccall safe "hs_bindgen_e702d6b32b4c5e4d" hs_bindgen_e702d6b32b4c5e4d :: + Ptr.Ptr Botan_pk_op_sign_t + -> Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_sign_create@ + + __defined at:__ @botan\/ffi.h:1597:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_sign_create :: + Ptr.Ptr Botan_pk_op_sign_t + -- ^ __C declaration:__ @op@ + -> Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hash_and_padding@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_pk_op_sign_create = hs_bindgen_e702d6b32b4c5e4d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pk_op_sign_destroy@ +foreign import ccall safe "hs_bindgen_b2a8b9c62f6ec697" hs_bindgen_b2a8b9c62f6ec697 :: + Botan_pk_op_sign_t + -> IO FC.CInt + +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pk_op_sign_destroy@ + +__defined at:__ @botan\/ffi.h:1605:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_sign_destroy :: + Botan_pk_op_sign_t + -- ^ __C declaration:__ @op@ + -> IO FC.CInt +botan_pk_op_sign_destroy = + hs_bindgen_b2a8b9c62f6ec697 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pk_op_sign_output_length@ +foreign import ccall safe "hs_bindgen_c4e5229dd70842c2" hs_bindgen_c4e5229dd70842c2 :: + Botan_pk_op_sign_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_sign_output_length@ + + __defined at:__ @botan\/ffi.h:1607:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_sign_output_length :: + Botan_pk_op_sign_t + -- ^ __C declaration:__ @op@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @olen@ + -> IO FC.CInt +botan_pk_op_sign_output_length = + hs_bindgen_c4e5229dd70842c2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pk_op_sign_update@ +foreign import ccall safe "hs_bindgen_17d01bb61890d2e7" hs_bindgen_17d01bb61890d2e7 :: + Botan_pk_op_sign_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pk_op_sign_update' +-} +botan_pk_op_sign_update_wrapper :: + Botan_pk_op_sign_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @in'@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @in_len@ + -> IO FC.CInt +botan_pk_op_sign_update_wrapper = + hs_bindgen_17d01bb61890d2e7 + +{-| __C declaration:__ @botan_pk_op_sign_update@ + + __defined at:__ @botan\/ffi.h:1609:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_sign_update :: + Botan_pk_op_sign_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @in'@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @in_len@ + -> IO FC.CInt +botan_pk_op_sign_update = + \x0 -> + \x1 -> + \x2 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr3 -> + hs_bindgen_17d01bb61890d2e7 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pk_op_sign_finish@ +foreign import ccall safe "hs_bindgen_514e881cdd281f68" hs_bindgen_514e881cdd281f68 :: + Botan_pk_op_sign_t + -> Botan_rng_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_sign_finish@ + + __defined at:__ @botan\/ffi.h:1612:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_sign_finish :: + Botan_pk_op_sign_t + -- ^ __C declaration:__ @op@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @sig@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @sig_len@ + -> IO FC.CInt +botan_pk_op_sign_finish = hs_bindgen_514e881cdd281f68 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pk_op_verify_create@ +foreign import ccall safe "hs_bindgen_2b513128ec6831a8" hs_bindgen_2b513128ec6831a8 :: + Ptr.Ptr Botan_pk_op_verify_t + -> Botan_pubkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_verify_create@ + + __defined at:__ @botan\/ffi.h:1621:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_verify_create :: + Ptr.Ptr Botan_pk_op_verify_t + -- ^ __C declaration:__ @op@ + -> Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hash_and_padding@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_pk_op_verify_create = + hs_bindgen_2b513128ec6831a8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pk_op_verify_destroy@ +foreign import ccall safe "hs_bindgen_d22d427c67362256" hs_bindgen_d22d427c67362256 :: + Botan_pk_op_verify_t + -> IO FC.CInt + +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pk_op_verify_destroy@ + +__defined at:__ @botan\/ffi.h:1629:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_verify_destroy :: + Botan_pk_op_verify_t + -- ^ __C declaration:__ @op@ + -> IO FC.CInt +botan_pk_op_verify_destroy = + hs_bindgen_d22d427c67362256 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pk_op_verify_update@ +foreign import ccall safe "hs_bindgen_ed10c3c07a259217" hs_bindgen_ed10c3c07a259217 :: + Botan_pk_op_verify_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pk_op_verify_update' +-} +botan_pk_op_verify_update_wrapper :: + Botan_pk_op_verify_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @in'@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @in_len@ + -> IO FC.CInt +botan_pk_op_verify_update_wrapper = + hs_bindgen_ed10c3c07a259217 + +{-| __C declaration:__ @botan_pk_op_verify_update@ + + __defined at:__ @botan\/ffi.h:1631:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_verify_update :: + Botan_pk_op_verify_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @in'@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @in_len@ + -> IO FC.CInt +botan_pk_op_verify_update = + \x0 -> + \x1 -> + \x2 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr3 -> + hs_bindgen_ed10c3c07a259217 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pk_op_verify_finish@ +foreign import ccall safe "hs_bindgen_c551ee95e966107d" hs_bindgen_c551ee95e966107d :: + Botan_pk_op_verify_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pk_op_verify_finish' +-} +botan_pk_op_verify_finish_wrapper :: + Botan_pk_op_verify_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @sig@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @sig_len@ + -> IO FC.CInt +botan_pk_op_verify_finish_wrapper = + hs_bindgen_c551ee95e966107d + +{-| __C declaration:__ @botan_pk_op_verify_finish@ + + __defined at:__ @botan\/ffi.h:1632:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_verify_finish :: + Botan_pk_op_verify_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @sig@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @sig_len@ + -> IO FC.CInt +botan_pk_op_verify_finish = + \x0 -> + \x1 -> + \x2 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr3 -> + hs_bindgen_c551ee95e966107d x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pk_op_key_agreement_create@ +foreign import ccall safe "hs_bindgen_38eae892ae3a0d5c" hs_bindgen_38eae892ae3a0d5c :: + Ptr.Ptr Botan_pk_op_ka_t + -> Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_key_agreement_create@ + + __defined at:__ @botan\/ffi.h:1640:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_key_agreement_create :: + Ptr.Ptr Botan_pk_op_ka_t + -- ^ __C declaration:__ @op@ + -> Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @kdf@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_pk_op_key_agreement_create = + hs_bindgen_38eae892ae3a0d5c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pk_op_key_agreement_destroy@ +foreign import ccall safe "hs_bindgen_a3a5e9d8a8623615" hs_bindgen_a3a5e9d8a8623615 :: + Botan_pk_op_ka_t + -> IO FC.CInt + +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pk_op_key_agreement_destroy@ + +__defined at:__ @botan\/ffi.h:1648:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_key_agreement_destroy :: + Botan_pk_op_ka_t + -- ^ __C declaration:__ @op@ + -> IO FC.CInt +botan_pk_op_key_agreement_destroy = + hs_bindgen_a3a5e9d8a8623615 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pk_op_key_agreement_export_public@ +foreign import ccall safe "hs_bindgen_a6e802a718976f66" hs_bindgen_a6e802a718976f66 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_key_agreement_export_public@ + + __defined at:__ @botan\/ffi.h:1650:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_key_agreement_export_public :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_pk_op_key_agreement_export_public = + hs_bindgen_a6e802a718976f66 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pk_op_key_agreement_view_public@ +foreign import ccall safe "hs_bindgen_5d18ef95e49fe41b" hs_bindgen_5d18ef95e49fe41b :: + Botan_privkey_t + -> Botan_view_ctx + -> Botan_view_bin_fn + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_key_agreement_view_public@ + + __defined at:__ @botan\/ffi.h:1653:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_key_agreement_view_public :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_bin_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_pk_op_key_agreement_view_public = + hs_bindgen_5d18ef95e49fe41b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pk_op_key_agreement_size@ +foreign import ccall safe "hs_bindgen_35d5f46dbaa171e1" hs_bindgen_35d5f46dbaa171e1 :: + Botan_pk_op_ka_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_key_agreement_size@ + + __defined at:__ @botan\/ffi.h:1658:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_key_agreement_size :: + Botan_pk_op_ka_t + -- ^ __C declaration:__ @op@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_pk_op_key_agreement_size = + hs_bindgen_35d5f46dbaa171e1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pk_op_key_agreement@ +foreign import ccall safe "hs_bindgen_7f8dcc24297a9b18" hs_bindgen_7f8dcc24297a9b18 :: + Botan_pk_op_ka_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pk_op_key_agreement' +-} +botan_pk_op_key_agreement_wrapper :: + Botan_pk_op_ka_t + -- ^ __C declaration:__ @op@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @other_key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @other_key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> IO FC.CInt +botan_pk_op_key_agreement_wrapper = + hs_bindgen_7f8dcc24297a9b18 + +{-| __C declaration:__ @botan_pk_op_key_agreement@ + + __defined at:__ @botan\/ffi.h:1661:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_key_agreement :: + Botan_pk_op_ka_t + -- ^ __C declaration:__ @op@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @other_key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @other_key_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> IO FC.CInt +botan_pk_op_key_agreement = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + HsBindgen.Runtime.IncompleteArray.withPtr x5 (\ptr7 -> + HsBindgen.Runtime.IncompleteArray.withPtr x3 (\ptr8 -> + hs_bindgen_7f8dcc24297a9b18 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x6)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pk_op_kem_encrypt_create@ +foreign import ccall safe "hs_bindgen_54ba4b01fa6dd811" hs_bindgen_54ba4b01fa6dd811 :: + Ptr.Ptr Botan_pk_op_kem_encrypt_t + -> Botan_pubkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create@ + + __defined at:__ @botan\/ffi.h:1671:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_encrypt_create :: + Ptr.Ptr Botan_pk_op_kem_encrypt_t + -- ^ __C declaration:__ @op@ + -> Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @kdf@ + -> IO FC.CInt +botan_pk_op_kem_encrypt_create = + hs_bindgen_54ba4b01fa6dd811 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall safe "hs_bindgen_481c7ebe4670323a" hs_bindgen_481c7ebe4670323a :: + Botan_pk_op_kem_encrypt_t + -> IO FC.CInt + +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pk_op_kem_encrypt_destroy@ + +__defined at:__ @botan\/ffi.h:1679:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_encrypt_destroy :: + Botan_pk_op_kem_encrypt_t + -- ^ __C declaration:__ @op@ + -> IO FC.CInt +botan_pk_op_kem_encrypt_destroy = + hs_bindgen_481c7ebe4670323a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall safe "hs_bindgen_1d0e3a0f6697925d" hs_bindgen_1d0e3a0f6697925d :: + Botan_pk_op_kem_encrypt_t + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_shared_key_length@ + + __defined at:__ @botan\/ffi.h:1682:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_encrypt_shared_key_length :: + Botan_pk_op_kem_encrypt_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @desired_shared_key_length@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @output_shared_key_length@ + -> IO FC.CInt +botan_pk_op_kem_encrypt_shared_key_length = + hs_bindgen_1d0e3a0f6697925d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall safe "hs_bindgen_4133b673d82ae380" hs_bindgen_4133b673d82ae380 :: + Botan_pk_op_kem_encrypt_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_encapsulated_key_length@ + + __defined at:__ @botan\/ffi.h:1688:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_encrypt_encapsulated_key_length :: + Botan_pk_op_kem_encrypt_t + -- ^ __C declaration:__ @op@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @output_encapsulated_key_length@ + -> IO FC.CInt +botan_pk_op_kem_encrypt_encapsulated_key_length = + hs_bindgen_4133b673d82ae380 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall safe "hs_bindgen_e3542444b22a3c7e" hs_bindgen_e3542444b22a3c7e :: + Botan_pk_op_kem_encrypt_t + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pk_op_kem_encrypt_create_shared_key' +-} +botan_pk_op_kem_encrypt_create_shared_key_wrapper :: + Botan_pk_op_kem_encrypt_t + -- ^ __C declaration:__ @op@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @desired_shared_key_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @shared_key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @shared_key_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @encapsulated_key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @encapsulated_key_len@ + -> IO FC.CInt +botan_pk_op_kem_encrypt_create_shared_key_wrapper = + hs_bindgen_e3542444b22a3c7e + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create_shared_key@ + + __defined at:__ @botan\/ffi.h:1692:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_encrypt_create_shared_key :: + Botan_pk_op_kem_encrypt_t + -- ^ __C declaration:__ @op@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @desired_shared_key_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @shared_key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @shared_key_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @encapsulated_key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @encapsulated_key_len@ + -> IO FC.CInt +botan_pk_op_kem_encrypt_create_shared_key = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + \x8 -> + HsBindgen.Runtime.IncompleteArray.withPtr x2 (\ptr9 -> + hs_bindgen_e3542444b22a3c7e x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 x4 x5 x6 x7 x8) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pk_op_kem_decrypt_create@ +foreign import ccall safe "hs_bindgen_530943de1c943683" hs_bindgen_530943de1c943683 :: + Ptr.Ptr Botan_pk_op_kem_decrypt_t + -> Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_create@ + + __defined at:__ @botan\/ffi.h:1705:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_decrypt_create :: + Ptr.Ptr Botan_pk_op_kem_decrypt_t + -- ^ __C declaration:__ @op@ + -> Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @kdf@ + -> IO FC.CInt +botan_pk_op_kem_decrypt_create = + hs_bindgen_530943de1c943683 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall safe "hs_bindgen_0f51711cb9895c85" hs_bindgen_0f51711cb9895c85 :: + Botan_pk_op_kem_decrypt_t + -> IO FC.CInt + +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pk_op_kem_decrypt_destroy@ + +__defined at:__ @botan\/ffi.h:1713:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_decrypt_destroy :: + Botan_pk_op_kem_decrypt_t + -- ^ __C declaration:__ @op@ + -> IO FC.CInt +botan_pk_op_kem_decrypt_destroy = + hs_bindgen_0f51711cb9895c85 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall safe "hs_bindgen_de8a00f5bb2f4316" hs_bindgen_de8a00f5bb2f4316 :: + Botan_pk_op_kem_decrypt_t + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key_length@ + + __defined at:__ @botan\/ffi.h:1716:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_decrypt_shared_key_length :: + Botan_pk_op_kem_decrypt_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @desired_shared_key_length@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @output_shared_key_length@ + -> IO FC.CInt +botan_pk_op_kem_decrypt_shared_key_length = + hs_bindgen_de8a00f5bb2f4316 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall safe "hs_bindgen_aeed291522f49286" hs_bindgen_aeed291522f49286 :: + Botan_pk_op_kem_decrypt_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pk_op_kem_decrypt_shared_key' +-} +botan_pk_op_kem_decrypt_shared_key_wrapper :: + Botan_pk_op_kem_decrypt_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @encapsulated_key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @encapsulated_key_len@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @desired_shared_key_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @shared_key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @shared_key_len@ + -> IO FC.CInt +botan_pk_op_kem_decrypt_shared_key_wrapper = + hs_bindgen_aeed291522f49286 + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key@ + + __defined at:__ @botan\/ffi.h:1721:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_decrypt_shared_key :: + Botan_pk_op_kem_decrypt_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @encapsulated_key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @encapsulated_key_len@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @desired_shared_key_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @shared_key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @shared_key_len@ + -> IO FC.CInt +botan_pk_op_kem_decrypt_shared_key = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + HsBindgen.Runtime.IncompleteArray.withPtr x3 (\ptr8 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr9 -> + hs_bindgen_aeed291522f49286 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_pkcs_hash_id@ +foreign import ccall safe "hs_bindgen_f67c40f86a7234c7" hs_bindgen_f67c40f86a7234c7 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Signature Scheme Utility Functions + +__C declaration:__ @botan_pkcs_hash_id@ + +__defined at:__ @botan\/ffi.h:1735:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pkcs_hash_id :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hash_name@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pkcs_id@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @pkcs_id_len@ + -> IO FC.CInt +botan_pkcs_hash_id = hs_bindgen_f67c40f86a7234c7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mceies_encrypt@ +foreign import ccall safe "hs_bindgen_186c2cecc517c333" hs_bindgen_186c2cecc517c333 :: + Botan_pubkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_mceies_encrypt' +-} +botan_mceies_encrypt_wrapper :: + Botan_pubkey_t + -- ^ __C declaration:__ @mce_key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @aead@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @pt_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @ad@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ad_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @ct@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ct_len@ + -> IO FC.CInt +botan_mceies_encrypt_wrapper = + hs_bindgen_186c2cecc517c333 + +{-| __C declaration:__ @botan_mceies_encrypt@ + + __defined at:__ @botan\/ffi.h:1742:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mceies_encrypt :: + Botan_pubkey_t + -- ^ __C declaration:__ @mce_key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @aead@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @pt_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @ad@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ad_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @ct@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ct_len@ + -> IO FC.CInt +botan_mceies_encrypt = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + \x8 -> + HsBindgen.Runtime.IncompleteArray.withPtr x5 (\ptr9 -> + HsBindgen.Runtime.IncompleteArray.withPtr x3 (\ptr10 -> + hs_bindgen_186c2cecc517c333 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x6 x7 x8)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_mceies_decrypt@ +foreign import ccall safe "hs_bindgen_03e75310e36bb2f0" hs_bindgen_03e75310e36bb2f0 :: + Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_mceies_decrypt' +-} +botan_mceies_decrypt_wrapper :: + Botan_privkey_t + -- ^ __C declaration:__ @mce_key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @aead@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @ct@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ct_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @ad@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ad_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pt@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @pt_len@ + -> IO FC.CInt +botan_mceies_decrypt_wrapper = + hs_bindgen_03e75310e36bb2f0 + +{-| __C declaration:__ @botan_mceies_decrypt@ + + __defined at:__ @botan\/ffi.h:1753:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mceies_decrypt :: + Botan_privkey_t + -- ^ __C declaration:__ @mce_key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @aead@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @ct@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ct_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @ad@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ad_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pt@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @pt_len@ + -> IO FC.CInt +botan_mceies_decrypt = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + HsBindgen.Runtime.IncompleteArray.withPtr x4 (\ptr8 -> + HsBindgen.Runtime.IncompleteArray.withPtr x2 (\ptr9 -> + hs_bindgen_03e75310e36bb2f0 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_x509_cert_load@ +foreign import ccall safe "hs_bindgen_4986b485d9902959" hs_bindgen_4986b485d9902959 :: + Ptr.Ptr Botan_x509_cert_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_x509_cert_load' +-} +botan_x509_cert_load_wrapper :: + Ptr.Ptr Botan_x509_cert_t + -- ^ __C declaration:__ @cert_obj@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @cert@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @cert_len@ + -> IO FC.CInt +botan_x509_cert_load_wrapper = + hs_bindgen_4986b485d9902959 + +{-| __C declaration:__ @botan_x509_cert_load@ + + __defined at:__ @botan\/ffi.h:1765:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_load :: + Ptr.Ptr Botan_x509_cert_t + -- ^ __C declaration:__ @cert_obj@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @cert@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @cert_len@ + -> IO FC.CInt +botan_x509_cert_load = + \x0 -> + \x1 -> + \x2 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr3 -> + hs_bindgen_4986b485d9902959 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_x509_cert_load_file@ +foreign import ccall safe "hs_bindgen_8467d08ea11d2add" hs_bindgen_8467d08ea11d2add :: + Ptr.Ptr Botan_x509_cert_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_load_file@ + + __defined at:__ @botan\/ffi.h:1766:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_load_file :: + Ptr.Ptr Botan_x509_cert_t + -- ^ __C declaration:__ @cert_obj@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @filename@ + -> IO FC.CInt +botan_x509_cert_load_file = + hs_bindgen_8467d08ea11d2add + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_x509_cert_destroy@ +foreign import ccall safe "hs_bindgen_9badee90a48043a7" hs_bindgen_9badee90a48043a7 :: + Botan_x509_cert_t + -> IO FC.CInt + +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_x509_cert_destroy@ + +__defined at:__ @botan\/ffi.h:1771:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_destroy :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> IO FC.CInt +botan_x509_cert_destroy = hs_bindgen_9badee90a48043a7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_x509_cert_dup@ +foreign import ccall safe "hs_bindgen_1bd8e0027302e2d6" hs_bindgen_1bd8e0027302e2d6 :: + Ptr.Ptr Botan_x509_cert_t + -> Botan_x509_cert_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_dup@ + + __defined at:__ @botan\/ffi.h:1773:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_dup :: + Ptr.Ptr Botan_x509_cert_t + -- ^ __C declaration:__ @new_cert@ + -> Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> IO FC.CInt +botan_x509_cert_dup = hs_bindgen_1bd8e0027302e2d6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_x509_cert_get_time_starts@ +foreign import ccall safe "hs_bindgen_c6ac03597e6ccf51" hs_bindgen_c6ac03597e6ccf51 :: + Botan_x509_cert_t + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_get_time_starts@ + + __defined at:__ @botan\/ffi.h:1776:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_time_starts :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Ptr.Ptr FC.CChar + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_x509_cert_get_time_starts = + hs_bindgen_c6ac03597e6ccf51 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_x509_cert_get_time_expires@ +foreign import ccall safe "hs_bindgen_a20053710db534b7" hs_bindgen_a20053710db534b7 :: + Botan_x509_cert_t + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_get_time_expires@ + + __defined at:__ @botan\/ffi.h:1777:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_time_expires :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Ptr.Ptr FC.CChar + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_x509_cert_get_time_expires = + hs_bindgen_a20053710db534b7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_x509_cert_not_before@ +foreign import ccall safe "hs_bindgen_6366b5fd9db342d2" hs_bindgen_6366b5fd9db342d2 :: + Botan_x509_cert_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word64 + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_not_before@ + + __defined at:__ @botan\/ffi.h:1779:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_not_before :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word64 + -- ^ __C declaration:__ @time_since_epoch@ + -> IO FC.CInt +botan_x509_cert_not_before = + hs_bindgen_6366b5fd9db342d2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_x509_cert_not_after@ +foreign import ccall safe "hs_bindgen_5b0c3777e85fe7af" hs_bindgen_5b0c3777e85fe7af :: + Botan_x509_cert_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word64 + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_not_after@ + + __defined at:__ @botan\/ffi.h:1780:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_not_after :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word64 + -- ^ __C declaration:__ @time_since_epoch@ + -> IO FC.CInt +botan_x509_cert_not_after = + hs_bindgen_5b0c3777e85fe7af + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_x509_cert_get_fingerprint@ +foreign import ccall safe "hs_bindgen_ece3a0dd18d1ab10" hs_bindgen_ece3a0dd18d1ab10 :: + Botan_x509_cert_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_get_fingerprint@ + + __defined at:__ @botan\/ffi.h:1782:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_fingerprint :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hash@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_x509_cert_get_fingerprint = + hs_bindgen_ece3a0dd18d1ab10 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_x509_cert_get_serial_number@ +foreign import ccall safe "hs_bindgen_b4c92b110a490330" hs_bindgen_b4c92b110a490330 :: + Botan_x509_cert_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_get_serial_number@ + + __defined at:__ @botan\/ffi.h:1784:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_serial_number :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_x509_cert_get_serial_number = + hs_bindgen_b4c92b110a490330 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_x509_cert_get_authority_key_id@ +foreign import ccall safe "hs_bindgen_07757401581a4d69" hs_bindgen_07757401581a4d69 :: + Botan_x509_cert_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_get_authority_key_id@ + + __defined at:__ @botan\/ffi.h:1785:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_authority_key_id :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_x509_cert_get_authority_key_id = + hs_bindgen_07757401581a4d69 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_x509_cert_get_subject_key_id@ +foreign import ccall safe "hs_bindgen_4d80bc8df6a9adcd" hs_bindgen_4d80bc8df6a9adcd :: + Botan_x509_cert_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_get_subject_key_id@ + + __defined at:__ @botan\/ffi.h:1786:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_subject_key_id :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_x509_cert_get_subject_key_id = + hs_bindgen_4d80bc8df6a9adcd + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_x509_cert_get_public_key_bits@ +foreign import ccall safe "hs_bindgen_a3c54e76356ebe7e" hs_bindgen_a3c54e76356ebe7e :: + Botan_x509_cert_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_get_public_key_bits@ + + __defined at:__ @botan\/ffi.h:1788:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_public_key_bits :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_x509_cert_get_public_key_bits = + hs_bindgen_a3c54e76356ebe7e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_x509_cert_view_public_key_bits@ +foreign import ccall safe "hs_bindgen_7df7e952b5e2e7ef" hs_bindgen_7df7e952b5e2e7ef :: + Botan_x509_cert_t + -> Botan_view_ctx + -> Botan_view_bin_fn + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_view_public_key_bits@ + + __defined at:__ @botan\/ffi.h:1791:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_view_public_key_bits :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_bin_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_x509_cert_view_public_key_bits = + hs_bindgen_7df7e952b5e2e7ef + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_x509_cert_get_public_key@ +foreign import ccall safe "hs_bindgen_41f4b707a1e290d2" hs_bindgen_41f4b707a1e290d2 :: + Botan_x509_cert_t + -> Ptr.Ptr Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_get_public_key@ + + __defined at:__ @botan\/ffi.h:1796:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_public_key :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_x509_cert_get_public_key = + hs_bindgen_41f4b707a1e290d2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_x509_cert_get_issuer_dn@ +foreign import ccall safe "hs_bindgen_5dd3c16ca98467ce" hs_bindgen_5dd3c16ca98467ce :: + Botan_x509_cert_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_get_issuer_dn@ + + __defined at:__ @botan\/ffi.h:1799:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_issuer_dn :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @index@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_x509_cert_get_issuer_dn = + hs_bindgen_5dd3c16ca98467ce + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_x509_cert_get_subject_dn@ +foreign import ccall safe "hs_bindgen_ac9f6fba96565b35" hs_bindgen_ac9f6fba96565b35 :: + Botan_x509_cert_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_get_subject_dn@ + + __defined at:__ @botan\/ffi.h:1804:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_subject_dn :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @index@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_x509_cert_get_subject_dn = + hs_bindgen_ac9f6fba96565b35 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_x509_cert_to_string@ +foreign import ccall safe "hs_bindgen_eeea8f953b9e7ac3" hs_bindgen_eeea8f953b9e7ac3 :: + Botan_x509_cert_t + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_to_string@ + + __defined at:__ @botan\/ffi.h:1808:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_to_string :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Ptr.Ptr FC.CChar + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_x509_cert_to_string = + hs_bindgen_eeea8f953b9e7ac3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_x509_cert_view_as_string@ +foreign import ccall safe "hs_bindgen_8040877213664f5a" hs_bindgen_8040877213664f5a :: + Botan_x509_cert_t + -> Botan_view_ctx + -> Botan_view_str_fn + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_view_as_string@ + + __defined at:__ @botan\/ffi.h:1810:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_view_as_string :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_str_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_x509_cert_view_as_string = + hs_bindgen_8040877213664f5a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_x509_cert_allowed_usage@ +foreign import ccall safe "hs_bindgen_6398629a0cb69dc8" hs_bindgen_6398629a0cb69dc8 :: + Botan_x509_cert_t + -> FC.CUInt + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_allowed_usage@ + + __defined at:__ @botan\/ffi.h:1829:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_allowed_usage :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> FC.CUInt + -- ^ __C declaration:__ @key_usage@ + -> IO FC.CInt +botan_x509_cert_allowed_usage = + hs_bindgen_6398629a0cb69dc8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_x509_cert_hostname_match@ +foreign import ccall safe "hs_bindgen_6f67007c7bfcf586" hs_bindgen_6f67007c7bfcf586 :: + Botan_x509_cert_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Check if the certificate matches the specified hostname via alternative name or CN match. RFC 5280 wildcards also supported. + +__C declaration:__ @botan_x509_cert_hostname_match@ + +__defined at:__ @botan\/ffi.h:1835:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_hostname_match :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hostname@ + -> IO FC.CInt +botan_x509_cert_hostname_match = + hs_bindgen_6f67007c7bfcf586 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_x509_cert_verify@ +foreign import ccall safe "hs_bindgen_4b0a8ad1a770e044" hs_bindgen_4b0a8ad1a770e044 :: + Ptr.Ptr FC.CInt + -> Botan_x509_cert_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word64 + -> IO FC.CInt + +{-| Returns 0 if the validation was successful, 1 if validation failed, and negative on error. A status code with details is written to *validation_result + + Intermediates or trusted lists can be null Trusted path can be null + +__C declaration:__ @botan_x509_cert_verify@ + +__defined at:__ @botan\/ffi.h:1845:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_verify :: + Ptr.Ptr FC.CInt + -- ^ __C declaration:__ @validation_result@ + -> Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t + -- ^ __C declaration:__ @intermediates@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @intermediates_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t + -- ^ __C declaration:__ @trusted@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @trusted_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @trusted_path@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @required_strength@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hostname@ + -> HsBindgen.Runtime.Prelude.Word64 + -- ^ __C declaration:__ @reference_time@ + -> IO FC.CInt +botan_x509_cert_verify = hs_bindgen_4b0a8ad1a770e044 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_x509_cert_validation_status@ +foreign import ccall safe "hs_bindgen_e73f0a5e20541b48" hs_bindgen_e73f0a5e20541b48 :: + FC.CInt + -> IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) + +{-| Returns a pointer to a static character string explaining the status code, or else NULL if unknown. + +__C declaration:__ @botan_x509_cert_validation_status@ + +__defined at:__ @botan\/ffi.h:1861:35@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_validation_status :: + FC.CInt + -- ^ __C declaration:__ @code@ + -> IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_x509_cert_validation_status = + hs_bindgen_e73f0a5e20541b48 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_x509_crl_load_file@ +foreign import ccall safe "hs_bindgen_e62ed3f6a970dbe9" hs_bindgen_e62ed3f6a970dbe9 :: + Ptr.Ptr Botan_x509_crl_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_crl_load_file@ + + __defined at:__ @botan\/ffi.h:1869:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_crl_load_file :: + Ptr.Ptr Botan_x509_crl_t + -- ^ __C declaration:__ @crl_obj@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @crl_path@ + -> IO FC.CInt +botan_x509_crl_load_file = + hs_bindgen_e62ed3f6a970dbe9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_x509_crl_load@ +foreign import ccall safe "hs_bindgen_5b86eb8c65a38a21" hs_bindgen_5b86eb8c65a38a21 :: + Ptr.Ptr Botan_x509_crl_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_x509_crl_load' +-} +botan_x509_crl_load_wrapper :: + Ptr.Ptr Botan_x509_crl_t + -- ^ __C declaration:__ @crl_obj@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @crl_bits@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @crl_bits_len@ + -> IO FC.CInt +botan_x509_crl_load_wrapper = + hs_bindgen_5b86eb8c65a38a21 + +{-| __C declaration:__ @botan_x509_crl_load@ + + __defined at:__ @botan\/ffi.h:1870:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_crl_load :: + Ptr.Ptr Botan_x509_crl_t + -- ^ __C declaration:__ @crl_obj@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @crl_bits@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @crl_bits_len@ + -> IO FC.CInt +botan_x509_crl_load = + \x0 -> + \x1 -> + \x2 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr3 -> + hs_bindgen_5b86eb8c65a38a21 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_x509_crl_destroy@ +foreign import ccall safe "hs_bindgen_ff6579b4f28d6ff6" hs_bindgen_ff6579b4f28d6ff6 :: + Botan_x509_crl_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_crl_destroy@ + + __defined at:__ @botan\/ffi.h:1872:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_crl_destroy :: + Botan_x509_crl_t + -- ^ __C declaration:__ @crl@ + -> IO FC.CInt +botan_x509_crl_destroy = hs_bindgen_ff6579b4f28d6ff6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_x509_is_revoked@ +foreign import ccall safe "hs_bindgen_27d7cdbd090a4578" hs_bindgen_27d7cdbd090a4578 :: + Botan_x509_crl_t + -> Botan_x509_cert_t + -> IO FC.CInt + +{-| Given a CRL and a certificate, check if the certificate is revoked on that particular CRL + +__C declaration:__ @botan_x509_is_revoked@ + +__defined at:__ @botan\/ffi.h:1878:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_x509_is_revoked :: + Botan_x509_crl_t + -- ^ __C declaration:__ @crl@ + -> Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> IO FC.CInt +botan_x509_is_revoked = hs_bindgen_27d7cdbd090a4578 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_x509_cert_verify_with_crl@ +foreign import ccall safe "hs_bindgen_348db2408ee7dbbb" hs_bindgen_348db2408ee7dbbb :: + Ptr.Ptr FC.CInt + -> Botan_x509_cert_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_crl_t + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word64 + -> IO FC.CInt + +{-| Different flavor of `botan_x509_cert_verify`, supports revocation lists. CRLs are passed as an array, same as intermediates and trusted CAs + +__C declaration:__ @botan_x509_cert_verify_with_crl@ + +__defined at:__ @botan\/ffi.h:1884:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_verify_with_crl :: + Ptr.Ptr FC.CInt + -- ^ __C declaration:__ @validation_result@ + -> Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t + -- ^ __C declaration:__ @intermediates@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @intermediates_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t + -- ^ __C declaration:__ @trusted@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @trusted_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_crl_t + -- ^ __C declaration:__ @crls@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @crls_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @trusted_path@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @required_strength@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hostname@ + -> HsBindgen.Runtime.Prelude.Word64 + -- ^ __C declaration:__ @reference_time@ + -> IO FC.CInt +botan_x509_cert_verify_with_crl = + hs_bindgen_348db2408ee7dbbb + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_key_wrap3394@ +foreign import ccall safe "hs_bindgen_4b5a7a61314aff0a" hs_bindgen_4b5a7a61314aff0a :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_key_wrap3394' +-} +botan_key_wrap3394_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @kek@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @kek_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @wrapped_key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @wrapped_key_len@ + -> IO FC.CInt +botan_key_wrap3394_wrapper = + hs_bindgen_4b5a7a61314aff0a + +{-| Key wrapping as per RFC 3394 + +__C declaration:__ @botan_key_wrap3394@ + +__defined at:__ @botan\/ffi.h:1903:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_key_wrap3394 :: + HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @kek@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @kek_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @wrapped_key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @wrapped_key_len@ + -> IO FC.CInt +botan_key_wrap3394 = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + HsBindgen.Runtime.IncompleteArray.withPtr x2 (\ptr6 -> + HsBindgen.Runtime.IncompleteArray.withPtr x0 (\ptr7 -> + hs_bindgen_4b5a7a61314aff0a (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_key_unwrap3394@ +foreign import ccall safe "hs_bindgen_f7ea1291ddceb60c" hs_bindgen_f7ea1291ddceb60c :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_key_unwrap3394' +-} +botan_key_unwrap3394_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @wrapped_key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @wrapped_key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @kek@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @kek_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> IO FC.CInt +botan_key_unwrap3394_wrapper = + hs_bindgen_f7ea1291ddceb60c + +{-| __C declaration:__ @botan_key_unwrap3394@ + + __defined at:__ @botan\/ffi.h:1909:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_key_unwrap3394 :: + HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @wrapped_key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @wrapped_key_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @kek@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @kek_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> IO FC.CInt +botan_key_unwrap3394 = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + HsBindgen.Runtime.IncompleteArray.withPtr x2 (\ptr6 -> + HsBindgen.Runtime.IncompleteArray.withPtr x0 (\ptr7 -> + hs_bindgen_f7ea1291ddceb60c (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_nist_kw_enc@ +foreign import ccall safe "hs_bindgen_2f2fc3344aa6deb7" hs_bindgen_2f2fc3344aa6deb7 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> FC.CInt + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_nist_kw_enc' +-} +botan_nist_kw_enc_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cipher_algo@ + -> FC.CInt + -- ^ __C declaration:__ @padded@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @kek@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @kek_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @wrapped_key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @wrapped_key_len@ + -> IO FC.CInt +botan_nist_kw_enc_wrapper = + hs_bindgen_2f2fc3344aa6deb7 + +{-| __C declaration:__ @botan_nist_kw_enc@ + + __defined at:__ @botan\/ffi.h:1914:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_nist_kw_enc :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cipher_algo@ + -> FC.CInt + -- ^ __C declaration:__ @padded@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @kek@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @kek_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @wrapped_key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @wrapped_key_len@ + -> IO FC.CInt +botan_nist_kw_enc = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + HsBindgen.Runtime.IncompleteArray.withPtr x4 (\ptr8 -> + HsBindgen.Runtime.IncompleteArray.withPtr x2 (\ptr9 -> + hs_bindgen_2f2fc3344aa6deb7 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_nist_kw_dec@ +foreign import ccall safe "hs_bindgen_7568303b7f7f274a" hs_bindgen_7568303b7f7f274a :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> FC.CInt + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_nist_kw_dec' +-} +botan_nist_kw_dec_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cipher_algo@ + -> FC.CInt + -- ^ __C declaration:__ @padded@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @wrapped_key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @wrapped_key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @kek@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @kek_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> IO FC.CInt +botan_nist_kw_dec_wrapper = + hs_bindgen_7568303b7f7f274a + +{-| __C declaration:__ @botan_nist_kw_dec@ + + __defined at:__ @botan\/ffi.h:1920:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_nist_kw_dec :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cipher_algo@ + -> FC.CInt + -- ^ __C declaration:__ @padded@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @wrapped_key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @wrapped_key_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @kek@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @kek_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> IO FC.CInt +botan_nist_kw_dec = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + HsBindgen.Runtime.IncompleteArray.withPtr x4 (\ptr8 -> + HsBindgen.Runtime.IncompleteArray.withPtr x2 (\ptr9 -> + hs_bindgen_7568303b7f7f274a x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_hotp_init@ +foreign import ccall safe "hs_bindgen_2e976ba196051b1d" hs_bindgen_2e976ba196051b1d :: + Ptr.Ptr Botan_hotp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_hotp_init' +-} +botan_hotp_init_wrapper :: + Ptr.Ptr Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hash_algo@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @digits@ + -> IO FC.CInt +botan_hotp_init_wrapper = hs_bindgen_2e976ba196051b1d + +{-| Initialize a HOTP instance + +__C declaration:__ @botan_hotp_init@ + +__defined at:__ @botan\/ffi.h:1935:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_init :: + Ptr.Ptr Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hash_algo@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @digits@ + -> IO FC.CInt +botan_hotp_init = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr5 -> + hs_bindgen_2e976ba196051b1d x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_hotp_destroy@ +foreign import ccall safe "hs_bindgen_deb8b0ce66185c11" hs_bindgen_deb8b0ce66185c11 :: + Botan_hotp_t + -> IO FC.CInt + +{-| Destroy a HOTP instance + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_hotp_destroy@ + +__defined at:__ @botan\/ffi.h:1945:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_destroy :: + Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> IO FC.CInt +botan_hotp_destroy = hs_bindgen_deb8b0ce66185c11 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_hotp_generate@ +foreign import ccall safe "hs_bindgen_56be02786eae2eb6" hs_bindgen_56be02786eae2eb6 :: + Botan_hotp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> HsBindgen.Runtime.Prelude.Word64 + -> IO FC.CInt + +{-| Generate a HOTP code for the provided counter + +__C declaration:__ @botan_hotp_generate@ + +__defined at:__ @botan\/ffi.h:1951:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_generate :: + Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @hotp_code@ + -> HsBindgen.Runtime.Prelude.Word64 + -- ^ __C declaration:__ @hotp_counter@ + -> IO FC.CInt +botan_hotp_generate = hs_bindgen_56be02786eae2eb6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_hotp_check@ +foreign import ccall safe "hs_bindgen_8a289fd4d98dbdbe" hs_bindgen_8a289fd4d98dbdbe :: + Botan_hotp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word64 + -> HsBindgen.Runtime.Prelude.Word32 + -> HsBindgen.Runtime.Prelude.Word64 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Verify a HOTP code + +__C declaration:__ @botan_hotp_check@ + +__defined at:__ @botan\/ffi.h:1959:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_check :: + Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word64 + -- ^ __C declaration:__ @next_hotp_counter@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @hotp_code@ + -> HsBindgen.Runtime.Prelude.Word64 + -- ^ __C declaration:__ @hotp_counter@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @resync_range@ + -> IO FC.CInt +botan_hotp_check = hs_bindgen_8a289fd4d98dbdbe + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_totp_init@ +foreign import ccall safe "hs_bindgen_9737f2d9690025ef" hs_bindgen_9737f2d9690025ef :: + Ptr.Ptr Botan_totp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_totp_init' +-} +botan_totp_init_wrapper :: + Ptr.Ptr Botan_totp_t + -- ^ __C declaration:__ @totp@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hash_algo@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @digits@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @time_step@ + -> IO FC.CInt +botan_totp_init_wrapper = hs_bindgen_9737f2d9690025ef + +{-| Initialize a TOTP instance + +__C declaration:__ @botan_totp_init@ + +__defined at:__ @botan\/ffi.h:1976:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_init :: + Ptr.Ptr Botan_totp_t + -- ^ __C declaration:__ @totp@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hash_algo@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @digits@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @time_step@ + -> IO FC.CInt +botan_totp_init = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr6 -> + hs_bindgen_9737f2d9690025ef x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x2 x3 x4 x5) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_totp_destroy@ +foreign import ccall safe "hs_bindgen_4e4a43059f0ed259" hs_bindgen_4e4a43059f0ed259 :: + Botan_totp_t + -> IO FC.CInt + +{-| Destroy a TOTP instance + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_totp_destroy@ + +__defined at:__ @botan\/ffi.h:1987:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_destroy :: + Botan_totp_t + -- ^ __C declaration:__ @totp@ + -> IO FC.CInt +botan_totp_destroy = hs_bindgen_4e4a43059f0ed259 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_totp_generate@ +foreign import ccall safe "hs_bindgen_3efbcbac9fa85052" hs_bindgen_3efbcbac9fa85052 :: + Botan_totp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> HsBindgen.Runtime.Prelude.Word64 + -> IO FC.CInt + +{-| Generate a TOTP code for the provided timestamp + + [__@totp@ /(input)/__]: the TOTP object + + [__@totp_code@ /(input)/__]: the OTP code will be written here + + [__@timestamp@ /(input)/__]: the current local timestamp + +__C declaration:__ @botan_totp_generate@ + +__defined at:__ @botan\/ffi.h:1996:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_generate :: + Botan_totp_t + {- ^ + + [__@totp@ /(input)/__]: the TOTP object + + __C declaration:__ @totp@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + {- ^ + + [__@totp_code@ /(input)/__]: the OTP code will be written here + + __C declaration:__ @totp_code@ + -} + -> HsBindgen.Runtime.Prelude.Word64 + {- ^ + + [__@timestamp@ /(input)/__]: the current local timestamp + + __C declaration:__ @timestamp@ + -} + -> IO FC.CInt +botan_totp_generate = hs_bindgen_3efbcbac9fa85052 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_totp_check@ +foreign import ccall safe "hs_bindgen_ad0aa2ce620fbb15" hs_bindgen_ad0aa2ce620fbb15 :: + Botan_totp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> HsBindgen.Runtime.Prelude.Word64 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Verify a TOTP code + + [__@totp@ /(input)/__]: the TOTP object + + [__@totp_code@ /(input)/__]: the presented OTP + + [__@timestamp@ /(input)/__]: the current local timestamp + + [__@acceptable_clock_drift@ /(input)/__]: specifies the acceptable amount of clock drift (in terms of time steps) between the two hosts. + +__C declaration:__ @botan_totp_check@ + +__defined at:__ @botan\/ffi.h:2009:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_check :: + Botan_totp_t + {- ^ + + [__@totp@ /(input)/__]: the TOTP object + + __C declaration:__ @totp@ + -} + -> HsBindgen.Runtime.Prelude.Word32 + {- ^ + + [__@totp_code@ /(input)/__]: the presented OTP + + __C declaration:__ @totp_code@ + -} + -> HsBindgen.Runtime.Prelude.Word64 + {- ^ + + [__@timestamp@ /(input)/__]: the current local timestamp + + __C declaration:__ @timestamp@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@acceptable_clock_drift@ /(input)/__]: specifies the acceptable amount of clock drift (in terms of time steps) between the two hosts. + + __C declaration:__ @acceptable_clock_drift@ + -} + -> IO FC.CInt +botan_totp_check = hs_bindgen_ad0aa2ce620fbb15 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_fpe_fe1_init@ +foreign import ccall safe "hs_bindgen_7ce55945192576f1" hs_bindgen_7ce55945192576f1 :: + Ptr.Ptr Botan_fpe_t + -> Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| Pointer-based API for 'botan_fpe_fe1_init' +-} +botan_fpe_fe1_init_wrapper :: + Ptr.Ptr Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> Botan_mp_t + -- ^ __C declaration:__ @n@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @rounds@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_fpe_fe1_init_wrapper = + hs_bindgen_7ce55945192576f1 + +{-| __C declaration:__ @botan_fpe_fe1_init@ + + __defined at:__ @botan\/ffi.h:2024:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_fpe_fe1_init :: + Ptr.Ptr Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> Botan_mp_t + -- ^ __C declaration:__ @n@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @rounds@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_fpe_fe1_init = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + HsBindgen.Runtime.IncompleteArray.withPtr x2 (\ptr6 -> + hs_bindgen_7ce55945192576f1 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_fpe_destroy@ +foreign import ccall safe "hs_bindgen_3203fd241a880758" hs_bindgen_3203fd241a880758 :: + Botan_fpe_t + -> IO FC.CInt + +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_fpe_destroy@ + +__defined at:__ @botan\/ffi.h:2032:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_fpe_destroy :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> IO FC.CInt +botan_fpe_destroy = hs_bindgen_3203fd241a880758 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_fpe_encrypt@ +foreign import ccall safe "hs_bindgen_2bde5a2597219f11" hs_bindgen_2bde5a2597219f11 :: + Botan_fpe_t + -> Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_fpe_encrypt' +-} +botan_fpe_encrypt_wrapper :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @tweak@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @tweak_len@ + -> IO FC.CInt +botan_fpe_encrypt_wrapper = + hs_bindgen_2bde5a2597219f11 + +{-| __C declaration:__ @botan_fpe_encrypt@ + + __defined at:__ @botan\/ffi.h:2035:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_fpe_encrypt :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @tweak@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @tweak_len@ + -> IO FC.CInt +botan_fpe_encrypt = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + HsBindgen.Runtime.IncompleteArray.withPtr x2 (\ptr4 -> + hs_bindgen_2bde5a2597219f11 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_fpe_decrypt@ +foreign import ccall safe "hs_bindgen_2208701a33226747" hs_bindgen_2208701a33226747 :: + Botan_fpe_t + -> Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_fpe_decrypt' +-} +botan_fpe_decrypt_wrapper :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @tweak@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @tweak_len@ + -> IO FC.CInt +botan_fpe_decrypt_wrapper = + hs_bindgen_2208701a33226747 + +{-| __C declaration:__ @botan_fpe_decrypt@ + + __defined at:__ @botan\/ffi.h:2038:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_fpe_decrypt :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @tweak@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @tweak_len@ + -> IO FC.CInt +botan_fpe_decrypt = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + HsBindgen.Runtime.IncompleteArray.withPtr x2 (\ptr4 -> + hs_bindgen_2208701a33226747 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_srp6_server_session_init@ +foreign import ccall safe "hs_bindgen_a82ce61ed5a2b021" hs_bindgen_a82ce61ed5a2b021 :: + Ptr.Ptr Botan_srp6_server_session_t + -> IO FC.CInt + +{-| Initialize an SRP-6 server session object + + [__@srp6@ /(input)/__]: SRP-6 server session object + +__C declaration:__ @botan_srp6_server_session_init@ + +__defined at:__ @botan\/ffi.h:2050:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_srp6_server_session_init :: + Ptr.Ptr Botan_srp6_server_session_t + {- ^ + + [__@srp6@ /(input)/__]: SRP-6 server session object + + __C declaration:__ @srp6@ + -} + -> IO FC.CInt +botan_srp6_server_session_init = + hs_bindgen_a82ce61ed5a2b021 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_srp6_server_session_destroy@ +foreign import ccall safe "hs_bindgen_f093eecb19f6f1dd" hs_bindgen_f093eecb19f6f1dd :: + Botan_srp6_server_session_t + -> IO FC.CInt + +{-| Frees all resources of the SRP-6 server session object + + [__@srp6@ /(input)/__]: SRP-6 server session object + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_srp6_server_session_destroy@ + +__defined at:__ @botan\/ffi.h:2058:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_srp6_server_session_destroy :: + Botan_srp6_server_session_t + {- ^ + + [__@srp6@ /(input)/__]: SRP-6 server session object + + __C declaration:__ @srp6@ + -} + -> IO FC.CInt +botan_srp6_server_session_destroy = + hs_bindgen_f093eecb19f6f1dd + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_srp6_server_session_step1@ +foreign import ccall safe "hs_bindgen_480522cca5289634" hs_bindgen_480522cca5289634 :: + Botan_srp6_server_session_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Botan_rng_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_srp6_server_session_step1' +-} +botan_srp6_server_session_step1_wrapper :: + Botan_srp6_server_session_t + {- ^ + + [__@srp6@ /(input)/__]: SRP-6 server session object + + __C declaration:__ @srp6@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@verifier@ /(input)/__]: the verification value saved from client registration + + __C declaration:__ @verifier@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@verifier_len@ /(input)/__]: SRP-6 verifier value length + + __C declaration:__ @verifier_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@group_id@ /(input)/__]: the SRP group id + + __C declaration:__ @group_id@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@hash_id@ /(input)/__]: the SRP hash in use + + __C declaration:__ @hash_id@ + -} + -> Botan_rng_t + {- ^ + + [__@rng_obj@ /(input)/__]: a random number generator object + + __C declaration:__ @rng_obj@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @b_pub@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @b_pub_len@ + -> IO FC.CInt +botan_srp6_server_session_step1_wrapper = + hs_bindgen_480522cca5289634 + +{-| SRP-6 Server side step 1 + + [__@srp6@ /(input)/__]: SRP-6 server session object + + [__@verifier@ /(input)/__]: the verification value saved from client registration + + [__@verifier_len@ /(input)/__]: SRP-6 verifier value length + + [__@group_id@ /(input)/__]: the SRP group id + + [__@hash_id@ /(input)/__]: the SRP hash in use + + [__@rng_obj@ /(input)/__]: a random number generator object + + [__@B_pub@ /(input)/__]: out buffer to store the SRP-6 B value + + [__@B_pub_len@ /(input)/__]: SRP-6 B value length + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_srp6_server_session_step1@ + +__defined at:__ @botan\/ffi.h:2073:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_srp6_server_session_step1 :: + Botan_srp6_server_session_t + {- ^ + + [__@srp6@ /(input)/__]: SRP-6 server session object + + __C declaration:__ @srp6@ + -} + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@verifier@ /(input)/__]: the verification value saved from client registration + + __C declaration:__ @verifier@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@verifier_len@ /(input)/__]: SRP-6 verifier value length + + __C declaration:__ @verifier_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@group_id@ /(input)/__]: the SRP group id + + __C declaration:__ @group_id@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@hash_id@ /(input)/__]: the SRP hash in use + + __C declaration:__ @hash_id@ + -} + -> Botan_rng_t + {- ^ + + [__@rng_obj@ /(input)/__]: a random number generator object + + __C declaration:__ @rng_obj@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @b_pub@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @b_pub_len@ + -> IO FC.CInt +botan_srp6_server_session_step1 = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr8 -> + hs_bindgen_480522cca5289634 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x2 x3 x4 x5 x6 x7) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_srp6_server_session_step2@ +foreign import ccall safe "hs_bindgen_bfb61084eb26c979" hs_bindgen_bfb61084eb26c979 :: + Botan_srp6_server_session_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_srp6_server_session_step2' +-} +botan_srp6_server_session_step2_wrapper :: + Botan_srp6_server_session_t + {- ^ + + [__@srp6@ /(input)/__]: SRP-6 server session object + + __C declaration:__ @srp6@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @a@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @a_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@key@ /(input)/__]: out buffer to store the symmetric key value + + __C declaration:__ @key@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@key_len@ /(input)/__]: symmetric key length + + __C declaration:__ @key_len@ + -} + -> IO FC.CInt +botan_srp6_server_session_step2_wrapper = + hs_bindgen_bfb61084eb26c979 + +{-| SRP-6 Server side step 2 + + [__@srp6@ /(input)/__]: SRP-6 server session object + + [__@A@ /(input)/__]: the client's value + + [__@A_len@ /(input)/__]: the client's value length + + [__@key@ /(input)/__]: out buffer to store the symmetric key value + + [__@key_len@ /(input)/__]: symmetric key length + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_srp6_server_session_step2@ + +__defined at:__ @botan\/ffi.h:2089:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_srp6_server_session_step2 :: + Botan_srp6_server_session_t + {- ^ + + [__@srp6@ /(input)/__]: SRP-6 server session object + + __C declaration:__ @srp6@ + -} + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @a@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @a_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@key@ /(input)/__]: out buffer to store the symmetric key value + + __C declaration:__ @key@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@key_len@ /(input)/__]: symmetric key length + + __C declaration:__ @key_len@ + -} + -> IO FC.CInt +botan_srp6_server_session_step2 = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr5 -> + hs_bindgen_bfb61084eb26c979 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_srp6_generate_verifier@ +foreign import ccall safe "hs_bindgen_bb59be19f1727b3d" hs_bindgen_bb59be19f1727b3d :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_srp6_generate_verifier' +-} +botan_srp6_generate_verifier_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@identifier@ /(input)/__]: a username or other client identifier + + __C declaration:__ @identifier@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@password@ /(input)/__]: the secret used to authenticate user + + __C declaration:__ @password@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@salt@ /(input)/__]: a randomly chosen value, at least 128 bits long + + __C declaration:__ @salt@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@salt_len@ /(input)/__]: the length of salt + + __C declaration:__ @salt_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@group_id@ /(input)/__]: specifies the shared SRP group + + __C declaration:__ @group_id@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@hash_id@ /(input)/__]: specifies a secure hash function + + __C declaration:__ @hash_id@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@verifier@ /(input)/__]: out buffer to store the SRP-6 verifier value + + __C declaration:__ @verifier@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@verifier_len@ /(input)/__]: SRP-6 verifier value length + + __C declaration:__ @verifier_len@ + -} + -> IO FC.CInt +botan_srp6_generate_verifier_wrapper = + hs_bindgen_bb59be19f1727b3d + +{-| Generate a new SRP-6 verifier + + [__@identifier@ /(input)/__]: a username or other client identifier + + [__@password@ /(input)/__]: the secret used to authenticate user + + [__@salt@ /(input)/__]: a randomly chosen value, at least 128 bits long + + [__@salt_len@ /(input)/__]: the length of salt + + [__@group_id@ /(input)/__]: specifies the shared SRP group + + [__@hash_id@ /(input)/__]: specifies a secure hash function + + [__@verifier@ /(input)/__]: out buffer to store the SRP-6 verifier value + + [__@verifier_len@ /(input)/__]: SRP-6 verifier value length + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_srp6_generate_verifier@ + +__defined at:__ @botan\/ffi.h:2106:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_srp6_generate_verifier :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@identifier@ /(input)/__]: a username or other client identifier + + __C declaration:__ @identifier@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@password@ /(input)/__]: the secret used to authenticate user + + __C declaration:__ @password@ + -} + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@salt@ /(input)/__]: a randomly chosen value, at least 128 bits long + + __C declaration:__ @salt@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@salt_len@ /(input)/__]: the length of salt + + __C declaration:__ @salt_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@group_id@ /(input)/__]: specifies the shared SRP group + + __C declaration:__ @group_id@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@hash_id@ /(input)/__]: specifies a secure hash function + + __C declaration:__ @hash_id@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@verifier@ /(input)/__]: out buffer to store the SRP-6 verifier value + + __C declaration:__ @verifier@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@verifier_len@ /(input)/__]: SRP-6 verifier value length + + __C declaration:__ @verifier_len@ + -} + -> IO FC.CInt +botan_srp6_generate_verifier = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + HsBindgen.Runtime.IncompleteArray.withPtr x2 (\ptr8 -> + hs_bindgen_bb59be19f1727b3d x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x3 x4 x5 x6 x7) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_srp6_client_agree@ +foreign import ccall safe "hs_bindgen_94d61a874d7e2184" hs_bindgen_94d61a874d7e2184 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Botan_rng_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_srp6_client_agree' +-} +botan_srp6_client_agree_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@username@ /(input)/__]: the username we are attempting login for + + __C declaration:__ @username@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@password@ /(input)/__]: the password we are attempting to use + + __C declaration:__ @password@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@group_id@ /(input)/__]: specifies the shared SRP group + + __C declaration:__ @group_id@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@hash_id@ /(input)/__]: specifies a secure hash function + + __C declaration:__ @hash_id@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@salt@ /(input)/__]: is the salt value sent by the server + + __C declaration:__ @salt@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@salt_len@ /(input)/__]: the length of salt + + __C declaration:__ @salt_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @b@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @b_len@ + -> Botan_rng_t + {- ^ + + [__@rng_obj@ /(input)/__]: is a random number generator object + + __C declaration:__ @rng_obj@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @a@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @a_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @k@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @k_len@ + -> IO FC.CInt +botan_srp6_client_agree_wrapper = + hs_bindgen_94d61a874d7e2184 + +{-| SRP6a Client side + + [__@username@ /(input)/__]: the username we are attempting login for + + [__@password@ /(input)/__]: the password we are attempting to use + + [__@group_id@ /(input)/__]: specifies the shared SRP group + + [__@hash_id@ /(input)/__]: specifies a secure hash function + + [__@salt@ /(input)/__]: is the salt value sent by the server + + [__@salt_len@ /(input)/__]: the length of salt + + [__@B@ /(input)/__]: is the server's public value + + [__@B_len@ /(input)/__]: is the server's public value length + + [__@rng_obj@ /(input)/__]: is a random number generator object + + [__@A@ /(input)/__]: out buffer to store the SRP-6 A value + + [__@A_len@ /(input)/__]: SRP-6 A verifier value length + + [__@K@ /(input)/__]: out buffer to store the symmetric value + + [__@K_len@ /(input)/__]: symmetric key length + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_srp6_client_agree@ + +__defined at:__ @botan\/ffi.h:2129:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_srp6_client_agree :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@username@ /(input)/__]: the username we are attempting login for + + __C declaration:__ @username@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@password@ /(input)/__]: the password we are attempting to use + + __C declaration:__ @password@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@group_id@ /(input)/__]: specifies the shared SRP group + + __C declaration:__ @group_id@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@hash_id@ /(input)/__]: specifies a secure hash function + + __C declaration:__ @hash_id@ + -} + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@salt@ /(input)/__]: is the salt value sent by the server + + __C declaration:__ @salt@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@salt_len@ /(input)/__]: the length of salt + + __C declaration:__ @salt_len@ + -} + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @b@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @b_len@ + -> Botan_rng_t + {- ^ + + [__@rng_obj@ /(input)/__]: is a random number generator object + + __C declaration:__ @rng_obj@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @a@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @a_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @k@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @k_len@ + -> IO FC.CInt +botan_srp6_client_agree = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + \x8 -> + \x9 -> + \x10 -> + \x11 -> + \x12 -> + HsBindgen.Runtime.IncompleteArray.withPtr x6 (\ptr13 -> + HsBindgen.Runtime.IncompleteArray.withPtr x4 (\ptr14 -> + hs_bindgen_94d61a874d7e2184 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr14) x5 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr13) x7 x8 x9 x10 x11 x12)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_srp6_group_size@ +foreign import ccall safe "hs_bindgen_459d7c978909b55a" hs_bindgen_459d7c978909b55a :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Return the size, in bytes, of the prime associated with group_id + +__C declaration:__ @botan_srp6_group_size@ + +__defined at:__ @botan\/ffi.h:2140:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_srp6_group_size :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @group_id@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @group_p_bytes@ + -> IO FC.CInt +botan_srp6_group_size = hs_bindgen_459d7c978909b55a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_zfec_encode@ +foreign import ccall safe "hs_bindgen_4bee8014eeaeae3a" hs_bindgen_4bee8014eeaeae3a :: + HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) + -> IO FC.CInt + +{-| Encode some bytes with certain ZFEC parameters. + + [__@K@ /(input)/__]: the number of shares needed for recovery + + [__@N@ /(input)/__]: the number of shares generated + + [__@input@ /(input)/__]: the data to FEC + + [__@size@ /(input)/__]: the length in bytes of input, which must be a multiple of K + + [__@outputs@ /(input)/__]: An out parameter pointing to a fully allocated array of size [N][size / K]. For all n in range, an encoded block will be written to the memory starting at outputs[n][0]. + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_zfec_encode@ + +__defined at:__ @botan\/ffi.h:2161:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_zfec_encode :: + HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @k@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @n@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@input@ /(input)/__]: the data to FEC + + __C declaration:__ @input@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@size@ /(input)/__]: the length in bytes of input, which must be a multiple of K + + __C declaration:__ @size@ + -} + -> Ptr.Ptr (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) + {- ^ + + [__@outputs@ /(input)/__]: An out parameter pointing to a fully allocated array of size [N][size / K]. For all n in range, an encoded block will be written to the memory starting at outputs[n][0]. + + __C declaration:__ @outputs@ + -} + -> IO FC.CInt +botan_zfec_encode = hs_bindgen_4bee8014eeaeae3a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Safe_botan_zfec_decode@ +foreign import ccall safe "hs_bindgen_7d691553504533b9" hs_bindgen_7d691553504533b9 :: + HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) + -> IO FC.CInt + +{-| Decode some previously encoded shares using certain ZFEC parameters. + + [__@K@ /(input)/__]: the number of shares needed for recovery + + [__@N@ /(input)/__]: the total number of shares + + [__@indexes@ /(input)/__]: The index into the encoder's outputs for the corresponding element of the inputs array. Must be of length K. + + [__@inputs@ /(input)/__]: K previously encoded shares to decode + + [__@shareSize@ /(input)/__]: the length in bytes of each input + + [__@outputs@ /(input)/__]: An out parameter pointing to a fully allocated array of size [K][shareSize]. For all k in range, a decoded block will written to the memory starting at outputs[k][0]. + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_zfec_decode@ + +__defined at:__ @botan\/ffi.h:2185:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_zfec_decode :: + HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @k@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @n@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@indexes@ /(input)/__]: The index into the encoder's outputs for the corresponding element of the inputs array. Must be of length K. + + __C declaration:__ @indexes@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) + {- ^ + + [__@inputs@ /(input)/__]: K previously encoded shares to decode + + __C declaration:__ @inputs@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@shareSize@ /(input)/__]: the length in bytes of each input + + __C declaration:__ @shareSize@ + -} + -> Ptr.Ptr (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) + {- ^ + + [__@outputs@ /(input)/__]: An out parameter pointing to a fully allocated array of size [K][shareSize]. For all k in range, a decoded block will written to the memory starting at outputs[k][0]. + + __C declaration:__ @outputs@ + -} + -> IO FC.CInt +botan_zfec_decode = hs_bindgen_7d691553504533b9 diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_0_0/Unsafe.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_0_0/Unsafe.hs new file mode 100644 index 0000000..bc7c81d --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_0_0/Unsafe.hs @@ -0,0 +1,12074 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_0_0.Unsafe where + +import Botan.Bindings.Generated.Botan_3_0_0 +import Data.Void (Void) +import qualified Foreign.C as FC +import qualified GHC.Ptr as Ptr +import qualified HsBindgen.Runtime.ConstantArray +import qualified HsBindgen.Runtime.ConstPtr +import qualified HsBindgen.Runtime.IncompleteArray +import qualified HsBindgen.Runtime.Prelude +import Prelude (IO) + +$(HsBindgen.Runtime.Prelude.addCSource (HsBindgen.Runtime.Prelude.unlines + [ "#include " + , "char const *hs_bindgen_3732156e10bdc6a6 (" + , " signed int arg1" + , ")" + , "{" + , " return botan_error_description(arg1);" + , "}" + , "char const *hs_bindgen_f3d419a4a54204a1 (void)" + , "{" + , " return botan_error_last_exception_message();" + , "}" + , "uint32_t hs_bindgen_e3ec5cd2231c290a (void)" + , "{" + , " return botan_ffi_api_version();" + , "}" + , "signed int hs_bindgen_62826bdb5fa347aa (" + , " uint32_t arg1" + , ")" + , "{" + , " return botan_ffi_supports_api(arg1);" + , "}" + , "char const *hs_bindgen_c4ebfd171c63d0db (void)" + , "{" + , " return botan_version_string();" + , "}" + , "uint32_t hs_bindgen_7fee96b246bdcf95 (void)" + , "{" + , " return botan_version_major();" + , "}" + , "uint32_t hs_bindgen_3cbff12c43860403 (void)" + , "{" + , " return botan_version_minor();" + , "}" + , "uint32_t hs_bindgen_b31ad183e6065d56 (void)" + , "{" + , " return botan_version_patch();" + , "}" + , "uint32_t hs_bindgen_11bcca58ccd46876 (void)" + , "{" + , " return botan_version_datestamp();" + , "}" + , "signed int hs_bindgen_848446c0cae98030 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_constant_time_compare(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ae58fe4cbc9b91a0 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_same_mem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8939f0e2c3a6a559 (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_scrub_mem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5ed11588435fbdaf (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_hex_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_e45df4e6cd2bcbb4 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_hex_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_6930dd4bdd9088ba (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_ea639a49487317c8 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_0eb46900b55a3426 (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_rng_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4b0fe6431212c176 (" + , " botan_rng_t *arg1," + , " char const *arg2," + , " void *arg3," + , " signed int (*arg4) (" + , " void *arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")," + , " signed int (*arg5) (" + , " void *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")," + , " void (*arg6) (" + , " void *arg1" + , ")" + , ")" + , "{" + , " return botan_rng_init_custom(arg1, arg2, arg3, arg4, arg5, arg6);" + , "}" + , "signed int hs_bindgen_82f81effe5a0b288 (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_get(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_fcecd3c5757b21f8 (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_system_rng_get(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c99b4229620b6f82 (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_rng_reseed(arg1, arg2);" + , "}" + , "signed int hs_bindgen_38a76b0c647e3825 (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_reseed_from_rng(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4a41c967edccce6e (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_add_entropy(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_73ce7792c7b202f5 (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return botan_rng_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e6b679dd912a3302 (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_hash_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ebba0afdbc27619f (" + , " botan_hash_t *arg1," + , " botan_hash_t const arg2" + , ")" + , "{" + , " return botan_hash_copy_state(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8bf0468d0570b702 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9cd60293a57475ef (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_block_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5221ad3bbf0c534a (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_hash_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4007282393489051 (" + , " botan_hash_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_hash_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c9bdb63165f720da (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_clear(arg1);" + , "}" + , "signed int hs_bindgen_1ef43600968388bc (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_destroy(arg1);" + , "}" + , "signed int hs_bindgen_769c0524dec27ac2 (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_hash_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5bc8502553b6fb4b (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mac_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d7142cf56db204ee (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mac_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1d7b7d386ad679fe (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2dc9ceb26786a0eb (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_nonce(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9c18057d9fb4f83b (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_85d9f6b74d3fdbc9 (" + , " botan_mac_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mac_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_99eb5bf3ef4ff0a0 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_clear(arg1);" + , "}" + , "signed int hs_bindgen_b8d58e4de555e434 (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_mac_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2d980ac1daaddfdc (" + , " botan_mac_t arg1," + , " size_t *arg2," + , " size_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_mac_get_keyspec(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_8e23860ae9ae7f95 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_destroy(arg1);" + , "}" + , "signed int hs_bindgen_cfa43e80a5470af3 (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_cipher_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bd4ace39130352a2 (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f78459ff64ae05a1 (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8c370b726aacd945 (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_cipher_valid_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_16c12e8c5c61817d (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_tag_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e71dc2d2ce4d35df (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_default_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_395261d6ee3f7315 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e17d786854e2a5cb (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_ideal_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2e11ec2dd05e51c2 (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_query_keylen(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3f7719de201617e6 (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_cipher_get_keyspec(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_debe670a57be4c7e (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2f08644e5d1c3dea (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_reset(arg1);" + , "}" + , "signed int hs_bindgen_f9baf71e8f239a21 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_associated_data(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_56c5a180f9446bf7 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_start(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e063f4a55b473d86 (" + , " botan_cipher_t arg1," + , " uint32_t arg2," + , " uint8_t *arg3," + , " size_t arg4," + , " size_t *arg5," + , " uint8_t const *arg6," + , " size_t arg7," + , " size_t *arg8" + , ")" + , "{" + , " return botan_cipher_update(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_ecfeb7c6facd4776 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_12330e6f6d9d3d98 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_4e22d71dd5b2927a (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t arg3," + , " char const *arg4," + , " uint8_t const *arg5," + , " size_t arg6," + , " size_t arg7" + , ")" + , "{" + , " return botan_pbkdf(arg1, arg2, arg3, arg4, arg5, arg6, arg7);" + , "}" + , "signed int hs_bindgen_33c491736990a21a (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t arg3," + , " char const *arg4," + , " uint8_t const *arg5," + , " size_t arg6," + , " size_t arg7," + , " size_t *arg8" + , ")" + , "{" + , " return botan_pbkdf_timed(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_73e9909b4443cb3f (" + , " char const *arg1," + , " size_t arg2," + , " size_t arg3," + , " size_t arg4," + , " uint8_t *arg5," + , " size_t arg6," + , " char const *arg7," + , " size_t arg8," + , " uint8_t const *arg9," + , " size_t arg10" + , ")" + , "{" + , " return botan_pwdhash(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10);" + , "}" + , "signed int hs_bindgen_bb3a36ce6dd3e7da (" + , " char const *arg1," + , " uint32_t arg2," + , " size_t *arg3," + , " size_t *arg4," + , " size_t *arg5," + , " uint8_t *arg6," + , " size_t arg7," + , " char const *arg8," + , " size_t arg9," + , " uint8_t const *arg10," + , " size_t arg11" + , ")" + , "{" + , " return botan_pwdhash_timed(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11);" + , "}" + , "signed int hs_bindgen_9742bccff511067a (" + , " uint8_t *arg1," + , " size_t arg2," + , " char const *arg3," + , " uint8_t const *arg4," + , " size_t arg5," + , " size_t arg6," + , " size_t arg7," + , " size_t arg8" + , ")" + , "{" + , " return botan_scrypt(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_13803a3b3ee5b33c (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t arg3," + , " uint8_t const *arg4," + , " size_t arg5," + , " uint8_t const *arg6," + , " size_t arg7," + , " uint8_t const *arg8," + , " size_t arg9" + , ")" + , "{" + , " return botan_kdf(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9);" + , "}" + , "signed int hs_bindgen_7950f660fb144b22 (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_block_cipher_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1aa35f7148171776 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_ed2214aef9511d95 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_b0b13aa76ce21482 (" + , " botan_block_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_block_cipher_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d3ffb134c92830a8 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_block_size(arg1);" + , "}" + , "signed int hs_bindgen_4400f08decebbb1e (" + , " botan_block_cipher_t arg1," + , " uint8_t const *arg2," + , " uint8_t *arg3," + , " size_t arg4" + , ")" + , "{" + , " return botan_block_cipher_encrypt_blocks(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_13de4359f21082d4 (" + , " botan_block_cipher_t arg1," + , " uint8_t const *arg2," + , " uint8_t *arg3," + , " size_t arg4" + , ")" + , "{" + , " return botan_block_cipher_decrypt_blocks(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_6dd913b1f3521a1d (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_block_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_630712a2515a74ec (" + , " botan_block_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_block_cipher_get_keyspec(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_970a21fa5d9e9825 (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return botan_mp_init(arg1);" + , "}" + , "signed int hs_bindgen_9d892389b4b9aea5 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_156f6fa1c0c4736f (" + , " botan_mp_t const arg1," + , " char *arg2" + , ")" + , "{" + , " return botan_mp_to_hex(arg1, arg2);" + , "}" + , "signed int hs_bindgen_679d59bd4fa438bb (" + , " botan_mp_t const arg1," + , " uint8_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_mp_to_str(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_ec67b6e9e6ef62a2 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_clear(arg1);" + , "}" + , "signed int hs_bindgen_c0b736764c3ff600 (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return botan_mp_set_from_int(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2ecbc410e924da8a (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2" + , ")" + , "{" + , " return botan_mp_set_from_mp(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9bb2531eaad57008 (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_mp_set_from_str(arg1, arg2);" + , "}" + , "signed int hs_bindgen_050631db9df13fa3 (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_set_from_radix_str(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4c9e8b852ab9a45c (" + , " botan_mp_t const arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bits(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a88934bf693b6213 (" + , " botan_mp_t const arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bytes(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e59fa720fcc53df4 (" + , " botan_mp_t const arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mp_to_bin(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4be761ecc31af4ba (" + , " botan_mp_t const arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_from_bin(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ba389f1b156b3967 (" + , " botan_mp_t const arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return botan_mp_to_uint32(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d83cc37169200644 (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return botan_mp_is_positive(arg1);" + , "}" + , "signed int hs_bindgen_d10b2350a7f37e34 (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return botan_mp_is_negative(arg1);" + , "}" + , "signed int hs_bindgen_389e0a8429c92faa (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_flip_sign(arg1);" + , "}" + , "signed int hs_bindgen_82babc1e99d4d991 (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return botan_mp_is_zero(arg1);" + , "}" + , "signed int hs_bindgen_ec090b31aa2e4f22 (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return botan_mp_is_odd(arg1);" + , "}" + , "signed int hs_bindgen_d196ef539512654c (" + , " botan_mp_t const arg1" + , ")" + , "{" + , " return botan_mp_is_even(arg1);" + , "}" + , "signed int hs_bindgen_87a7b70ab0769fc4 (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_add_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_937d5fc22c457044 (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_sub_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8320ca0834c3a456 (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3" + , ")" + , "{" + , " return botan_mp_add(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_04fabc2dd409fe15 (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3" + , ")" + , "{" + , " return botan_mp_sub(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f2ec11843a7cbe03 (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3" + , ")" + , "{" + , " return botan_mp_mul(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_728ddaa346730a0d (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t const arg3," + , " botan_mp_t const arg4" + , ")" + , "{" + , " return botan_mp_div(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_404a12eabb0cf3d1 (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3," + , " botan_mp_t const arg4" + , ")" + , "{" + , " return botan_mp_mod_mul(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_6c39e83b29e90fc8 (" + , " botan_mp_t const arg1," + , " botan_mp_t const arg2" + , ")" + , "{" + , " return botan_mp_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6305754fde7cd020 (" + , " signed int *arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3" + , ")" + , "{" + , " return botan_mp_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_717a118082c09647 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_swap(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6091c2ff1eccec4e (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3," + , " botan_mp_t const arg4" + , ")" + , "{" + , " return botan_mp_powmod(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_1a828c21e2ac0ef8 (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_lshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_409e775b6fe1caee (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8499792d1ff389b7 (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3" + , ")" + , "{" + , " return botan_mp_mod_inverse(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_675f85197d1b7a97 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rand_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_74584b3fcf99aefb (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " botan_mp_t const arg3," + , " botan_mp_t const arg4" + , ")" + , "{" + , " return botan_mp_rand_range(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_054c3d2c2603032d (" + , " botan_mp_t arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3" + , ")" + , "{" + , " return botan_mp_gcd(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a9590a48656257e5 (" + , " botan_mp_t const arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_is_prime(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_486e063e46b49de8 (" + , " botan_mp_t const arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_get_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9d282dc855b85047 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_set_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0eb9b3dee3447747 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_clear_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_824e25a74d21d3fe (" + , " uint8_t *arg1," + , " size_t *arg2," + , " char const *arg3," + , " botan_rng_t arg4," + , " size_t arg5," + , " uint32_t arg6" + , ")" + , "{" + , " return botan_bcrypt_generate(arg1, arg2, arg3, arg4, arg5, arg6);" + , "}" + , "signed int hs_bindgen_68fc45ce2dc5f8f2 (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_bcrypt_is_valid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f29636716dabd219 (" + , " botan_privkey_t *arg1," + , " char const *arg2," + , " char const *arg3," + , " botan_rng_t arg4" + , ")" + , "{" + , " return botan_privkey_create(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_6be6fe1b9f397ffc (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_privkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_06ccd3492d70ac7f (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_create_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_eb40e129dd40675d (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cf5692b6f6ba28c6 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_29eb57a39bf3d80e (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return botan_privkey_create_mceliece(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_c76cee3dc4a08a30 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_dh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9285ff6388833e74 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return botan_privkey_create_dsa(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_d134bcc4fa5b8f26 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return botan_privkey_create_elgamal(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_145682c5ff1eac9b (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " char const *arg5" + , ")" + , "{" + , " return botan_privkey_load(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_0865d929151b4ac8 (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return botan_privkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_3fc3eb237faa8ce6 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_privkey_export(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_f1ba2253ceb8ba0b (" + , " botan_privkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return botan_privkey_view_der(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_be97a5468efd5dc3 (" + , " botan_privkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_str_fn arg3" + , ")" + , "{" + , " return botan_privkey_view_pem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1436d3016b3b6188 (" + , " botan_privkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_privkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1cace8491886db1f (" + , " botan_privkey_t arg1," + , " uint8_t *arg2," + , " size_t *arg3," + , " botan_rng_t arg4," + , " char const *arg5," + , " char const *arg6," + , " uint32_t arg7" + , ")" + , "{" + , " return botan_privkey_export_encrypted(arg1, arg2, arg3, arg4, arg5, arg6, arg7);" + , "}" + , "signed int hs_bindgen_12470c8c51653b15 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2," + , " size_t *arg3," + , " botan_rng_t arg4," + , " char const *arg5," + , " uint32_t arg6," + , " size_t *arg7," + , " char const *arg8," + , " char const *arg9," + , " uint32_t arg10" + , ")" + , "{" + , " return botan_privkey_export_encrypted_pbkdf_msec(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10);" + , "}" + , "signed int hs_bindgen_c8cfe0b7750d0c09 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2," + , " size_t *arg3," + , " botan_rng_t arg4," + , " char const *arg5," + , " size_t arg6," + , " char const *arg7," + , " char const *arg8," + , " uint32_t arg9" + , ")" + , "{" + , " return botan_privkey_export_encrypted_pbkdf_iter(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9);" + , "}" + , "signed int hs_bindgen_adc35efc8160328b (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " char const *arg3," + , " char const *arg4," + , " char const *arg5," + , " size_t arg6," + , " botan_view_ctx arg7," + , " botan_view_bin_fn arg8" + , ")" + , "{" + , " return botan_privkey_view_encrypted_der(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_65795285cd8f63ce (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " char const *arg3," + , " char const *arg4," + , " char const *arg5," + , " size_t arg6," + , " botan_view_ctx arg7," + , " botan_view_bin_fn arg8" + , ")" + , "{" + , " return botan_privkey_view_encrypted_der_timed(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_ca9073790f7adffe (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " char const *arg3," + , " char const *arg4," + , " char const *arg5," + , " size_t arg6," + , " botan_view_ctx arg7," + , " botan_view_str_fn arg8" + , ")" + , "{" + , " return botan_privkey_view_encrypted_pem(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_b01041027d416aed (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " char const *arg3," + , " char const *arg4," + , " char const *arg5," + , " size_t arg6," + , " botan_view_ctx arg7," + , " botan_view_str_fn arg8" + , ")" + , "{" + , " return botan_privkey_view_encrypted_pem_timed(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_b38f292d770c3894 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_623dc9c4cccb6f4b (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_export_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_29a4ea8ac4d94014 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_pubkey_export(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_e22fabf98b7cefdb (" + , " botan_pubkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return botan_pubkey_view_der(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_49ddc4f8ab98655b (" + , " botan_pubkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_str_fn arg3" + , ")" + , "{" + , " return botan_pubkey_view_pem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7d68e2ff618bdac6 (" + , " botan_pubkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pubkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_04690e40f7484569 (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_pubkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e074794c70b86dee (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pubkey_estimated_strength(arg1, arg2);" + , "}" + , "signed int hs_bindgen_72a437385e94e038 (" + , " botan_pubkey_t arg1," + , " char const *arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_pubkey_fingerprint(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_ec04026678587685 (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_fb3e700c78ee9c13 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pubkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ae7013bb21d20e87 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a4370e7019ec5cec (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return botan_privkey_load_rsa(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_3feb361d05574e21 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_rsa_pkcs1(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9239ce6952072d19 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f6b9c2556a4a9856 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_60e41a938ecce9a0 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_d(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b0f13c772bfd45d2 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c238cee3b846cb87 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_60b1085b6e10a73b (" + , " botan_privkey_t arg1," + , " uint8_t *arg2," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_privkey_rsa_get_privkey(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_b543885c6c25f4b9 (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e02eccf6f17c7fcf (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e94890f4ad2ac5d0 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1e9cac36751bc8e8 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4," + , " botan_mp_t arg5" + , ")" + , "{" + , " return botan_privkey_load_dsa(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_70c0b0eddfd0aac8 (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4," + , " botan_mp_t arg5" + , ")" + , "{" + , " return botan_pubkey_load_dsa(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_b92cf58086d52f41 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_dsa_get_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_198d1517dee7e7a4 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_55e6c39ea6d3fe05 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a361f3b9bdccf148 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_g(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c103df7a56e0049c (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_13a98a6c42087fa7 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return botan_privkey_load_dh(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_3a9727fb96babdd7 (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return botan_pubkey_load_dh(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_59ba2add33a8f02c (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return botan_pubkey_load_elgamal(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_aab9500c8d559f72 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return botan_privkey_load_elgamal(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_da76c75d0e07c34a (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_156cac709e97cdd9 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4644b88c0a4a71c7 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cb8ab939c7c29d1c (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_627daeac85418594 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2e74e9ddb58f3ba3 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f76b440205cfabe7 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_942806143cfdf66c (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ece85749646e9689 (" + , " botan_privkey_t *arg1," + , " botan_mp_t const arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_fd42014cccac9915 (" + , " botan_pubkey_t *arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_pubkey_load_ecdsa(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_386d8446a5bc8713 (" + , " botan_pubkey_t *arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_pubkey_load_ecdh(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_30ad05f74ca4cc83 (" + , " botan_privkey_t *arg1," + , " botan_mp_t const arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4219f03890a454e6 (" + , " botan_pubkey_t *arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_pubkey_load_sm2(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_4eea3b9a7b62c986 (" + , " botan_privkey_t *arg1," + , " botan_mp_t const arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_56749a0c36eb5761 (" + , " botan_pubkey_t *arg1," + , " botan_mp_t const arg2," + , " botan_mp_t const arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_pubkey_load_sm2_enc(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_e4f6ba3c4c2fdfd8 (" + , " botan_privkey_t *arg1," + , " botan_mp_t const arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2_enc(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f94bcaa769e0e2fe (" + , " uint8_t *arg1," + , " size_t *arg2," + , " char const *arg3," + , " char const *arg4," + , " botan_pubkey_t const arg5" + , ")" + , "{" + , " return botan_pubkey_sm2_compute_za(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_0e235be46a7ff659 (" + , " botan_pubkey_t const arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return botan_pubkey_view_ec_public_point(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_84cce397dfc5f030 (" + , " botan_pk_op_encrypt_t *arg1," + , " botan_pubkey_t arg2," + , " char const *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_pk_op_encrypt_create(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_bd67ffcf5d3bbdba (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_8cfcffd2b60f2798 (" + , " botan_pk_op_encrypt_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pk_op_encrypt_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5cb2b790f538a2be (" + , " botan_pk_op_encrypt_t arg1," + , " botan_rng_t arg2," + , " uint8_t *arg3," + , " size_t *arg4," + , " uint8_t const *arg5," + , " size_t arg6" + , ")" + , "{" + , " return botan_pk_op_encrypt(arg1, arg2, arg3, arg4, arg5, arg6);" + , "}" + , "signed int hs_bindgen_b1b77b24043b39af (" + , " botan_pk_op_decrypt_t *arg1," + , " botan_privkey_t arg2," + , " char const *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_pk_op_decrypt_create(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_16e49f4a57ab6040 (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_529644687c0851d6 (" + , " botan_pk_op_decrypt_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pk_op_decrypt_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9ffb3d9eced9fe75 (" + , " botan_pk_op_decrypt_t arg1," + , " uint8_t *arg2," + , " size_t *arg3," + , " uint8_t const *arg4," + , " size_t arg5" + , ")" + , "{" + , " return botan_pk_op_decrypt(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_c7208d8b32e52edf (" + , " botan_pk_op_sign_t *arg1," + , " botan_privkey_t arg2," + , " char const *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_pk_op_sign_create(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_038c55b2eec6445b (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return botan_pk_op_sign_destroy(arg1);" + , "}" + , "signed int hs_bindgen_3d469a3bfd0cd19a (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_sign_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3a6fe2e9cccdf76b (" + , " botan_pk_op_sign_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pk_op_sign_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bcc1e7289876da2f (" + , " botan_pk_op_sign_t arg1," + , " botan_rng_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_pk_op_sign_finish(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_7230c154b73ef167 (" + , " botan_pk_op_verify_t *arg1," + , " botan_pubkey_t arg2," + , " char const *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_pk_op_verify_create(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_c1a8f1c707dd0fa5 (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return botan_pk_op_verify_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e5eaca407607a791 (" + , " botan_pk_op_verify_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pk_op_verify_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a951469f5a91eb53 (" + , " botan_pk_op_verify_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pk_op_verify_finish(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d3950a5488d5784e (" + , " botan_pk_op_ka_t *arg1," + , " botan_privkey_t arg2," + , " char const *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_pk_op_key_agreement_create(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_5b97b3dfcdc2d911 (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return botan_pk_op_key_agreement_destroy(arg1);" + , "}" + , "signed int hs_bindgen_5ba58bca9b0e77dc (" + , " botan_privkey_t arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pk_op_key_agreement_export_public(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6742a42deebea5a1 (" + , " botan_privkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return botan_pk_op_key_agreement_view_public(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_68797ed9db928901 (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_key_agreement_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9a6a9c78b63eeb33 (" + , " botan_pk_op_ka_t arg1," + , " uint8_t *arg2," + , " size_t *arg3," + , " uint8_t const *arg4," + , " size_t arg5," + , " uint8_t const *arg6," + , " size_t arg7" + , ")" + , "{" + , " return botan_pk_op_key_agreement(arg1, arg2, arg3, arg4, arg5, arg6, arg7);" + , "}" + , "signed int hs_bindgen_8fd8540777c8ed6d (" + , " botan_pk_op_kem_encrypt_t *arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_create(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7716a4c0866ed246 (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_ad8d06ee062ce57a (" + , " botan_pk_op_kem_encrypt_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_shared_key_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2e5412392b6ab8dc (" + , " botan_pk_op_kem_encrypt_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_encapsulated_key_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_520a10376b5cffd3 (" + , " botan_pk_op_kem_encrypt_t arg1," + , " botan_rng_t arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " size_t arg5," + , " uint8_t *arg6," + , " size_t *arg7," + , " uint8_t *arg8," + , " size_t *arg9" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_create_shared_key(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9);" + , "}" + , "signed int hs_bindgen_97573923bee0c1a0 (" + , " botan_pk_op_kem_decrypt_t *arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_create(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_acab7c3544794419 (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_7696e69c6aa264c6 (" + , " botan_pk_op_kem_decrypt_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_shared_key_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2e86a13586756950 (" + , " botan_pk_op_kem_decrypt_t arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " uint8_t const *arg4," + , " size_t arg5," + , " size_t arg6," + , " uint8_t *arg7," + , " size_t *arg8" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_shared_key(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_1e5950991ed3e1d9 (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pkcs_hash_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e28214bae44c6251 (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " char const *arg3," + , " uint8_t const *arg4," + , " size_t arg5," + , " uint8_t const *arg6," + , " size_t arg7," + , " uint8_t *arg8," + , " size_t *arg9" + , ")" + , "{" + , " return botan_mceies_encrypt(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9);" + , "}" + , "signed int hs_bindgen_8338743b2b24e771 (" + , " botan_privkey_t arg1," + , " char const *arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " uint8_t const *arg5," + , " size_t arg6," + , " uint8_t *arg7," + , " size_t *arg8" + , ")" + , "{" + , " return botan_mceies_decrypt(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_f1deef85025eff3e (" + , " botan_x509_cert_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_cert_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f4e0c10e0666f0c1 (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c5c4d21741875738 (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return botan_x509_cert_destroy(arg1);" + , "}" + , "signed int hs_bindgen_68829da068a548f5 (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_cert_dup(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a09c8f71693f1880 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_starts(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cc0e363581b558a7 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_expires(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5cd5c3f02e0a58b1 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_before(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e28cba74f627be2e (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_after(arg1, arg2);" + , "}" + , "signed int hs_bindgen_210d4af4ba377a43 (" + , " botan_x509_cert_t arg1," + , " char const *arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_x509_cert_get_fingerprint(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_db77422855b17046 (" + , " botan_x509_cert_t arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_serial_number(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bf070ce8be37002f (" + , " botan_x509_cert_t arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_authority_key_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6cd3823019ba075b (" + , " botan_x509_cert_t arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_subject_key_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4003d8ff0f330ada (" + , " botan_x509_cert_t arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_public_key_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2ff2109e2a48ff96 (" + , " botan_x509_cert_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return botan_x509_cert_view_public_key_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ee989703a0c67e27 (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_get_public_key(arg1, arg2);" + , "}" + , "signed int hs_bindgen_87ff05da0793a057 (" + , " botan_x509_cert_t arg1," + , " char const *arg2," + , " size_t arg3," + , " uint8_t *arg4," + , " size_t *arg5" + , ")" + , "{" + , " return botan_x509_cert_get_issuer_dn(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_ea7d597594d96638 (" + , " botan_x509_cert_t arg1," + , " char const *arg2," + , " size_t arg3," + , " uint8_t *arg4," + , " size_t *arg5" + , ")" + , "{" + , " return botan_x509_cert_get_subject_dn(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_be6c6923475edd18 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_to_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_576deb4f28e1488f (" + , " botan_x509_cert_t arg1," + , " botan_view_ctx arg2," + , " botan_view_str_fn arg3" + , ")" + , "{" + , " return botan_x509_cert_view_as_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0df94c47b0227d71 (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return botan_x509_cert_allowed_usage(arg1, arg2);" + , "}" + , "signed int hs_bindgen_396cd55f0d20550c (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_hostname_match(arg1, arg2);" + , "}" + , "signed int hs_bindgen_03285da4f53028bb (" + , " signed int *arg1," + , " botan_x509_cert_t arg2," + , " botan_x509_cert_t const *arg3," + , " size_t arg4," + , " botan_x509_cert_t const *arg5," + , " size_t arg6," + , " char const *arg7," + , " size_t arg8," + , " char const *arg9," + , " uint64_t arg10" + , ")" + , "{" + , " return botan_x509_cert_verify(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10);" + , "}" + , "char const *hs_bindgen_4325e4a23286212d (" + , " signed int arg1" + , ")" + , "{" + , " return botan_x509_cert_validation_status(arg1);" + , "}" + , "signed int hs_bindgen_2f9681570f4a388d (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_crl_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cfc1d4d70d3b7d2a (" + , " botan_x509_crl_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_crl_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ee8644d99725f073 (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return botan_x509_crl_destroy(arg1);" + , "}" + , "signed int hs_bindgen_8e8376aa6c2f3096 (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_is_revoked(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9550d7d84bad350d (" + , " signed int *arg1," + , " botan_x509_cert_t arg2," + , " botan_x509_cert_t const *arg3," + , " size_t arg4," + , " botan_x509_cert_t const *arg5," + , " size_t arg6," + , " botan_x509_crl_t const *arg7," + , " size_t arg8," + , " char const *arg9," + , " size_t arg10," + , " char const *arg11," + , " uint64_t arg12" + , ")" + , "{" + , " return botan_x509_cert_verify_with_crl(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11, arg12);" + , "}" + , "signed int hs_bindgen_e5bc5fa706d03290 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " uint8_t *arg5," + , " size_t *arg6" + , ")" + , "{" + , " return botan_key_wrap3394(arg1, arg2, arg3, arg4, arg5, arg6);" + , "}" + , "signed int hs_bindgen_5bf6a4aa2c12d606 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " uint8_t *arg5," + , " size_t *arg6" + , ")" + , "{" + , " return botan_key_unwrap3394(arg1, arg2, arg3, arg4, arg5, arg6);" + , "}" + , "signed int hs_bindgen_2691416a1849d8d6 (" + , " char const *arg1," + , " signed int arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " uint8_t const *arg5," + , " size_t arg6," + , " uint8_t *arg7," + , " size_t *arg8" + , ")" + , "{" + , " return botan_nist_kw_enc(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_b94c87abddb1c3bd (" + , " char const *arg1," + , " signed int arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " uint8_t const *arg5," + , " size_t arg6," + , " uint8_t *arg7," + , " size_t *arg8" + , ")" + , "{" + , " return botan_nist_kw_dec(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_b0869e7d1ed2c3ec (" + , " botan_hotp_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4," + , " size_t arg5" + , ")" + , "{" + , " return botan_hotp_init(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_a4122819b6f615ee (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return botan_hotp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_8a970e1c8ceadae5 (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_hotp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_edfe9ab0e22d611b (" + , " botan_hotp_t arg1," + , " uint64_t *arg2," + , " uint32_t arg3," + , " uint64_t arg4," + , " size_t arg5" + , ")" + , "{" + , " return botan_hotp_check(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_498859899ae7f77f (" + , " botan_totp_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4," + , " size_t arg5," + , " size_t arg6" + , ")" + , "{" + , " return botan_totp_init(arg1, arg2, arg3, arg4, arg5, arg6);" + , "}" + , "signed int hs_bindgen_72fe5154d6d956d1 (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return botan_totp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_4bc7ba45ba382481 (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_totp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_712de19f34689e07 (" + , " botan_totp_t arg1," + , " uint32_t arg2," + , " uint64_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return botan_totp_check(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_34bd55593172bfef (" + , " botan_fpe_t *arg1," + , " botan_mp_t arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " size_t arg5," + , " uint32_t arg6" + , ")" + , "{" + , " return botan_fpe_fe1_init(arg1, arg2, arg3, arg4, arg5, arg6);" + , "}" + , "signed int hs_bindgen_04cc072a948c056d (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return botan_fpe_destroy(arg1);" + , "}" + , "signed int hs_bindgen_497f2719046f9fcc (" + , " botan_fpe_t arg1," + , " botan_mp_t arg2," + , " uint8_t const *arg3," + , " size_t arg4" + , ")" + , "{" + , " return botan_fpe_encrypt(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_0b7b698271ad8e23 (" + , " botan_fpe_t arg1," + , " botan_mp_t arg2," + , " uint8_t const *arg3," + , " size_t arg4" + , ")" + , "{" + , " return botan_fpe_decrypt(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_e90b4ac55f684b15 (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return botan_srp6_server_session_init(arg1);" + , "}" + , "signed int hs_bindgen_c5b86161d7103278 (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return botan_srp6_server_session_destroy(arg1);" + , "}" + , "signed int hs_bindgen_eca3422d1b410999 (" + , " botan_srp6_server_session_t arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4," + , " char const *arg5," + , " botan_rng_t arg6," + , " uint8_t *arg7," + , " size_t *arg8" + , ")" + , "{" + , " return botan_srp6_server_session_step1(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_6d7c44e5669ac709 (" + , " botan_srp6_server_session_t arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " uint8_t *arg4," + , " size_t *arg5" + , ")" + , "{" + , " return botan_srp6_server_session_step2(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_2925d593022349d9 (" + , " char const *arg1," + , " char const *arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " char const *arg5," + , " char const *arg6," + , " uint8_t *arg7," + , " size_t *arg8" + , ")" + , "{" + , " return botan_srp6_generate_verifier(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_cc418ea8ca4aeee9 (" + , " char const *arg1," + , " char const *arg2," + , " char const *arg3," + , " char const *arg4," + , " uint8_t const *arg5," + , " size_t arg6," + , " uint8_t const *arg7," + , " size_t arg8," + , " botan_rng_t arg9," + , " uint8_t *arg10," + , " size_t *arg11," + , " uint8_t *arg12," + , " size_t *arg13" + , ")" + , "{" + , " return botan_srp6_client_agree(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11, arg12, arg13);" + , "}" + , "signed int hs_bindgen_d71edc913a88236e (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_srp6_group_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5f04a99f419f18cd (" + , " size_t arg1," + , " size_t arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " uint8_t **arg5" + , ")" + , "{" + , " return botan_zfec_encode(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_01b90dd6ba07d1f7 (" + , " size_t arg1," + , " size_t arg2," + , " size_t const *arg3," + , " uint8_t *const *const arg4," + , " size_t arg5," + , " uint8_t **arg6" + , ")" + , "{" + , " return botan_zfec_decode(arg1, arg2, arg3, arg4, arg5, arg6);" + , "}" + ])) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_error_description@ +foreign import ccall unsafe "hs_bindgen_3732156e10bdc6a6" hs_bindgen_3732156e10bdc6a6 :: + FC.CInt + -> IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) + +{-| Convert an error code into a string. Returns "Unknown error" if the error code is not a known one. + +__C declaration:__ @botan_error_description@ + +__defined at:__ @botan\/ffi.h:125:35@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_error_description :: + FC.CInt + -- ^ __C declaration:__ @err@ + -> IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_error_description = hs_bindgen_3732156e10bdc6a6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_error_last_exception_message@ +foreign import ccall unsafe "hs_bindgen_f3d419a4a54204a1" hs_bindgen_f3d419a4a54204a1 :: + IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) + +{-| Return the message of the last exception caught in this thread. + + This pointer can/will be reallocated or overwritten the next time this thread calls any other Botan FFI function and must be copied to persistent storage first. + +__C declaration:__ @botan_error_last_exception_message@ + +__defined at:__ @botan\/ffi.h:134:35@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_error_last_exception_message :: IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_error_last_exception_message = + hs_bindgen_f3d419a4a54204a1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_ffi_api_version@ +foreign import ccall unsafe "hs_bindgen_e3ec5cd2231c290a" hs_bindgen_e3ec5cd2231c290a :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the version of the currently supported FFI API. This is expressed in the form YYYYMMDD of the release date of this version of the API. + +__C declaration:__ @botan_ffi_api_version@ + +__defined at:__ @botan\/ffi.h:141:32@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_api_version :: IO HsBindgen.Runtime.Prelude.Word32 +botan_ffi_api_version = hs_bindgen_e3ec5cd2231c290a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_ffi_supports_api@ +foreign import ccall unsafe "hs_bindgen_62826bdb5fa347aa" hs_bindgen_62826bdb5fa347aa :: + HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| Return 0 (ok) if the version given is one this library supports. botan_ffi_supports_api(botan_ffi_api_version()) will always return 0. + +__C declaration:__ @botan_ffi_supports_api@ + +__defined at:__ @botan\/ffi.h:147:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_supports_api :: + HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @api_version@ + -> IO FC.CInt +botan_ffi_supports_api = hs_bindgen_62826bdb5fa347aa + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_version_string@ +foreign import ccall unsafe "hs_bindgen_c4ebfd171c63d0db" hs_bindgen_c4ebfd171c63d0db :: + IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) + +{-| Return a free-form version string, e.g., 2.0.0 + +__C declaration:__ @botan_version_string@ + +__defined at:__ @botan\/ffi.h:152:35@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_string :: IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_version_string = hs_bindgen_c4ebfd171c63d0db + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_version_major@ +foreign import ccall unsafe "hs_bindgen_7fee96b246bdcf95" hs_bindgen_7fee96b246bdcf95 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the major version of the library + +__C declaration:__ @botan_version_major@ + +__defined at:__ @botan\/ffi.h:157:32@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_major :: IO HsBindgen.Runtime.Prelude.Word32 +botan_version_major = hs_bindgen_7fee96b246bdcf95 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_version_minor@ +foreign import ccall unsafe "hs_bindgen_3cbff12c43860403" hs_bindgen_3cbff12c43860403 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the minor version of the library + +__C declaration:__ @botan_version_minor@ + +__defined at:__ @botan\/ffi.h:162:32@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_minor :: IO HsBindgen.Runtime.Prelude.Word32 +botan_version_minor = hs_bindgen_3cbff12c43860403 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_version_patch@ +foreign import ccall unsafe "hs_bindgen_b31ad183e6065d56" hs_bindgen_b31ad183e6065d56 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the patch version of the library + +__C declaration:__ @botan_version_patch@ + +__defined at:__ @botan\/ffi.h:167:32@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_patch :: IO HsBindgen.Runtime.Prelude.Word32 +botan_version_patch = hs_bindgen_b31ad183e6065d56 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_version_datestamp@ +foreign import ccall unsafe "hs_bindgen_11bcca58ccd46876" hs_bindgen_11bcca58ccd46876 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the date this version was released as an integer, or 0 if an unreleased version + +__C declaration:__ @botan_version_datestamp@ + +__defined at:__ @botan\/ffi.h:173:32@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_datestamp :: IO HsBindgen.Runtime.Prelude.Word32 +botan_version_datestamp = hs_bindgen_11bcca58ccd46876 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_constant_time_compare@ +foreign import ccall unsafe "hs_bindgen_848446c0cae98030" hs_bindgen_848446c0cae98030 :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Returns 0 if x[0..len] == y[0..len], or otherwise -1 + +__C declaration:__ @botan_constant_time_compare@ + +__defined at:__ @botan\/ffi.h:178:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_constant_time_compare :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @x@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @y@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> IO FC.CInt +botan_constant_time_compare = + hs_bindgen_848446c0cae98030 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_same_mem@ +foreign import ccall unsafe "hs_bindgen_ae58fe4cbc9b91a0" hs_bindgen_ae58fe4cbc9b91a0 :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Deprecated equivalent to botan_constant_time_compare + +__C declaration:__ @botan_same_mem@ + +__defined at:__ @botan\/ffi.h:184:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_same_mem :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @x@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @y@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> IO FC.CInt +botan_same_mem = hs_bindgen_ae58fe4cbc9b91a0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_scrub_mem@ +foreign import ccall unsafe "hs_bindgen_8939f0e2c3a6a559" hs_bindgen_8939f0e2c3a6a559 :: + Ptr.Ptr Void + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Clear out memory using a system specific approach to bypass elision by the compiler (currently using RtlSecureZeroMemory or tricks with volatile pointers). + +__C declaration:__ @botan_scrub_mem@ + +__defined at:__ @botan\/ffi.h:190:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_scrub_mem :: + Ptr.Ptr Void + -- ^ __C declaration:__ @mem@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @bytes@ + -> IO FC.CInt +botan_scrub_mem = hs_bindgen_8939f0e2c3a6a559 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_hex_encode@ +foreign import ccall unsafe "hs_bindgen_5ed11588435fbdaf" hs_bindgen_5ed11588435fbdaf :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| Perform hex encoding + + [__@x@ /(input)/__]: is some binary data + + [__@len@ /(input)/__]: length of x in bytes + + [__@out@ /(input)/__]: an array of at least x*2 bytes + + [__@flags@ /(input)/__]: flags out be upper or lower case? + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hex_encode@ + +__defined at:__ @botan\/ffi.h:202:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hex_encode :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@x@ /(input)/__]: is some binary data + + __C declaration:__ @x@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@len@ /(input)/__]: length of x in bytes + + __C declaration:__ @len@ + -} + -> Ptr.Ptr FC.CChar + {- ^ + + [__@out@ /(input)/__]: an array of at least x*2 bytes + + __C declaration:__ @out@ + -} + -> HsBindgen.Runtime.Prelude.Word32 + {- ^ + + [__@flags@ /(input)/__]: flags out be upper or lower case? + + __C declaration:__ @flags@ + -} + -> IO FC.CInt +botan_hex_encode = hs_bindgen_5ed11588435fbdaf + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_hex_decode@ +foreign import ccall unsafe "hs_bindgen_e45df4e6cd2bcbb4" hs_bindgen_e45df4e6cd2bcbb4 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Perform hex decoding + + [__@hex_str@ /(input)/__]: a string of hex chars (whitespace is ignored) + + [__@in_len@ /(input)/__]: the length of hex_str + + [__@out@ /(input)/__]: the output buffer should be at least strlen(hex_str)/2 bytes + + [__@out_len@ /(input)/__]: the size of the output buffer on input, set to the number of bytes written + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hex_decode@ + +__defined at:__ @botan\/ffi.h:212:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hex_decode :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@hex_str@ /(input)/__]: a string of hex chars (whitespace is ignored) + + __C declaration:__ @hex_str@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@in_len@ /(input)/__]: the length of hex_str + + __C declaration:__ @in_len@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: the output buffer should be at least strlen(hex_str)/2 bytes + + __C declaration:__ @out@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_len@ /(input)/__]: the size of the output buffer on input, set to the number of bytes written + + __C declaration:__ @out_len@ + -} + -> IO FC.CInt +botan_hex_decode = hs_bindgen_e45df4e6cd2bcbb4 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_base64_encode@ +foreign import ccall unsafe "hs_bindgen_6930dd4bdd9088ba" hs_bindgen_6930dd4bdd9088ba :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Perform base64 encoding + +__C declaration:__ @botan_base64_encode@ + +__defined at:__ @botan\/ffi.h:217:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_base64_encode :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @x@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> Ptr.Ptr FC.CChar + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_base64_encode = hs_bindgen_6930dd4bdd9088ba + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_base64_decode@ +foreign import ccall unsafe "hs_bindgen_ea639a49487317c8" hs_bindgen_ea639a49487317c8 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Perform base64 decoding + +__C declaration:__ @botan_base64_decode@ + +__defined at:__ @botan\/ffi.h:223:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_base64_decode :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @base64_str@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @in_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_base64_decode = hs_bindgen_ea639a49487317c8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_rng_init@ +foreign import ccall unsafe "hs_bindgen_0eb46900b55a3426" hs_bindgen_0eb46900b55a3426 :: + Ptr.Ptr Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Initialize a random number generator object + + [__@rng@ /(input)/__]: rng object + + [__@rng_type@ /(input)/__]: type of the rng, possible values: "system": system RNG "user": userspace RNG "user-threadsafe": userspace RNG, with internal locking "rdrand": directly read RDRAND Set rng_type to null to let the library choose some default. + +__C declaration:__ @botan_rng_init@ + +__defined at:__ @botan\/ffi.h:241:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_init :: + Ptr.Ptr Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: rng object + + __C declaration:__ @rng@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@rng_type@ /(input)/__]: type of the rng, possible values: "system": system RNG "user": userspace RNG "user-threadsafe": userspace RNG, with internal locking "rdrand": directly read RDRAND Set rng_type to null to let the library choose some default. + + __C declaration:__ @rng_type@ + -} + -> IO FC.CInt +botan_rng_init = hs_bindgen_0eb46900b55a3426 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_rng_init_custom@ +foreign import ccall unsafe "hs_bindgen_4b0fe6431212c176" hs_bindgen_4b0fe6431212c176 :: + Ptr.Ptr Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Ptr.Ptr Void + -> Ptr.FunPtr ((Ptr.Ptr Void) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) + -> Ptr.FunPtr ((Ptr.Ptr Void) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) + -> Ptr.FunPtr ((Ptr.Ptr Void) -> IO ()) + -> IO FC.CInt + +{-| Initialize a custom random number generator from a set of callback functions + + [__@rng_out@ /(input)/__]: rng object to create + + [__@rng_name@ /(input)/__]: name of the rng + + [__@context@ /(input)/__]: An application-specific context passed to the callback functions + + [__@get_cb@ /(input)/__]: Callback for getting random bytes from the rng, return 0 for success + + [__@add_entropy_cb@ /(input)/__]: Callback for adding entropy to the rng, return 0 for success, may be NULL + + [__@destroy_cb@ /(input)/__]: Callback called when rng is destroyed, may be NULL + +__C declaration:__ @botan_rng_init_custom@ + +__defined at:__ @botan\/ffi.h:252:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_init_custom :: + Ptr.Ptr Botan_rng_t + {- ^ + + [__@rng_out@ /(input)/__]: rng object to create + + __C declaration:__ @rng_out@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@rng_name@ /(input)/__]: name of the rng + + __C declaration:__ @rng_name@ + -} + -> Ptr.Ptr Void + {- ^ + + [__@context@ /(input)/__]: An application-specific context passed to the callback functions + + __C declaration:__ @context@ + -} + -> Ptr.FunPtr ((Ptr.Ptr Void) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) + {- ^ + + [__@get_cb@ /(input)/__]: Callback for getting random bytes from the rng, return 0 for success + + __C declaration:__ @get_cb@ + -} + -> Ptr.FunPtr ((Ptr.Ptr Void) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) + {- ^ + + [__@add_entropy_cb@ /(input)/__]: Callback for adding entropy to the rng, return 0 for success, may be NULL + + __C declaration:__ @add_entropy_cb@ + -} + -> Ptr.FunPtr ((Ptr.Ptr Void) -> IO ()) + {- ^ + + [__@destroy_cb@ /(input)/__]: Callback called when rng is destroyed, may be NULL + + __C declaration:__ @destroy_cb@ + -} + -> IO FC.CInt +botan_rng_init_custom = hs_bindgen_4b0fe6431212c176 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_rng_get@ +foreign import ccall unsafe "hs_bindgen_82f81effe5a0b288" hs_bindgen_82f81effe5a0b288 :: + Botan_rng_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get random bytes from a random number generator + + [__@rng@ /(input)/__]: rng object + + [__@out@ /(input)/__]: output buffer of size out_len + + [__@out_len@ /(input)/__]: number of requested bytes + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_rng_get@ + +__defined at:__ @botan\/ffi.h:264:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_get :: + Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: rng object + + __C declaration:__ @rng@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: output buffer of size out_len + + __C declaration:__ @out@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_len@ /(input)/__]: number of requested bytes + + __C declaration:__ @out_len@ + -} + -> IO FC.CInt +botan_rng_get = hs_bindgen_82f81effe5a0b288 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_system_rng_get@ +foreign import ccall unsafe "hs_bindgen_fcecd3c5757b21f8" hs_bindgen_fcecd3c5757b21f8 :: + Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get random bytes from system random number generator + + [__@out@ /(input)/__]: output buffer of size out_len + + [__@out_len@ /(input)/__]: number of requested bytes + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_system_rng_get@ + +__defined at:__ @botan\/ffi.h:272:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_system_rng_get :: + Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: output buffer of size out_len + + __C declaration:__ @out@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_len@ /(input)/__]: number of requested bytes + + __C declaration:__ @out_len@ + -} + -> IO FC.CInt +botan_system_rng_get = hs_bindgen_fcecd3c5757b21f8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_rng_reseed@ +foreign import ccall unsafe "hs_bindgen_c99b4229620b6f82" hs_bindgen_c99b4229620b6f82 :: + Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Reseed a random number generator Uses the System_RNG as a seed generator. + + [__@rng@ /(input)/__]: rng object + + [__@bits@ /(input)/__]: number of bits to reseed with + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_rng_reseed@ + +__defined at:__ @botan\/ffi.h:282:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_reseed :: + Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: rng object + + __C declaration:__ @rng@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@bits@ /(input)/__]: number of bits to reseed with + + __C declaration:__ @bits@ + -} + -> IO FC.CInt +botan_rng_reseed = hs_bindgen_c99b4229620b6f82 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_rng_reseed_from_rng@ +foreign import ccall unsafe "hs_bindgen_38a76b0c647e3825" hs_bindgen_38a76b0c647e3825 :: + Botan_rng_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Reseed a random number generator + + [__@rng@ /(input)/__]: rng object + + [__@source_rng@ /(input)/__]: the rng that will be read from + + [__@bits@ /(input)/__]: number of bits to reseed with + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_rng_reseed_from_rng@ + +__defined at:__ @botan\/ffi.h:292:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_reseed_from_rng :: + Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: rng object + + __C declaration:__ @rng@ + -} + -> Botan_rng_t + {- ^ + + [__@source_rng@ /(input)/__]: the rng that will be read from + + __C declaration:__ @source_rng@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@bits@ /(input)/__]: number of bits to reseed with + + __C declaration:__ @bits@ + -} + -> IO FC.CInt +botan_rng_reseed_from_rng = + hs_bindgen_38a76b0c647e3825 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_rng_add_entropy@ +foreign import ccall unsafe "hs_bindgen_4a41c967edccce6e" hs_bindgen_4a41c967edccce6e :: + Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Add some seed material to a random number generator + + [__@rng@ /(input)/__]: rng object + + [__@entropy@ /(input)/__]: the data to add + + [__@entropy_len@ /(input)/__]: length of entropy buffer + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_rng_add_entropy@ + +__defined at:__ @botan\/ffi.h:304:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_add_entropy :: + Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: rng object + + __C declaration:__ @rng@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@entropy@ /(input)/__]: the data to add + + __C declaration:__ @entropy@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@entropy_len@ /(input)/__]: length of entropy buffer + + __C declaration:__ @entropy_len@ + -} + -> IO FC.CInt +botan_rng_add_entropy = hs_bindgen_4a41c967edccce6e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_rng_destroy@ +foreign import ccall unsafe "hs_bindgen_73ce7792c7b202f5" hs_bindgen_73ce7792c7b202f5 :: + Botan_rng_t + -> IO FC.CInt + +{-| Frees all resources of the random number generator object + + [__@rng@ /(input)/__]: rng object + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_rng_destroy@ + +__defined at:__ @botan\/ffi.h:313:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_destroy :: + Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: rng object + + __C declaration:__ @rng@ + -} + -> IO FC.CInt +botan_rng_destroy = hs_bindgen_73ce7792c7b202f5 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_hash_init@ +foreign import ccall unsafe "hs_bindgen_e6b679dd912a3302" hs_bindgen_e6b679dd912a3302 :: + Ptr.Ptr Botan_hash_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| Initialize a hash function object + + [__@hash@ /(input)/__]: hash object + + [__@hash_name@ /(input)/__]: name of the hash function, e.g., "SHA-384" + + [__@flags@ /(input)/__]: should be 0 in current API revision, all other uses are reserved and return BOTAN_FFI_ERROR_BAD_FLAG + +__C declaration:__ @botan_hash_init@ + +__defined at:__ @botan\/ffi.h:327:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_init :: + Ptr.Ptr Botan_hash_t + {- ^ + + [__@hash@ /(input)/__]: hash object + + __C declaration:__ @hash@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@hash_name@ /(input)/__]: name of the hash function, e.g., "SHA-384" + + __C declaration:__ @hash_name@ + -} + -> HsBindgen.Runtime.Prelude.Word32 + {- ^ + + [__@flags@ /(input)/__]: should be 0 in current API revision, all other uses are reserved and return BOTAN_FFI_ERROR_BAD_FLAG + + __C declaration:__ @flags@ + -} + -> IO FC.CInt +botan_hash_init = hs_bindgen_e6b679dd912a3302 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_hash_copy_state@ +foreign import ccall unsafe "hs_bindgen_ebba0afdbc27619f" hs_bindgen_ebba0afdbc27619f :: + Ptr.Ptr Botan_hash_t + -> Botan_hash_t + -> IO FC.CInt + +{-| Copy the state of a hash function object + + [__@dest@ /(input)/__]: destination hash object + + [__@source@ /(input)/__]: source hash object + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_copy_state@ + +__defined at:__ @botan\/ffi.h:335:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_copy_state :: + Ptr.Ptr Botan_hash_t + {- ^ + + [__@dest@ /(input)/__]: destination hash object + + __C declaration:__ @dest@ + -} + -> Botan_hash_t + {- ^ + + [__@source@ /(input)/__]: source hash object + + __C declaration:__ @source@ + -} + -> IO FC.CInt +botan_hash_copy_state = hs_bindgen_ebba0afdbc27619f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_hash_output_length@ +foreign import ccall unsafe "hs_bindgen_8bf0468d0570b702" hs_bindgen_8bf0468d0570b702 :: + Botan_hash_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Writes the output length of the hash function to *output_length + + [__@hash@ /(input)/__]: hash object + + [__@output_length@ /(input)/__]: output buffer to hold the hash function output length + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_output_length@ + +__defined at:__ @botan\/ffi.h:343:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_output_length :: + Botan_hash_t + {- ^ + + [__@hash@ /(input)/__]: hash object + + __C declaration:__ @hash@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@output_length@ /(input)/__]: output buffer to hold the hash function output length + + __C declaration:__ @output_length@ + -} + -> IO FC.CInt +botan_hash_output_length = + hs_bindgen_8bf0468d0570b702 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_hash_block_size@ +foreign import ccall unsafe "hs_bindgen_9cd60293a57475ef" hs_bindgen_9cd60293a57475ef :: + Botan_hash_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Writes the block size of the hash function to *block_size + + [__@hash@ /(input)/__]: hash object + + [__@block_size@ /(input)/__]: output buffer to hold the hash function output length + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_block_size@ + +__defined at:__ @botan\/ffi.h:351:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_block_size :: + Botan_hash_t + {- ^ + + [__@hash@ /(input)/__]: hash object + + __C declaration:__ @hash@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@block_size@ /(input)/__]: output buffer to hold the hash function output length + + __C declaration:__ @block_size@ + -} + -> IO FC.CInt +botan_hash_block_size = hs_bindgen_9cd60293a57475ef + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_hash_update@ +foreign import ccall unsafe "hs_bindgen_5221ad3bbf0c534a" hs_bindgen_5221ad3bbf0c534a :: + Botan_hash_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Send more input to the hash function + + [__@hash@ /(input)/__]: hash object + + [__@in@ /(input)/__]: input buffer + + [__@in_len@ /(input)/__]: number of bytes to read from the input buffer + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_update@ + +__defined at:__ @botan\/ffi.h:360:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_update :: + Botan_hash_t + {- ^ + + [__@hash@ /(input)/__]: hash object + + __C declaration:__ @hash@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @in'@ + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@in_len@ /(input)/__]: number of bytes to read from the input buffer + + __C declaration:__ @in_len@ + -} + -> IO FC.CInt +botan_hash_update = hs_bindgen_5221ad3bbf0c534a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_hash_final@ +foreign import ccall unsafe "hs_bindgen_4007282393489051" hs_bindgen_4007282393489051 :: + Botan_hash_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| Finalizes the hash computation and writes the output to out[0:botan_hash_output_length()] then reinitializes for computing another digest as if botan_hash_clear had been called. + + [__@hash@ /(input)/__]: hash object + + [__@out@ /(input)/__]: output buffer + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_final@ + +__defined at:__ @botan\/ffi.h:370:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_final :: + Botan_hash_t + {- ^ + + [__@hash@ /(input)/__]: hash object + + __C declaration:__ @hash@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: output buffer + + __C declaration:__ @out@ + -} + -> IO FC.CInt +botan_hash_final = hs_bindgen_4007282393489051 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_hash_clear@ +foreign import ccall unsafe "hs_bindgen_c9bdb63165f720da" hs_bindgen_c9bdb63165f720da :: + Botan_hash_t + -> IO FC.CInt + +{-| Reinitializes the state of the hash computation. A hash can be computed (with update/final) immediately. + + [__@hash@ /(input)/__]: hash object + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_clear@ + +__defined at:__ @botan\/ffi.h:378:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_clear :: + Botan_hash_t + {- ^ + + [__@hash@ /(input)/__]: hash object + + __C declaration:__ @hash@ + -} + -> IO FC.CInt +botan_hash_clear = hs_bindgen_c9bdb63165f720da + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_hash_destroy@ +foreign import ccall unsafe "hs_bindgen_1ef43600968388bc" hs_bindgen_1ef43600968388bc :: + Botan_hash_t + -> IO FC.CInt + +{-| Frees all resources of the hash object + + [__@hash@ /(input)/__]: hash object + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_hash_destroy@ + +__defined at:__ @botan\/ffi.h:385:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_destroy :: + Botan_hash_t + {- ^ + + [__@hash@ /(input)/__]: hash object + + __C declaration:__ @hash@ + -} + -> IO FC.CInt +botan_hash_destroy = hs_bindgen_1ef43600968388bc + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_hash_name@ +foreign import ccall unsafe "hs_bindgen_769c0524dec27ac2" hs_bindgen_769c0524dec27ac2 :: + Botan_hash_t + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get the name of this hash function + + [__@hash@ /(input)/__]: the object to read + + [__@name@ /(input)/__]: output buffer + + [__@name_len@ /(input)/__]: on input, the length of buffer, on success the number of bytes written + +__C declaration:__ @botan_hash_name@ + +__defined at:__ @botan\/ffi.h:393:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_name :: + Botan_hash_t + {- ^ + + [__@hash@ /(input)/__]: the object to read + + __C declaration:__ @hash@ + -} + -> Ptr.Ptr FC.CChar + {- ^ + + [__@name@ /(input)/__]: output buffer + + __C declaration:__ @name@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@name_len@ /(input)/__]: on input, the length of buffer, on success the number of bytes written + + __C declaration:__ @name_len@ + -} + -> IO FC.CInt +botan_hash_name = hs_bindgen_769c0524dec27ac2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mac_init@ +foreign import ccall unsafe "hs_bindgen_5bc8502553b6fb4b" hs_bindgen_5bc8502553b6fb4b :: + Ptr.Ptr Botan_mac_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| Initialize a message authentication code object + + [__@mac@ /(input)/__]: mac object + + [__@mac_name@ /(input)/__]: name of the hash function, e.g., "HMAC(SHA-384)" + + [__@flags@ /(input)/__]: should be 0 in current API revision, all other uses are reserved and return a negative value (error code) + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_init@ + +__defined at:__ @botan\/ffi.h:408:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_init :: + Ptr.Ptr Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: mac object + + __C declaration:__ @mac@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@mac_name@ /(input)/__]: name of the hash function, e.g., "HMAC(SHA-384)" + + __C declaration:__ @mac_name@ + -} + -> HsBindgen.Runtime.Prelude.Word32 + {- ^ + + [__@flags@ /(input)/__]: should be 0 in current API revision, all other uses are reserved and return a negative value (error code) + + __C declaration:__ @flags@ + -} + -> IO FC.CInt +botan_mac_init = hs_bindgen_5bc8502553b6fb4b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mac_output_length@ +foreign import ccall unsafe "hs_bindgen_d7142cf56db204ee" hs_bindgen_d7142cf56db204ee :: + Botan_mac_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Writes the output length of the message authentication code to *output_length + + [__@mac@ /(input)/__]: mac object + + [__@output_length@ /(input)/__]: output buffer to hold the MAC output length + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_output_length@ + +__defined at:__ @botan\/ffi.h:416:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_output_length :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: mac object + + __C declaration:__ @mac@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@output_length@ /(input)/__]: output buffer to hold the MAC output length + + __C declaration:__ @output_length@ + -} + -> IO FC.CInt +botan_mac_output_length = hs_bindgen_d7142cf56db204ee + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mac_set_key@ +foreign import ccall unsafe "hs_bindgen_1d7b7d386ad679fe" hs_bindgen_1d7b7d386ad679fe :: + Botan_mac_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Sets the key on the MAC + + [__@mac@ /(input)/__]: mac object + + [__@key@ /(input)/__]: buffer holding the key + + [__@key_len@ /(input)/__]: size of the key buffer in bytes + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_set_key@ + +__defined at:__ @botan\/ffi.h:425:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_set_key :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: mac object + + __C declaration:__ @mac@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@key@ /(input)/__]: buffer holding the key + + __C declaration:__ @key@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@key_len@ /(input)/__]: size of the key buffer in bytes + + __C declaration:__ @key_len@ + -} + -> IO FC.CInt +botan_mac_set_key = hs_bindgen_1d7b7d386ad679fe + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mac_set_nonce@ +foreign import ccall unsafe "hs_bindgen_2dc9ceb26786a0eb" hs_bindgen_2dc9ceb26786a0eb :: + Botan_mac_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Sets the nonce on the MAC + + [__@mac@ /(input)/__]: mac object + + [__@nonce@ /(input)/__]: buffer holding the key + + [__@nonce_len@ /(input)/__]: size of the key buffer in bytes + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_set_nonce@ + +__defined at:__ @botan\/ffi.h:434:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_set_nonce :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: mac object + + __C declaration:__ @mac@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@nonce@ /(input)/__]: buffer holding the key + + __C declaration:__ @nonce@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@nonce_len@ /(input)/__]: size of the key buffer in bytes + + __C declaration:__ @nonce_len@ + -} + -> IO FC.CInt +botan_mac_set_nonce = hs_bindgen_2dc9ceb26786a0eb + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mac_update@ +foreign import ccall unsafe "hs_bindgen_9c18057d9fb4f83b" hs_bindgen_9c18057d9fb4f83b :: + Botan_mac_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Send more input to the message authentication code + + [__@mac@ /(input)/__]: mac object + + [__@buf@ /(input)/__]: input buffer + + [__@len@ /(input)/__]: number of bytes to read from the input buffer + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_update@ + +__defined at:__ @botan\/ffi.h:443:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_update :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: mac object + + __C declaration:__ @mac@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@buf@ /(input)/__]: input buffer + + __C declaration:__ @buf@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@len@ /(input)/__]: number of bytes to read from the input buffer + + __C declaration:__ @len@ + -} + -> IO FC.CInt +botan_mac_update = hs_bindgen_9c18057d9fb4f83b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mac_final@ +foreign import ccall unsafe "hs_bindgen_85d9f6b74d3fdbc9" hs_bindgen_85d9f6b74d3fdbc9 :: + Botan_mac_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| Finalizes the MAC computation and writes the output to out[0:botan_mac_output_length()] then reinitializes for computing another MAC as if botan_mac_clear had been called. + + [__@mac@ /(input)/__]: mac object + + [__@out@ /(input)/__]: output buffer + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_final@ + +__defined at:__ @botan\/ffi.h:453:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_final :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: mac object + + __C declaration:__ @mac@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: output buffer + + __C declaration:__ @out@ + -} + -> IO FC.CInt +botan_mac_final = hs_bindgen_85d9f6b74d3fdbc9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mac_clear@ +foreign import ccall unsafe "hs_bindgen_99eb5bf3ef4ff0a0" hs_bindgen_99eb5bf3ef4ff0a0 :: + Botan_mac_t + -> IO FC.CInt + +{-| Reinitializes the state of the MAC computation. A MAC can be computed (with update/final) immediately. + + [__@mac@ /(input)/__]: mac object + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_clear@ + +__defined at:__ @botan\/ffi.h:461:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_clear :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: mac object + + __C declaration:__ @mac@ + -} + -> IO FC.CInt +botan_mac_clear = hs_bindgen_99eb5bf3ef4ff0a0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mac_name@ +foreign import ccall unsafe "hs_bindgen_b8d58e4de555e434" hs_bindgen_b8d58e4de555e434 :: + Botan_mac_t + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get the name of this MAC + + [__@mac@ /(input)/__]: the object to read + + [__@name@ /(input)/__]: output buffer + + [__@name_len@ /(input)/__]: on input, the length of buffer, on success the number of bytes written + +__C declaration:__ @botan_mac_name@ + +__defined at:__ @botan\/ffi.h:469:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_name :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: the object to read + + __C declaration:__ @mac@ + -} + -> Ptr.Ptr FC.CChar + {- ^ + + [__@name@ /(input)/__]: output buffer + + __C declaration:__ @name@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@name_len@ /(input)/__]: on input, the length of buffer, on success the number of bytes written + + __C declaration:__ @name_len@ + -} + -> IO FC.CInt +botan_mac_name = hs_bindgen_b8d58e4de555e434 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mac_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_2d980ac1daaddfdc" hs_bindgen_2d980ac1daaddfdc :: + Botan_mac_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get the key length limits of this auth code + + [__@mac@ /(input)/__]: the object to read + + [__@out_minimum_keylength@ /(input)/__]: if non-NULL, will be set to minimum keylength of MAC + + [__@out_maximum_keylength@ /(input)/__]: if non-NULL, will be set to maximum keylength of MAC + + [__@out_keylength_modulo@ /(input)/__]: if non-NULL will be set to byte multiple of valid keys + +__C declaration:__ @botan_mac_get_keyspec@ + +__defined at:__ @botan\/ffi.h:478:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_get_keyspec :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: the object to read + + __C declaration:__ @mac@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_minimum_keylength@ /(input)/__]: if non-NULL, will be set to minimum keylength of MAC + + __C declaration:__ @out_minimum_keylength@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_maximum_keylength@ /(input)/__]: if non-NULL, will be set to maximum keylength of MAC + + __C declaration:__ @out_maximum_keylength@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_keylength_modulo@ /(input)/__]: if non-NULL will be set to byte multiple of valid keys + + __C declaration:__ @out_keylength_modulo@ + -} + -> IO FC.CInt +botan_mac_get_keyspec = hs_bindgen_2d980ac1daaddfdc + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mac_destroy@ +foreign import ccall unsafe "hs_bindgen_8e23860ae9ae7f95" hs_bindgen_8e23860ae9ae7f95 :: + Botan_mac_t + -> IO FC.CInt + +{-| Frees all resources of the MAC object + + [__@mac@ /(input)/__]: mac object + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_mac_destroy@ + +__defined at:__ @botan\/ffi.h:488:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_destroy :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: mac object + + __C declaration:__ @mac@ + -} + -> IO FC.CInt +botan_mac_destroy = hs_bindgen_8e23860ae9ae7f95 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_cipher_init@ +foreign import ccall unsafe "hs_bindgen_cfa43e80a5470af3" hs_bindgen_cfa43e80a5470af3 :: + Ptr.Ptr Botan_cipher_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| Initialize a cipher object + +__C declaration:__ @botan_cipher_init@ + +__defined at:__ @botan\/ffi.h:502:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_init :: + Ptr.Ptr Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @name@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_cipher_init = hs_bindgen_cfa43e80a5470af3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_cipher_name@ +foreign import ccall unsafe "hs_bindgen_bd4ace39130352a2" hs_bindgen_bd4ace39130352a2 :: + Botan_cipher_t + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Return the name of the cipher object + +__C declaration:__ @botan_cipher_name@ + +__defined at:__ @botan\/ffi.h:507:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_name :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> Ptr.Ptr FC.CChar + -- ^ __C declaration:__ @name@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @name_len@ + -> IO FC.CInt +botan_cipher_name = hs_bindgen_bd4ace39130352a2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_cipher_output_length@ +foreign import ccall unsafe "hs_bindgen_f78459ff64ae05a1" hs_bindgen_f78459ff64ae05a1 :: + Botan_cipher_t + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Return the output length of this cipher, for a particular input length. + +__C declaration:__ @botan_cipher_output_length@ + +__defined at:__ @botan\/ffi.h:512:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_output_length :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @in_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_cipher_output_length = + hs_bindgen_f78459ff64ae05a1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_cipher_valid_nonce_length@ +foreign import ccall unsafe "hs_bindgen_8c370b726aacd945" hs_bindgen_8c370b726aacd945 :: + Botan_cipher_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Return if the specified nonce length is valid for this cipher + +__C declaration:__ @botan_cipher_valid_nonce_length@ + +__defined at:__ @botan\/ffi.h:517:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_valid_nonce_length :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @nl@ + -> IO FC.CInt +botan_cipher_valid_nonce_length = + hs_bindgen_8c370b726aacd945 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_cipher_get_tag_length@ +foreign import ccall unsafe "hs_bindgen_16c12e8c5c61817d" hs_bindgen_16c12e8c5c61817d :: + Botan_cipher_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get the tag length of the cipher (0 for non-AEAD modes) + +__C declaration:__ @botan_cipher_get_tag_length@ + +__defined at:__ @botan\/ffi.h:522:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_get_tag_length :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @tag_size@ + -> IO FC.CInt +botan_cipher_get_tag_length = + hs_bindgen_16c12e8c5c61817d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_cipher_get_default_nonce_length@ +foreign import ccall unsafe "hs_bindgen_e71dc2d2ce4d35df" hs_bindgen_e71dc2d2ce4d35df :: + Botan_cipher_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get the default nonce length of this cipher + +__C declaration:__ @botan_cipher_get_default_nonce_length@ + +__defined at:__ @botan\/ffi.h:527:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_get_default_nonce_length :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @nl@ + -> IO FC.CInt +botan_cipher_get_default_nonce_length = + hs_bindgen_e71dc2d2ce4d35df + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_cipher_get_update_granularity@ +foreign import ccall unsafe "hs_bindgen_395261d6ee3f7315" hs_bindgen_395261d6ee3f7315 :: + Botan_cipher_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Return the update granularity of the cipher; botan_cipher_update must be called with blocks of this size, except for the final. + +__C declaration:__ @botan_cipher_get_update_granularity@ + +__defined at:__ @botan\/ffi.h:533:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_get_update_granularity :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ug@ + -> IO FC.CInt +botan_cipher_get_update_granularity = + hs_bindgen_395261d6ee3f7315 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_cipher_get_ideal_update_granularity@ +foreign import ccall unsafe "hs_bindgen_e17d786854e2a5cb" hs_bindgen_e17d786854e2a5cb :: + Botan_cipher_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Return the ideal update granularity of the cipher. This is some multiple of the update granularity, reflecting possibilities for optimization. + +__C declaration:__ @botan_cipher_get_ideal_update_granularity@ + +__defined at:__ @botan\/ffi.h:539:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_get_ideal_update_granularity :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ug@ + -> IO FC.CInt +botan_cipher_get_ideal_update_granularity = + hs_bindgen_e17d786854e2a5cb + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_cipher_query_keylen@ +foreign import ccall unsafe "hs_bindgen_2e11ec2dd05e51c2" hs_bindgen_2e11ec2dd05e51c2 :: + Botan_cipher_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get information about the key lengths. Prefer botan_cipher_get_keyspec + +__C declaration:__ @botan_cipher_query_keylen@ + +__defined at:__ @botan\/ffi.h:544:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_query_keylen :: + Botan_cipher_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_minimum_keylength@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_maximum_keylength@ + -> IO FC.CInt +botan_cipher_query_keylen = + hs_bindgen_2e11ec2dd05e51c2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_3f7719de201617e6" hs_bindgen_3f7719de201617e6 :: + Botan_cipher_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get information about the supported key lengths. + +__C declaration:__ @botan_cipher_get_keyspec@ + +__defined at:__ @botan\/ffi.h:551:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_get_keyspec :: + Botan_cipher_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @min_keylen@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @max_keylen@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @mod_keylen@ + -> IO FC.CInt +botan_cipher_get_keyspec = + hs_bindgen_3f7719de201617e6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_debe670a57be4c7e" hs_bindgen_debe670a57be4c7e :: + Botan_cipher_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Set the key for this cipher object + +__C declaration:__ @botan_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:559:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_set_key :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> IO FC.CInt +botan_cipher_set_key = hs_bindgen_debe670a57be4c7e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_cipher_reset@ +foreign import ccall unsafe "hs_bindgen_2f08644e5d1c3dea" hs_bindgen_2f08644e5d1c3dea :: + Botan_cipher_t + -> IO FC.CInt + +{-| Reset the message specific state for this cipher. Without resetting the keys, this resets the nonce, and any state associated with any message bits that have been processed so far. + + It is conceptually equivalent to calling botan_cipher_clear followed by botan_cipher_set_key with the original key. + +__C declaration:__ @botan_cipher_reset@ + +__defined at:__ @botan\/ffi.h:570:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_reset :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_reset = hs_bindgen_2f08644e5d1c3dea + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_cipher_set_associated_data@ +foreign import ccall unsafe "hs_bindgen_f9baf71e8f239a21" hs_bindgen_f9baf71e8f239a21 :: + Botan_cipher_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Set the associated data. Will fail if cipher is not an AEAD + +__C declaration:__ @botan_cipher_set_associated_data@ + +__defined at:__ @botan\/ffi.h:575:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_set_associated_data :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @ad@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ad_len@ + -> IO FC.CInt +botan_cipher_set_associated_data = + hs_bindgen_f9baf71e8f239a21 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_cipher_start@ +foreign import ccall unsafe "hs_bindgen_56c5a180f9446bf7" hs_bindgen_56c5a180f9446bf7 :: + Botan_cipher_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Begin processing a new message using the provided nonce + +__C declaration:__ @botan_cipher_start@ + +__defined at:__ @botan\/ffi.h:581:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_start :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @nonce@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @nonce_len@ + -> IO FC.CInt +botan_cipher_start = hs_bindgen_56c5a180f9446bf7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_cipher_update@ +foreign import ccall unsafe "hs_bindgen_e063f4a55b473d86" hs_bindgen_e063f4a55b473d86 :: + Botan_cipher_t + -> HsBindgen.Runtime.Prelude.Word32 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_cipher_update' +-} +botan_cipher_update_wrapper :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @output@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @output_size@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @output_written@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @input_bytes@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @input_size@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @input_consumed@ + -> IO FC.CInt +botan_cipher_update_wrapper = + hs_bindgen_e063f4a55b473d86 + +{-| Encrypt some data + +__C declaration:__ @botan_cipher_update@ + +__defined at:__ @botan\/ffi.h:589:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_update :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @output@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @output_size@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @output_written@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @input_bytes@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @input_size@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @input_consumed@ + -> IO FC.CInt +botan_cipher_update = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + HsBindgen.Runtime.IncompleteArray.withPtr x5 (\ptr8 -> + hs_bindgen_e063f4a55b473d86 x0 x1 x2 x3 x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x6 x7) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_ecfeb7c6facd4776" hs_bindgen_ecfeb7c6facd4776 :: + Botan_cipher_t + -> IO FC.CInt + +{-| Reset the key, nonce, AD and all other state on this cipher object + +__C declaration:__ @botan_cipher_clear@ + +__defined at:__ @botan\/ffi.h:601:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_clear :: + Botan_cipher_t + -- ^ __C declaration:__ @hash@ + -> IO FC.CInt +botan_cipher_clear = hs_bindgen_ecfeb7c6facd4776 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_12330e6f6d9d3d98" hs_bindgen_12330e6f6d9d3d98 :: + Botan_cipher_t + -> IO FC.CInt + +{-| Destroy the cipher object + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_cipher_destroy@ + +__defined at:__ @botan\/ffi.h:607:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_destroy :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_destroy = hs_bindgen_12330e6f6d9d3d98 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pbkdf@ +foreign import ccall unsafe "hs_bindgen_4e22d71dd5b2927a" hs_bindgen_4e22d71dd5b2927a :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pbkdf' +-} +botan_pbkdf_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @pbkdf_algo@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @iterations@ + -> IO FC.CInt +botan_pbkdf_wrapper = hs_bindgen_4e22d71dd5b2927a + +{-| __C declaration:__ @botan_pbkdf@ + + __defined at:__ @botan\/ffi.h:626:1@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pbkdf :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @pbkdf_algo@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @iterations@ + -> IO FC.CInt +botan_pbkdf = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + HsBindgen.Runtime.IncompleteArray.withPtr x4 (\ptr7 -> + hs_bindgen_4e22d71dd5b2927a x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x5 x6) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pbkdf_timed@ +foreign import ccall unsafe "hs_bindgen_33c491736990a21a" hs_bindgen_33c491736990a21a :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pbkdf_timed' +-} +botan_pbkdf_timed_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@pbkdf_algo@ /(input)/__]: PBKDF algorithm, e.g., "PBKDF2(SHA-256)" + + __C declaration:__ @pbkdf_algo@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: buffer to store the derived key, must be of out_len bytes + + __C declaration:__ @out@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_len@ /(input)/__]: the desired length of the key to produce + + __C declaration:__ @out_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@passphrase@ /(input)/__]: the password to derive the key from + + __C declaration:__ @passphrase@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@salt@ /(input)/__]: a randomly chosen salt + + __C declaration:__ @salt@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@salt_len@ /(input)/__]: length of salt in bytes + + __C declaration:__ @salt_len@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@milliseconds_to_run@ /(input)/__]: if iterations is zero, then instead the PBKDF is run until milliseconds_to_run milliseconds has passed + + __C declaration:__ @milliseconds_to_run@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_iterations_used@ /(input)/__]: set to the number iterations executed + + __C declaration:__ @out_iterations_used@ + -} + -> IO FC.CInt +botan_pbkdf_timed_wrapper = + hs_bindgen_33c491736990a21a + +{-| Derive a key from a passphrase, running until msec time has elapsed. + + [__@pbkdf_algo@ /(input)/__]: PBKDF algorithm, e.g., "PBKDF2(SHA-256)" + + [__@out@ /(input)/__]: buffer to store the derived key, must be of out_len bytes + + [__@out_len@ /(input)/__]: the desired length of the key to produce + + [__@passphrase@ /(input)/__]: the password to derive the key from + + [__@salt@ /(input)/__]: a randomly chosen salt + + [__@salt_len@ /(input)/__]: length of salt in bytes + + [__@milliseconds_to_run@ /(input)/__]: if iterations is zero, then instead the PBKDF is run until milliseconds_to_run milliseconds has passed + + [__@out_iterations_used@ /(input)/__]: set to the number iterations executed + + __returns:__ 0 on success, a negative value on failure + + Deprecated: use + + botan_pwdhash_timed(pbkdf_algo, static_cast (ms_to_run), iterations_used, nullptr, nullptr, out, out_len, password, 0, salt, salt_len); + +__C declaration:__ @botan_pbkdf_timed@ + +__defined at:__ @botan\/ffi.h:656:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pbkdf_timed :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@pbkdf_algo@ /(input)/__]: PBKDF algorithm, e.g., "PBKDF2(SHA-256)" + + __C declaration:__ @pbkdf_algo@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: buffer to store the derived key, must be of out_len bytes + + __C declaration:__ @out@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_len@ /(input)/__]: the desired length of the key to produce + + __C declaration:__ @out_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@passphrase@ /(input)/__]: the password to derive the key from + + __C declaration:__ @passphrase@ + -} + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@salt@ /(input)/__]: a randomly chosen salt + + __C declaration:__ @salt@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@salt_len@ /(input)/__]: length of salt in bytes + + __C declaration:__ @salt_len@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@milliseconds_to_run@ /(input)/__]: if iterations is zero, then instead the PBKDF is run until milliseconds_to_run milliseconds has passed + + __C declaration:__ @milliseconds_to_run@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_iterations_used@ /(input)/__]: set to the number iterations executed + + __C declaration:__ @out_iterations_used@ + -} + -> IO FC.CInt +botan_pbkdf_timed = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + HsBindgen.Runtime.IncompleteArray.withPtr x4 (\ptr8 -> + hs_bindgen_33c491736990a21a x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pwdhash@ +foreign import ccall unsafe "hs_bindgen_73e9909b4443cb3f" hs_bindgen_73e9909b4443cb3f :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pwdhash' +-} +botan_pwdhash_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @algo@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param1@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param2@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param3@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @passphrase_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> IO FC.CInt +botan_pwdhash_wrapper = hs_bindgen_73e9909b4443cb3f + +{-| __C declaration:__ @botan_pwdhash@ + + __defined at:__ @botan\/ffi.h:679:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pwdhash :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @algo@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param1@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param2@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param3@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @passphrase_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> IO FC.CInt +botan_pwdhash = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + \x8 -> + \x9 -> + HsBindgen.Runtime.IncompleteArray.withPtr x8 (\ptr10 -> + hs_bindgen_73e9909b4443cb3f x0 x1 x2 x3 x4 x5 x6 x7 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x9) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pwdhash_timed@ +foreign import ccall unsafe "hs_bindgen_bb3a36ce6dd3e7da" hs_bindgen_bb3a36ce6dd3e7da :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pwdhash_timed' +-} +botan_pwdhash_timed_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @algo@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @msec@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param1@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param2@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param3@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @passphrase_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> IO FC.CInt +botan_pwdhash_timed_wrapper = + hs_bindgen_bb3a36ce6dd3e7da + +{-| __C declaration:__ @botan_pwdhash_timed@ + + __defined at:__ @botan\/ffi.h:707:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pwdhash_timed :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @algo@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @msec@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param1@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param2@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param3@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @passphrase_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> IO FC.CInt +botan_pwdhash_timed = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + \x8 -> + \x9 -> + \x10 -> + HsBindgen.Runtime.IncompleteArray.withPtr x9 (\ptr11 -> + hs_bindgen_bb3a36ce6dd3e7da x0 x1 x2 x3 x4 x5 x6 x7 x8 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr11) x10) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_scrypt@ +foreign import ccall unsafe "hs_bindgen_9742bccff511067a" hs_bindgen_9742bccff511067a :: + Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_scrypt' +-} +botan_scrypt_wrapper :: + Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @n@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @r@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @p@ + -> IO FC.CInt +botan_scrypt_wrapper = hs_bindgen_9742bccff511067a + +{-| Derive a key using scrypt Deprecated; use botan_pwdhash("Scrypt", N, r, p, out, out_len, password, 0, salt, salt_len); + +__C declaration:__ @botan_scrypt@ + +__defined at:__ @botan\/ffi.h:727:1@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_scrypt :: + Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @n@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @r@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @p@ + -> IO FC.CInt +botan_scrypt = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + HsBindgen.Runtime.IncompleteArray.withPtr x3 (\ptr8 -> + hs_bindgen_9742bccff511067a x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_kdf@ +foreign import ccall unsafe "hs_bindgen_13803a3b3ee5b33c" hs_bindgen_13803a3b3ee5b33c :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_kdf' +-} +botan_kdf_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@kdf_algo@ /(input)/__]: KDF algorithm, e.g., "SP800-56C" + + __C declaration:__ @kdf_algo@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: buffer holding the derived key, must be of length out_len + + __C declaration:__ @out@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_len@ /(input)/__]: the desired output length in bytes + + __C declaration:__ @out_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@secret@ /(input)/__]: the secret input + + __C declaration:__ @secret@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@secret_len@ /(input)/__]: size of secret in bytes + + __C declaration:__ @secret_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@salt@ /(input)/__]: a diversifier + + __C declaration:__ @salt@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@salt_len@ /(input)/__]: size of salt in bytes + + __C declaration:__ @salt_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@label@ /(input)/__]: purpose for the derived keying material + + __C declaration:__ @label@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@label_len@ /(input)/__]: size of label in bytes + + __C declaration:__ @label_len@ + -} + -> IO FC.CInt +botan_kdf_wrapper = hs_bindgen_13803a3b3ee5b33c + +{-| Derive a key + + [__@kdf_algo@ /(input)/__]: KDF algorithm, e.g., "SP800-56C" + + [__@out@ /(input)/__]: buffer holding the derived key, must be of length out_len + + [__@out_len@ /(input)/__]: the desired output length in bytes + + [__@secret@ /(input)/__]: the secret input + + [__@secret_len@ /(input)/__]: size of secret in bytes + + [__@salt@ /(input)/__]: a diversifier + + [__@salt_len@ /(input)/__]: size of salt in bytes + + [__@label@ /(input)/__]: purpose for the derived keying material + + [__@label_len@ /(input)/__]: size of label in bytes + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_kdf@ + +__defined at:__ @botan\/ffi.h:745:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_kdf :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@kdf_algo@ /(input)/__]: KDF algorithm, e.g., "SP800-56C" + + __C declaration:__ @kdf_algo@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: buffer holding the derived key, must be of length out_len + + __C declaration:__ @out@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_len@ /(input)/__]: the desired output length in bytes + + __C declaration:__ @out_len@ + -} + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@secret@ /(input)/__]: the secret input + + __C declaration:__ @secret@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@secret_len@ /(input)/__]: size of secret in bytes + + __C declaration:__ @secret_len@ + -} + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@salt@ /(input)/__]: a diversifier + + __C declaration:__ @salt@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@salt_len@ /(input)/__]: size of salt in bytes + + __C declaration:__ @salt_len@ + -} + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@label@ /(input)/__]: purpose for the derived keying material + + __C declaration:__ @label@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@label_len@ /(input)/__]: size of label in bytes + + __C declaration:__ @label_len@ + -} + -> IO FC.CInt +botan_kdf = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + \x8 -> + HsBindgen.Runtime.IncompleteArray.withPtr x7 (\ptr9 -> + HsBindgen.Runtime.IncompleteArray.withPtr x5 (\ptr10 -> + HsBindgen.Runtime.IncompleteArray.withPtr x3 (\ptr11 -> + hs_bindgen_13803a3b3ee5b33c x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr11) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x6 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x8))) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_block_cipher_init@ +foreign import ccall unsafe "hs_bindgen_7950f660fb144b22" hs_bindgen_7950f660fb144b22 :: + Ptr.Ptr Botan_block_cipher_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Initialize a block cipher object + +__C declaration:__ @botan_block_cipher_init@ + +__defined at:__ @botan\/ffi.h:759:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_init :: + Ptr.Ptr Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cipher_name@ + -> IO FC.CInt +botan_block_cipher_init = hs_bindgen_7950f660fb144b22 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_block_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_1aa35f7148171776" hs_bindgen_1aa35f7148171776 :: + Botan_block_cipher_t + -> IO FC.CInt + +{-| Destroy a block cipher object + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_block_cipher_destroy@ + +__defined at:__ @botan\/ffi.h:766:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_destroy :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> IO FC.CInt +botan_block_cipher_destroy = + hs_bindgen_1aa35f7148171776 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_block_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_ed2214aef9511d95" hs_bindgen_ed2214aef9511d95 :: + Botan_block_cipher_t + -> IO FC.CInt + +{-| Reinitializes the block cipher + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_block_cipher_clear@ + +__defined at:__ @botan\/ffi.h:772:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_clear :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> IO FC.CInt +botan_block_cipher_clear = + hs_bindgen_ed2214aef9511d95 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_block_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_b0b13aa76ce21482" hs_bindgen_b0b13aa76ce21482 :: + Botan_block_cipher_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_block_cipher_set_key' +-} +botan_block_cipher_set_key_wrapper :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> IO FC.CInt +botan_block_cipher_set_key_wrapper = + hs_bindgen_b0b13aa76ce21482 + +{-| Set the key for a block cipher instance + +__C declaration:__ @botan_block_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:777:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_set_key :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> IO FC.CInt +botan_block_cipher_set_key = + \x0 -> + \x1 -> + \x2 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr3 -> + hs_bindgen_b0b13aa76ce21482 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_block_cipher_block_size@ +foreign import ccall unsafe "hs_bindgen_d3ffb134c92830a8" hs_bindgen_d3ffb134c92830a8 :: + Botan_block_cipher_t + -> IO FC.CInt + +{-| Return the positive block size of this block cipher, or negative to indicate an error + +__C declaration:__ @botan_block_cipher_block_size@ + +__defined at:__ @botan\/ffi.h:784:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_block_size :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> IO FC.CInt +botan_block_cipher_block_size = + hs_bindgen_d3ffb134c92830a8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_block_cipher_encrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_4400f08decebbb1e" hs_bindgen_4400f08decebbb1e :: + Botan_block_cipher_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_block_cipher_encrypt_blocks' +-} +botan_block_cipher_encrypt_blocks_wrapper :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @in'@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @blocks@ + -> IO FC.CInt +botan_block_cipher_encrypt_blocks_wrapper = + hs_bindgen_4400f08decebbb1e + +{-| Encrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_encrypt_blocks@ + +__defined at:__ @botan\/ffi.h:789:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_encrypt_blocks :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @in'@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @blocks@ + -> IO FC.CInt +botan_block_cipher_encrypt_blocks = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr4 -> + hs_bindgen_4400f08decebbb1e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_block_cipher_decrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_13de4359f21082d4" hs_bindgen_13de4359f21082d4 :: + Botan_block_cipher_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_block_cipher_decrypt_blocks' +-} +botan_block_cipher_decrypt_blocks_wrapper :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @in'@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @blocks@ + -> IO FC.CInt +botan_block_cipher_decrypt_blocks_wrapper = + hs_bindgen_13de4359f21082d4 + +{-| Decrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_decrypt_blocks@ + +__defined at:__ @botan\/ffi.h:797:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_decrypt_blocks :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @in'@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @blocks@ + -> IO FC.CInt +botan_block_cipher_decrypt_blocks = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr4 -> + hs_bindgen_13de4359f21082d4 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_block_cipher_name@ +foreign import ccall unsafe "hs_bindgen_6dd913b1f3521a1d" hs_bindgen_6dd913b1f3521a1d :: + Botan_block_cipher_t + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get the name of this block cipher + + [__@cipher@ /(input)/__]: the object to read + + [__@name@ /(input)/__]: output buffer + + [__@name_len@ /(input)/__]: on input, the length of buffer, on success the number of bytes written + +__C declaration:__ @botan_block_cipher_name@ + +__defined at:__ @botan\/ffi.h:808:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_name :: + Botan_block_cipher_t + {- ^ + + [__@cipher@ /(input)/__]: the object to read + + __C declaration:__ @cipher@ + -} + -> Ptr.Ptr FC.CChar + {- ^ + + [__@name@ /(input)/__]: output buffer + + __C declaration:__ @name@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@name_len@ /(input)/__]: on input, the length of buffer, on success the number of bytes written + + __C declaration:__ @name_len@ + -} + -> IO FC.CInt +botan_block_cipher_name = hs_bindgen_6dd913b1f3521a1d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_block_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_630712a2515a74ec" hs_bindgen_630712a2515a74ec :: + Botan_block_cipher_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get the key length limits of this block cipher + + [__@cipher@ /(input)/__]: the object to read + + [__@out_minimum_keylength@ /(input)/__]: if non-NULL, will be set to minimum keylength of cipher + + [__@out_maximum_keylength@ /(input)/__]: if non-NULL, will be set to maximum keylength of cipher + + [__@out_keylength_modulo@ /(input)/__]: if non-NULL will be set to byte multiple of valid keys + +__C declaration:__ @botan_block_cipher_get_keyspec@ + +__defined at:__ @botan\/ffi.h:819:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_get_keyspec :: + Botan_block_cipher_t + {- ^ + + [__@cipher@ /(input)/__]: the object to read + + __C declaration:__ @cipher@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_minimum_keylength@ /(input)/__]: if non-NULL, will be set to minimum keylength of cipher + + __C declaration:__ @out_minimum_keylength@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_maximum_keylength@ /(input)/__]: if non-NULL, will be set to maximum keylength of cipher + + __C declaration:__ @out_maximum_keylength@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_keylength_modulo@ /(input)/__]: if non-NULL will be set to byte multiple of valid keys + + __C declaration:__ @out_keylength_modulo@ + -} + -> IO FC.CInt +botan_block_cipher_get_keyspec = + hs_bindgen_630712a2515a74ec + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_init@ +foreign import ccall unsafe "hs_bindgen_970a21fa5d9e9825" hs_bindgen_970a21fa5d9e9825 :: + Ptr.Ptr Botan_mp_t + -> IO FC.CInt + +{-| Initialize an MPI + +__C declaration:__ @botan_mp_init@ + +__defined at:__ @botan\/ffi.h:832:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_init :: + Ptr.Ptr Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_init = hs_bindgen_970a21fa5d9e9825 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_destroy@ +foreign import ccall unsafe "hs_bindgen_9d892389b4b9aea5" hs_bindgen_9d892389b4b9aea5 :: + Botan_mp_t + -> IO FC.CInt + +{-| Destroy (deallocate) an MPI + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_mp_destroy@ + +__defined at:__ @botan\/ffi.h:838:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_destroy :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_destroy = hs_bindgen_9d892389b4b9aea5 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_to_hex@ +foreign import ccall unsafe "hs_bindgen_156f6fa1c0c4736f" hs_bindgen_156f6fa1c0c4736f :: + Botan_mp_t + -> Ptr.Ptr FC.CChar + -> IO FC.CInt + +{-| Convert the MPI to a hex string. Writes botan_mp_num_bytes(mp)*2 + 1 bytes + +__C declaration:__ @botan_mp_to_hex@ + +__defined at:__ @botan\/ffi.h:843:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_to_hex :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> Ptr.Ptr FC.CChar + -- ^ __C declaration:__ @out@ + -> IO FC.CInt +botan_mp_to_hex = hs_bindgen_156f6fa1c0c4736f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_to_str@ +foreign import ccall unsafe "hs_bindgen_679d59bd4fa438bb" hs_bindgen_679d59bd4fa438bb :: + Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Convert the MPI to a string. Currently base == 10 and base == 16 are supported. + +__C declaration:__ @botan_mp_to_str@ + +__defined at:__ @botan\/ffi.h:848:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_to_str :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @base@ + -> Ptr.Ptr FC.CChar + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_mp_to_str = hs_bindgen_679d59bd4fa438bb + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_clear@ +foreign import ccall unsafe "hs_bindgen_ec67b6e9e6ef62a2" hs_bindgen_ec67b6e9e6ef62a2 :: + Botan_mp_t + -> IO FC.CInt + +{-| Set the MPI to zero + +__C declaration:__ @botan_mp_clear@ + +__defined at:__ @botan\/ffi.h:853:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_clear = hs_bindgen_ec67b6e9e6ef62a2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_set_from_int@ +foreign import ccall unsafe "hs_bindgen_c0b736764c3ff600" hs_bindgen_c0b736764c3ff600 :: + Botan_mp_t + -> FC.CInt + -> IO FC.CInt + +{-| Set the MPI value from an int + +__C declaration:__ @botan_mp_set_from_int@ + +__defined at:__ @botan\/ffi.h:858:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_set_from_int :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> FC.CInt + -- ^ __C declaration:__ @initial_value@ + -> IO FC.CInt +botan_mp_set_from_int = hs_bindgen_c0b736764c3ff600 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_set_from_mp@ +foreign import ccall unsafe "hs_bindgen_2ecbc410e924da8a" hs_bindgen_2ecbc410e924da8a :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| Set the MPI value from another MP object + +__C declaration:__ @botan_mp_set_from_mp@ + +__defined at:__ @botan\/ffi.h:863:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_set_from_mp :: + Botan_mp_t + -- ^ __C declaration:__ @dest@ + -> Botan_mp_t + -- ^ __C declaration:__ @source@ + -> IO FC.CInt +botan_mp_set_from_mp = hs_bindgen_2ecbc410e924da8a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_set_from_str@ +foreign import ccall unsafe "hs_bindgen_9bb2531eaad57008" hs_bindgen_9bb2531eaad57008 :: + Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Set the MPI value from a string + +__C declaration:__ @botan_mp_set_from_str@ + +__defined at:__ @botan\/ffi.h:868:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_set_from_str :: + Botan_mp_t + -- ^ __C declaration:__ @dest@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @str@ + -> IO FC.CInt +botan_mp_set_from_str = hs_bindgen_9bb2531eaad57008 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_set_from_radix_str@ +foreign import ccall unsafe "hs_bindgen_050631db9df13fa3" hs_bindgen_050631db9df13fa3 :: + Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Set the MPI value from a string with arbitrary radix. For arbitrary being 10 or 16. + +__C declaration:__ @botan_mp_set_from_radix_str@ + +__defined at:__ @botan\/ffi.h:874:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_set_from_radix_str :: + Botan_mp_t + -- ^ __C declaration:__ @dest@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @str@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @radix@ + -> IO FC.CInt +botan_mp_set_from_radix_str = + hs_bindgen_050631db9df13fa3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_num_bits@ +foreign import ccall unsafe "hs_bindgen_4c9e8b852ab9a45c" hs_bindgen_4c9e8b852ab9a45c :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Return the number of significant bits in the MPI + +__C declaration:__ @botan_mp_num_bits@ + +__defined at:__ @botan\/ffi.h:879:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_num_bits :: + Botan_mp_t + -- ^ __C declaration:__ @n@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @bits@ + -> IO FC.CInt +botan_mp_num_bits = hs_bindgen_4c9e8b852ab9a45c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_num_bytes@ +foreign import ccall unsafe "hs_bindgen_a88934bf693b6213" hs_bindgen_a88934bf693b6213 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Return the number of significant bytes in the MPI + +__C declaration:__ @botan_mp_num_bytes@ + +__defined at:__ @botan\/ffi.h:884:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_num_bytes :: + Botan_mp_t + -- ^ __C declaration:__ @n@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @bytes@ + -> IO FC.CInt +botan_mp_num_bytes = hs_bindgen_a88934bf693b6213 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_to_bin@ +foreign import ccall unsafe "hs_bindgen_e59fa720fcc53df4" hs_bindgen_e59fa720fcc53df4 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_bin@ + + __defined at:__ @botan\/ffi.h:889:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_to_bin :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @vec@ + -> IO FC.CInt +botan_mp_to_bin = hs_bindgen_e59fa720fcc53df4 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_from_bin@ +foreign import ccall unsafe "hs_bindgen_4be761ecc31af4ba" hs_bindgen_4be761ecc31af4ba :: + Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_mp_from_bin' +-} +botan_mp_from_bin_wrapper :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @vec@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @vec_len@ + -> IO FC.CInt +botan_mp_from_bin_wrapper = + hs_bindgen_4be761ecc31af4ba + +{-| __C declaration:__ @botan_mp_from_bin@ + + __defined at:__ @botan\/ffi.h:894:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_from_bin :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @vec@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @vec_len@ + -> IO FC.CInt +botan_mp_from_bin = + \x0 -> + \x1 -> + \x2 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr3 -> + hs_bindgen_4be761ecc31af4ba x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_to_uint32@ +foreign import ccall unsafe "hs_bindgen_ba389f1b156b3967" hs_bindgen_ba389f1b156b3967 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_uint32@ + + __defined at:__ @botan\/ffi.h:899:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_to_uint32 :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @val@ + -> IO FC.CInt +botan_mp_to_uint32 = hs_bindgen_ba389f1b156b3967 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_is_positive@ +foreign import ccall unsafe "hs_bindgen_d83cc37169200644" hs_bindgen_d83cc37169200644 :: + Botan_mp_t + -> IO FC.CInt + +{-| This function should have been named mp_is_non_negative. Returns 1 iff mp is greater than *or equal to* zero. Use botan_mp_is_negative to detect negative numbers, botan_mp_is_zero to check for zero. + +__C declaration:__ @botan_mp_is_positive@ + +__defined at:__ @botan\/ffi.h:906:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_positive :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_is_positive = hs_bindgen_d83cc37169200644 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_is_negative@ +foreign import ccall unsafe "hs_bindgen_d10b2350a7f37e34" hs_bindgen_d10b2350a7f37e34 :: + Botan_mp_t + -> IO FC.CInt + +{-| Return 1 iff mp is less than 0 + +__C declaration:__ @botan_mp_is_negative@ + +__defined at:__ @botan\/ffi.h:911:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_negative :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_is_negative = hs_bindgen_d10b2350a7f37e34 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_flip_sign@ +foreign import ccall unsafe "hs_bindgen_389e0a8429c92faa" hs_bindgen_389e0a8429c92faa :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_flip_sign@ + + __defined at:__ @botan\/ffi.h:913:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_flip_sign :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_flip_sign = hs_bindgen_389e0a8429c92faa + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_is_zero@ +foreign import ccall unsafe "hs_bindgen_82babc1e99d4d991" hs_bindgen_82babc1e99d4d991 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_zero@ + + __defined at:__ @botan\/ffi.h:915:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_zero :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_is_zero = hs_bindgen_82babc1e99d4d991 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_is_odd@ +foreign import ccall unsafe "hs_bindgen_ec090b31aa2e4f22" hs_bindgen_ec090b31aa2e4f22 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_odd@ + + __defined at:__ @botan\/ffi.h:918:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_odd :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_is_odd = hs_bindgen_ec090b31aa2e4f22 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_is_even@ +foreign import ccall unsafe "hs_bindgen_d196ef539512654c" hs_bindgen_d196ef539512654c :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_even@ + + __defined at:__ @botan\/ffi.h:920:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_even :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_is_even = hs_bindgen_d196ef539512654c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_add_u32@ +foreign import ccall unsafe "hs_bindgen_87a7b70ab0769fc4" hs_bindgen_87a7b70ab0769fc4 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add_u32@ + + __defined at:__ @botan\/ffi.h:922:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_add_u32 :: + Botan_mp_t + -- ^ __C declaration:__ @result@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_add_u32 = hs_bindgen_87a7b70ab0769fc4 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_sub_u32@ +foreign import ccall unsafe "hs_bindgen_937d5fc22c457044" hs_bindgen_937d5fc22c457044 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub_u32@ + + __defined at:__ @botan\/ffi.h:923:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_sub_u32 :: + Botan_mp_t + -- ^ __C declaration:__ @result@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_sub_u32 = hs_bindgen_937d5fc22c457044 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_add@ +foreign import ccall unsafe "hs_bindgen_8320ca0834c3a456" hs_bindgen_8320ca0834c3a456 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add@ + + __defined at:__ @botan\/ffi.h:925:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_add :: + Botan_mp_t + -- ^ __C declaration:__ @result@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_add = hs_bindgen_8320ca0834c3a456 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_sub@ +foreign import ccall unsafe "hs_bindgen_04fabc2dd409fe15" hs_bindgen_04fabc2dd409fe15 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub@ + + __defined at:__ @botan\/ffi.h:926:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_sub :: + Botan_mp_t + -- ^ __C declaration:__ @result@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_sub = hs_bindgen_04fabc2dd409fe15 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_mul@ +foreign import ccall unsafe "hs_bindgen_f2ec11843a7cbe03" hs_bindgen_f2ec11843a7cbe03 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mul@ + + __defined at:__ @botan\/ffi.h:927:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_mul :: + Botan_mp_t + -- ^ __C declaration:__ @result@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_mul = hs_bindgen_f2ec11843a7cbe03 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_div@ +foreign import ccall unsafe "hs_bindgen_728ddaa346730a0d" hs_bindgen_728ddaa346730a0d :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_div@ + + __defined at:__ @botan\/ffi.h:929:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_div :: + Botan_mp_t + -- ^ __C declaration:__ @quotient@ + -> Botan_mp_t + -- ^ __C declaration:__ @remainder@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_div = hs_bindgen_728ddaa346730a0d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_mod_mul@ +foreign import ccall unsafe "hs_bindgen_404a12eabb0cf3d1" hs_bindgen_404a12eabb0cf3d1 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mod_mul@ + + __defined at:__ @botan\/ffi.h:933:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_mod_mul :: + Botan_mp_t + -- ^ __C declaration:__ @result@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> Botan_mp_t + -- ^ __C declaration:__ @mod@ + -> IO FC.CInt +botan_mp_mod_mul = hs_bindgen_404a12eabb0cf3d1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_equal@ +foreign import ccall unsafe "hs_bindgen_6c39e83b29e90fc8" hs_bindgen_6c39e83b29e90fc8 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_equal@ + + __defined at:__ @botan\/ffi.h:941:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_equal :: + Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_equal = hs_bindgen_6c39e83b29e90fc8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_cmp@ +foreign import ccall unsafe "hs_bindgen_6305754fde7cd020" hs_bindgen_6305754fde7cd020 :: + Ptr.Ptr FC.CInt + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_cmp@ + + __defined at:__ @botan\/ffi.h:948:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_cmp :: + Ptr.Ptr FC.CInt + -- ^ __C declaration:__ @result@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_cmp = hs_bindgen_6305754fde7cd020 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_swap@ +foreign import ccall unsafe "hs_bindgen_717a118082c09647" hs_bindgen_717a118082c09647 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_swap@ + + __defined at:__ @botan\/ffi.h:953:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_swap :: + Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_swap = hs_bindgen_717a118082c09647 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_powmod@ +foreign import ccall unsafe "hs_bindgen_6091c2ff1eccec4e" hs_bindgen_6091c2ff1eccec4e :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_powmod@ + + __defined at:__ @botan\/ffi.h:956:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_powmod :: + Botan_mp_t + -- ^ __C declaration:__ @out@ + -> Botan_mp_t + -- ^ __C declaration:__ @base@ + -> Botan_mp_t + -- ^ __C declaration:__ @exponent@ + -> Botan_mp_t + -- ^ __C declaration:__ @modulus@ + -> IO FC.CInt +botan_mp_powmod = hs_bindgen_6091c2ff1eccec4e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_lshift@ +foreign import ccall unsafe "hs_bindgen_1a828c21e2ac0ef8" hs_bindgen_1a828c21e2ac0ef8 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_lshift@ + + __defined at:__ @botan\/ffi.h:958:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_lshift :: + Botan_mp_t + -- ^ __C declaration:__ @out@ + -> Botan_mp_t + -- ^ __C declaration:__ @in'@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @shift@ + -> IO FC.CInt +botan_mp_lshift = hs_bindgen_1a828c21e2ac0ef8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_rshift@ +foreign import ccall unsafe "hs_bindgen_409e775b6fe1caee" hs_bindgen_409e775b6fe1caee :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rshift@ + + __defined at:__ @botan\/ffi.h:959:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_rshift :: + Botan_mp_t + -- ^ __C declaration:__ @out@ + -> Botan_mp_t + -- ^ __C declaration:__ @in'@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @shift@ + -> IO FC.CInt +botan_mp_rshift = hs_bindgen_409e775b6fe1caee + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_mod_inverse@ +foreign import ccall unsafe "hs_bindgen_8499792d1ff389b7" hs_bindgen_8499792d1ff389b7 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mod_inverse@ + + __defined at:__ @botan\/ffi.h:961:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_mod_inverse :: + Botan_mp_t + -- ^ __C declaration:__ @out@ + -> Botan_mp_t + -- ^ __C declaration:__ @in'@ + -> Botan_mp_t + -- ^ __C declaration:__ @modulus@ + -> IO FC.CInt +botan_mp_mod_inverse = hs_bindgen_8499792d1ff389b7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_rand_bits@ +foreign import ccall unsafe "hs_bindgen_675f85197d1b7a97" hs_bindgen_675f85197d1b7a97 :: + Botan_mp_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rand_bits@ + + __defined at:__ @botan\/ffi.h:963:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_rand_bits :: + Botan_mp_t + -- ^ __C declaration:__ @rand_out@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @bits@ + -> IO FC.CInt +botan_mp_rand_bits = hs_bindgen_675f85197d1b7a97 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_rand_range@ +foreign import ccall unsafe "hs_bindgen_74584b3fcf99aefb" hs_bindgen_74584b3fcf99aefb :: + Botan_mp_t + -> Botan_rng_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rand_range@ + + __defined at:__ @botan\/ffi.h:965:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_rand_range :: + Botan_mp_t + -- ^ __C declaration:__ @rand_out@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> Botan_mp_t + -- ^ __C declaration:__ @lower_bound@ + -> Botan_mp_t + -- ^ __C declaration:__ @upper_bound@ + -> IO FC.CInt +botan_mp_rand_range = hs_bindgen_74584b3fcf99aefb + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_gcd@ +foreign import ccall unsafe "hs_bindgen_054c3d2c2603032d" hs_bindgen_054c3d2c2603032d :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_gcd@ + + __defined at:__ @botan\/ffi.h:968:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_gcd :: + Botan_mp_t + -- ^ __C declaration:__ @out@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_gcd = hs_bindgen_054c3d2c2603032d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_is_prime@ +foreign import ccall unsafe "hs_bindgen_a9590a48656257e5" hs_bindgen_a9590a48656257e5 :: + Botan_mp_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Returns 0 if n is not prime Returns 1 if n is prime Returns negative number on error + +__C declaration:__ @botan_mp_is_prime@ + +__defined at:__ @botan\/ffi.h:975:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_prime :: + Botan_mp_t + -- ^ __C declaration:__ @n@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @test_prob@ + -> IO FC.CInt +botan_mp_is_prime = hs_bindgen_a9590a48656257e5 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_get_bit@ +foreign import ccall unsafe "hs_bindgen_486e063e46b49de8" hs_bindgen_486e063e46b49de8 :: + Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Returns 0 if specified bit of n is not set Returns 1 if specified bit of n is set Returns negative number on error + +__C declaration:__ @botan_mp_get_bit@ + +__defined at:__ @botan\/ffi.h:982:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_get_bit :: + Botan_mp_t + -- ^ __C declaration:__ @n@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @bit@ + -> IO FC.CInt +botan_mp_get_bit = hs_bindgen_486e063e46b49de8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_set_bit@ +foreign import ccall unsafe "hs_bindgen_9d282dc855b85047" hs_bindgen_9d282dc855b85047 :: + Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Set the specified bit + +__C declaration:__ @botan_mp_set_bit@ + +__defined at:__ @botan\/ffi.h:987:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_set_bit :: + Botan_mp_t + -- ^ __C declaration:__ @n@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @bit@ + -> IO FC.CInt +botan_mp_set_bit = hs_bindgen_9d282dc855b85047 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mp_clear_bit@ +foreign import ccall unsafe "hs_bindgen_0eb9b3dee3447747" hs_bindgen_0eb9b3dee3447747 :: + Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Clear the specified bit + +__C declaration:__ @botan_mp_clear_bit@ + +__defined at:__ @botan\/ffi.h:992:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear_bit :: + Botan_mp_t + -- ^ __C declaration:__ @n@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @bit@ + -> IO FC.CInt +botan_mp_clear_bit = hs_bindgen_0eb9b3dee3447747 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_bcrypt_generate@ +foreign import ccall unsafe "hs_bindgen_824e25a74d21d3fe" hs_bindgen_824e25a74d21d3fe :: + Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| Create a password hash using Bcrypt + + [__@out@ /(input)/__]: buffer holding the password hash, should be of length 64 bytes + + [__@out_len@ /(input)/__]: the desired output length in bytes + + [__@password@ /(input)/__]: the password + + [__@rng@ /(input)/__]: a random number generator + + [__@work_factor@ /(input)/__]: how much work to do to slow down guessing attacks + + [__@flags@ /(input)/__]: should be 0 in current API revision, all other uses are reserved and return BOTAN_FFI_ERROR_BAD_FLAG + + __returns:__ 0 on success, a negative value on failure + + Output is formatted bcrypt $2a$... + +__C declaration:__ @botan_bcrypt_generate@ + +__defined at:__ @botan\/ffi.h:1009:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_bcrypt_generate :: + Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: buffer holding the password hash, should be of length 64 bytes + + __C declaration:__ @out@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_len@ /(input)/__]: the desired output length in bytes + + __C declaration:__ @out_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@password@ /(input)/__]: the password + + __C declaration:__ @password@ + -} + -> Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: a random number generator + + __C declaration:__ @rng@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@work_factor@ /(input)/__]: how much work to do to slow down guessing attacks + + __C declaration:__ @work_factor@ + -} + -> HsBindgen.Runtime.Prelude.Word32 + {- ^ + + [__@flags@ /(input)/__]: should be 0 in current API revision, all other uses are reserved and return BOTAN_FFI_ERROR_BAD_FLAG + + __C declaration:__ @flags@ + -} + -> IO FC.CInt +botan_bcrypt_generate = hs_bindgen_824e25a74d21d3fe + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_bcrypt_is_valid@ +foreign import ccall unsafe "hs_bindgen_68fc45ce2dc5f8f2" hs_bindgen_68fc45ce2dc5f8f2 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Check a previously created password hash + + [__@pass@ /(input)/__]: the password to check against + + [__@hash@ /(input)/__]: the stored hash to check against + + __returns:__ 0 if if this password/hash combination is valid, 1 if the combination is not valid (but otherwise well formed), negative on error + +__C declaration:__ @botan_bcrypt_is_valid@ + +__defined at:__ @botan\/ffi.h:1023:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_bcrypt_is_valid :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@pass@ /(input)/__]: the password to check against + + __C declaration:__ @pass@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@hash@ /(input)/__]: the stored hash to check against + + __C declaration:__ @hash@ + -} + -> IO FC.CInt +botan_bcrypt_is_valid = hs_bindgen_68fc45ce2dc5f8f2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_create@ +foreign import ccall unsafe "hs_bindgen_f29636716dabd219" hs_bindgen_f29636716dabd219 :: + Ptr.Ptr Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Botan_rng_t + -> IO FC.CInt + +{-| Create a new private key + + [__@key@ /(input)/__]: the new object will be placed here + + [__@algo_name@ /(input)/__]: something like "RSA" or "ECDSA" + + [__@algo_params@ /(input)/__]: is specific to the algorithm. For RSA, specifies the modulus bit length. For ECC is the name of the curve. + + [__@rng@ /(input)/__]: a random number generator + +__C declaration:__ @botan_privkey_create@ + +__defined at:__ @botan\/ffi.h:1038:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create :: + Ptr.Ptr Botan_privkey_t + {- ^ + + [__@key@ /(input)/__]: the new object will be placed here + + __C declaration:__ @key@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@algo_name@ /(input)/__]: something like "RSA" or "ECDSA" + + __C declaration:__ @algo_name@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@algo_params@ /(input)/__]: is specific to the algorithm. For RSA, specifies the modulus bit length. For ECC is the name of the curve. + + __C declaration:__ @algo_params@ + -} + -> Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: a random number generator + + __C declaration:__ @rng@ + -} + -> IO FC.CInt +botan_privkey_create = hs_bindgen_f29636716dabd219 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_check_key@ +foreign import ccall unsafe "hs_bindgen_6be6fe1b9f397ffc" hs_bindgen_6be6fe1b9f397ffc :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_check_key@ + + __defined at:__ @botan\/ffi.h:1045:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_check_key :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_privkey_check_key = hs_bindgen_6be6fe1b9f397ffc + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_create_rsa@ +foreign import ccall unsafe "hs_bindgen_06ccd3492d70ac7f" hs_bindgen_06ccd3492d70ac7f :: + Ptr.Ptr Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_create_rsa@ + + __defined at:__ @botan\/ffi.h:1048:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create_rsa :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @n_bits@ + -> IO FC.CInt +botan_privkey_create_rsa = + hs_bindgen_06ccd3492d70ac7f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_create_ecdsa@ +foreign import ccall unsafe "hs_bindgen_eb40e129dd40675d" hs_bindgen_eb40e129dd40675d :: + Ptr.Ptr Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_create_ecdsa@ + + __defined at:__ @botan\/ffi.h:1050:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create_ecdsa :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @params@ + -> IO FC.CInt +botan_privkey_create_ecdsa = + hs_bindgen_eb40e129dd40675d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_create_ecdh@ +foreign import ccall unsafe "hs_bindgen_cf5692b6f6ba28c6" hs_bindgen_cf5692b6f6ba28c6 :: + Ptr.Ptr Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_create_ecdh@ + + __defined at:__ @botan\/ffi.h:1052:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create_ecdh :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @params@ + -> IO FC.CInt +botan_privkey_create_ecdh = + hs_bindgen_cf5692b6f6ba28c6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_create_mceliece@ +foreign import ccall unsafe "hs_bindgen_29eb57a39bf3d80e" hs_bindgen_29eb57a39bf3d80e :: + Ptr.Ptr Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_create_mceliece@ + + __defined at:__ @botan\/ffi.h:1054:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create_mceliece :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @n@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @t@ + -> IO FC.CInt +botan_privkey_create_mceliece = + hs_bindgen_29eb57a39bf3d80e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_create_dh@ +foreign import ccall unsafe "hs_bindgen_c76cee3dc4a08a30" hs_bindgen_c76cee3dc4a08a30 :: + Ptr.Ptr Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_create_dh@ + + __defined at:__ @botan\/ffi.h:1056:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create_dh :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @param@ + -> IO FC.CInt +botan_privkey_create_dh = hs_bindgen_c76cee3dc4a08a30 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_create_dsa@ +foreign import ccall unsafe "hs_bindgen_9285ff6388833e74" hs_bindgen_9285ff6388833e74 :: + Ptr.Ptr Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Generates DSA key pair. Gives to a caller control over key length and order of a subgroup 'q'. + + [__@key@ /(input)/__]: handler to the resulting key + + [__@rng@ /(input)/__]: initialized PRNG + + [__@pbits@ /(input)/__]: length of the key in bits. Must be between in range (1024, 3072) and multiple of 64. Bit size of the prime 'p' + + [__@qbits@ /(input)/__]: order of the subgroup. Must be in range (160, 256) and multiple of 8 + + __returns:__ BOTAN_FFI_SUCCESS Success, `key' initialized with DSA key + + __returns:__ BOTAN_FFI_ERROR_NULL_POINTER either `key' or `rng' is NULL + + __returns:__ BOTAN_FFI_ERROR_BAD_PARAMETER unexpected value for either `pbits' or `qbits' + + __returns:__ BOTAN_FFI_ERROR_NOT_IMPLEMENTED functionality not implemented + +__C declaration:__ @botan_privkey_create_dsa@ + +__defined at:__ @botan\/ffi.h:1076:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create_dsa :: + Ptr.Ptr Botan_privkey_t + {- ^ + + [__@key@ /(input)/__]: handler to the resulting key + + __C declaration:__ @key@ + -} + -> Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: initialized PRNG + + __C declaration:__ @rng@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@pbits@ /(input)/__]: length of the key in bits. Must be between in range (1024, 3072) and multiple of 64. Bit size of the prime 'p' + + __C declaration:__ @pbits@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@qbits@ /(input)/__]: order of the subgroup. Must be in range (160, 256) and multiple of 8 + + __C declaration:__ @qbits@ + -} + -> IO FC.CInt +botan_privkey_create_dsa = + hs_bindgen_9285ff6388833e74 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_create_elgamal@ +foreign import ccall unsafe "hs_bindgen_d134bcc4fa5b8f26" hs_bindgen_d134bcc4fa5b8f26 :: + Ptr.Ptr Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Generates ElGamal key pair. Caller has a control over key length and order of a subgroup 'q'. Function is able to use two types of primes: * if pbits-1 == qbits then safe primes are used for key generation * otherwise generation uses group of prime order + + [__@key@ /(input)/__]: handler to the resulting key + + [__@rng@ /(input)/__]: initialized PRNG + + [__@pbits@ /(input)/__]: length of the key in bits. Must be at least 1024 + + [__@qbits@ /(input)/__]: order of the subgroup. Must be at least 160 + + __returns:__ BOTAN_FFI_SUCCESS Success, `key' initialized with DSA key + + __returns:__ BOTAN_FFI_ERROR_NULL_POINTER either `key' or `rng' is NULL + + __returns:__ BOTAN_FFI_ERROR_BAD_PARAMETER unexpected value for either `pbits' or `qbits' + + __returns:__ BOTAN_FFI_ERROR_NOT_IMPLEMENTED functionality not implemented + +__C declaration:__ @botan_privkey_create_elgamal@ + +__defined at:__ @botan\/ffi.h:1101:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create_elgamal :: + Ptr.Ptr Botan_privkey_t + {- ^ + + [__@key@ /(input)/__]: handler to the resulting key + + __C declaration:__ @key@ + -} + -> Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: initialized PRNG + + __C declaration:__ @rng@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@pbits@ /(input)/__]: length of the key in bits. Must be at least 1024 + + __C declaration:__ @pbits@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@qbits@ /(input)/__]: order of the subgroup. Must be at least 160 + + __C declaration:__ @qbits@ + -} + -> IO FC.CInt +botan_privkey_create_elgamal = + hs_bindgen_d134bcc4fa5b8f26 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_load@ +foreign import ccall unsafe "hs_bindgen_145682c5ff1eac9b" hs_bindgen_145682c5ff1eac9b :: + Ptr.Ptr Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Pointer-based API for 'botan_privkey_load' +-} +botan_privkey_load_wrapper :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @bits@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @password@ + -> IO FC.CInt +botan_privkey_load_wrapper = + hs_bindgen_145682c5ff1eac9b + +{-| Input currently assumed to be PKCS #8 structure; Set password to NULL to indicate no encryption expected Starting in 2.8.0, the rng parameter is unused and may be set to null + +__C declaration:__ @botan_privkey_load@ + +__defined at:__ @botan\/ffi.h:1112:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @bits@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @password@ + -> IO FC.CInt +botan_privkey_load = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + HsBindgen.Runtime.IncompleteArray.withPtr x2 (\ptr5 -> + hs_bindgen_145682c5ff1eac9b x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x3 x4) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_destroy@ +foreign import ccall unsafe "hs_bindgen_0865d929151b4ac8" hs_bindgen_0865d929151b4ac8 :: + Botan_privkey_t + -> IO FC.CInt + +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_privkey_destroy@ + +__defined at:__ @botan\/ffi.h:1120:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_destroy :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_privkey_destroy = hs_bindgen_0865d929151b4ac8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_export@ +foreign import ccall unsafe "hs_bindgen_3fc3eb237faa8ce6" hs_bindgen_3fc3eb237faa8ce6 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| On input *out_len is number of bytes in out[] On output *out_len is number of bytes written (or required) If out is not big enough no output is written, *out_len is set and 1 is returned Returns 0 on success and sets If some other error occurs a negative integer is returned. + +__C declaration:__ @botan_privkey_export@ + +__defined at:__ @botan\/ffi.h:1132:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_export :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_privkey_export = hs_bindgen_3fc3eb237faa8ce6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_view_der@ +foreign import ccall unsafe "hs_bindgen_f1ba2253ceb8ba0b" hs_bindgen_f1ba2253ceb8ba0b :: + Botan_privkey_t + -> Botan_view_ctx + -> Botan_view_bin_fn + -> IO FC.CInt + +{-| View the private key's DER encoding + +__C declaration:__ @botan_privkey_view_der@ + +__defined at:__ @botan\/ffi.h:1139:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_view_der :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_bin_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_privkey_view_der = hs_bindgen_f1ba2253ceb8ba0b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_be97a5468efd5dc3" hs_bindgen_be97a5468efd5dc3 :: + Botan_privkey_t + -> Botan_view_ctx + -> Botan_view_str_fn + -> IO FC.CInt + +{-| View the private key's PEM encoding + +__C declaration:__ @botan_privkey_view_pem@ + +__defined at:__ @botan\/ffi.h:1147:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_view_pem :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_str_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_privkey_view_pem = hs_bindgen_be97a5468efd5dc3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_1436d3016b3b6188" hs_bindgen_1436d3016b3b6188 :: + Botan_privkey_t + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_algo_name@ + + __defined at:__ @botan\/ffi.h:1152:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_algo_name :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr FC.CChar + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_privkey_algo_name = hs_bindgen_1436d3016b3b6188 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_export_encrypted@ +foreign import ccall unsafe "hs_bindgen_1cace8491886db1f" hs_bindgen_1cace8491886db1f :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_encrypted@ + + __defined at:__ @botan\/ffi.h:1158:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_export_encrypted :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @encryption_algo@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_privkey_export_encrypted = + hs_bindgen_1cace8491886db1f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall unsafe "hs_bindgen_12470c8c51653b15" hs_bindgen_12470c8c51653b15 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_encrypted_pbkdf_msec@ + + __defined at:__ @botan\/ffi.h:1171:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_export_encrypted_pbkdf_msec :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @pbkdf_msec_runtime@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @pbkdf_iterations_out@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cipher_algo@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @pbkdf_algo@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_privkey_export_encrypted_pbkdf_msec = + hs_bindgen_12470c8c51653b15 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall unsafe "hs_bindgen_c8cfe0b7750d0c09" hs_bindgen_c8cfe0b7750d0c09 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| Export a private key using the specified number of iterations. + +__C declaration:__ @botan_privkey_export_encrypted_pbkdf_iter@ + +__defined at:__ @botan\/ffi.h:1184:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_export_encrypted_pbkdf_iter :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @pbkdf_iterations@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cipher_algo@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @pbkdf_algo@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_privkey_export_encrypted_pbkdf_iter = + hs_bindgen_c8cfe0b7750d0c09 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_view_encrypted_der@ +foreign import ccall unsafe "hs_bindgen_adc35efc8160328b" hs_bindgen_adc35efc8160328b :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> Botan_view_ctx + -> Botan_view_bin_fn + -> IO FC.CInt + +{-| View the encryption of a private key (binary DER encoding) + + Set cipher_algo, pbkdf_algo to NULL to use defaults Set pbkdf_iterations to 0 to use defaults + +__C declaration:__ @botan_privkey_view_encrypted_der@ + +__defined at:__ @botan\/ffi.h:1199:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_view_encrypted_der :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cipher_algo@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @pbkdf_algo@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @pbkdf_iterations@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_bin_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_privkey_view_encrypted_der = + hs_bindgen_adc35efc8160328b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_view_encrypted_der_timed@ +foreign import ccall unsafe "hs_bindgen_65795285cd8f63ce" hs_bindgen_65795285cd8f63ce :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> Botan_view_ctx + -> Botan_view_bin_fn + -> IO FC.CInt + +{-| View the encryption of a private key (binary DER encoding) + + Set cipher_algo, pbkdf_algo to NULL to use defaults + +__C declaration:__ @botan_privkey_view_encrypted_der_timed@ + +__defined at:__ @botan\/ffi.h:1214:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_view_encrypted_der_timed :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cipher_algo@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @pbkdf_algo@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @pbkdf_runtime_msec@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_bin_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_privkey_view_encrypted_der_timed = + hs_bindgen_65795285cd8f63ce + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_view_encrypted_pem@ +foreign import ccall unsafe "hs_bindgen_ca9073790f7adffe" hs_bindgen_ca9073790f7adffe :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> Botan_view_ctx + -> Botan_view_str_fn + -> IO FC.CInt + +{-| View the encryption of a private key (PEM encoding) + + Set cipher_algo, pbkdf_algo to NULL to use defaults Set pbkdf_iterations to 0 to use defaults + +__C declaration:__ @botan_privkey_view_encrypted_pem@ + +__defined at:__ @botan\/ffi.h:1230:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_view_encrypted_pem :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cipher_algo@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @pbkdf_algo@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @pbkdf_iterations@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_str_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_privkey_view_encrypted_pem = + hs_bindgen_ca9073790f7adffe + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall unsafe "hs_bindgen_b01041027d416aed" hs_bindgen_b01041027d416aed :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> Botan_view_ctx + -> Botan_view_str_fn + -> IO FC.CInt + +{-| View the encryption of a private key (PEM encoding) + + Set cipher_algo, pbkdf_algo to NULL to use defaults + +__C declaration:__ @botan_privkey_view_encrypted_pem_timed@ + +__defined at:__ @botan\/ffi.h:1245:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_view_encrypted_pem_timed :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cipher_algo@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @pbkdf_algo@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @pbkdf_runtime_msec@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_str_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_privkey_view_encrypted_pem_timed = + hs_bindgen_b01041027d416aed + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pubkey_load@ +foreign import ccall unsafe "hs_bindgen_b38f292d770c3894" hs_bindgen_b38f292d770c3894 :: + Ptr.Ptr Botan_pubkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pubkey_load' +-} +botan_pubkey_load_wrapper :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @bits@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> IO FC.CInt +botan_pubkey_load_wrapper = + hs_bindgen_b38f292d770c3894 + +{-| __C declaration:__ @botan_pubkey_load@ + + __defined at:__ @botan\/ffi.h:1257:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @bits@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> IO FC.CInt +botan_pubkey_load = + \x0 -> + \x1 -> + \x2 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr3 -> + hs_bindgen_b38f292d770c3894 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_export_pubkey@ +foreign import ccall unsafe "hs_bindgen_623dc9c4cccb6f4b" hs_bindgen_623dc9c4cccb6f4b :: + Ptr.Ptr Botan_pubkey_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_pubkey@ + + __defined at:__ @botan\/ffi.h:1259:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_export_pubkey :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @out@ + -> Botan_privkey_t + -- ^ __C declaration:__ @in'@ + -> IO FC.CInt +botan_privkey_export_pubkey = + hs_bindgen_623dc9c4cccb6f4b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pubkey_export@ +foreign import ccall unsafe "hs_bindgen_29a4ea8ac4d94014" hs_bindgen_29a4ea8ac4d94014 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_export@ + + __defined at:__ @botan\/ffi.h:1261:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_export :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_pubkey_export = hs_bindgen_29a4ea8ac4d94014 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pubkey_view_der@ +foreign import ccall unsafe "hs_bindgen_e22fabf98b7cefdb" hs_bindgen_e22fabf98b7cefdb :: + Botan_pubkey_t + -> Botan_view_ctx + -> Botan_view_bin_fn + -> IO FC.CInt + +{-| View the public key's DER encoding + +__C declaration:__ @botan_pubkey_view_der@ + +__defined at:__ @botan\/ffi.h:1266:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_view_der :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_bin_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_pubkey_view_der = hs_bindgen_e22fabf98b7cefdb + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pubkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_49ddc4f8ab98655b" hs_bindgen_49ddc4f8ab98655b :: + Botan_pubkey_t + -> Botan_view_ctx + -> Botan_view_str_fn + -> IO FC.CInt + +{-| View the public key's PEM encoding + +__C declaration:__ @botan_pubkey_view_pem@ + +__defined at:__ @botan\/ffi.h:1274:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_view_pem :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_str_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_pubkey_view_pem = hs_bindgen_49ddc4f8ab98655b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pubkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_7d68e2ff618bdac6" hs_bindgen_7d68e2ff618bdac6 :: + Botan_pubkey_t + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_algo_name@ + + __defined at:__ @botan\/ffi.h:1279:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_algo_name :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr FC.CChar + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_pubkey_algo_name = hs_bindgen_7d68e2ff618bdac6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pubkey_check_key@ +foreign import ccall unsafe "hs_bindgen_04690e40f7484569" hs_bindgen_04690e40f7484569 :: + Botan_pubkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| Returns 0 if key is valid, negative if invalid key or some other error + +__C declaration:__ @botan_pubkey_check_key@ + +__defined at:__ @botan\/ffi.h:1284:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_check_key :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_pubkey_check_key = hs_bindgen_04690e40f7484569 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pubkey_estimated_strength@ +foreign import ccall unsafe "hs_bindgen_e074794c70b86dee" hs_bindgen_e074794c70b86dee :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_estimated_strength@ + + __defined at:__ @botan\/ffi.h:1286:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_estimated_strength :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @estimate@ + -> IO FC.CInt +botan_pubkey_estimated_strength = + hs_bindgen_e074794c70b86dee + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pubkey_fingerprint@ +foreign import ccall unsafe "hs_bindgen_72a437385e94e038" hs_bindgen_72a437385e94e038 :: + Botan_pubkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_fingerprint@ + + __defined at:__ @botan\/ffi.h:1288:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_fingerprint :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hash@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_pubkey_fingerprint = + hs_bindgen_72a437385e94e038 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pubkey_destroy@ +foreign import ccall unsafe "hs_bindgen_ec04026678587685" hs_bindgen_ec04026678587685 :: + Botan_pubkey_t + -> IO FC.CInt + +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pubkey_destroy@ + +__defined at:__ @botan\/ffi.h:1294:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_destroy :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_destroy = hs_bindgen_ec04026678587685 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pubkey_get_field@ +foreign import ccall unsafe "hs_bindgen_fb3e700c78ee9c13" hs_bindgen_fb3e700c78ee9c13 :: + Botan_mp_t + -> Botan_pubkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_get_field@ + + __defined at:__ @botan\/ffi.h:1299:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_get_field :: + Botan_mp_t + -- ^ __C declaration:__ @output@ + -> Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @field_name@ + -> IO FC.CInt +botan_pubkey_get_field = hs_bindgen_fb3e700c78ee9c13 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_get_field@ +foreign import ccall unsafe "hs_bindgen_ae7013bb21d20e87" hs_bindgen_ae7013bb21d20e87 :: + Botan_mp_t + -> Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_get_field@ + + __defined at:__ @botan\/ffi.h:1303:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_get_field :: + Botan_mp_t + -- ^ __C declaration:__ @output@ + -> Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @field_name@ + -> IO FC.CInt +botan_privkey_get_field = hs_bindgen_ae7013bb21d20e87 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_a4370e7019ec5cec" hs_bindgen_a4370e7019ec5cec :: + Ptr.Ptr Botan_privkey_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_load_rsa@ + + __defined at:__ @botan\/ffi.h:1310:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_rsa :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @p@ + -> Botan_mp_t + -- ^ __C declaration:__ @q@ + -> Botan_mp_t + -- ^ __C declaration:__ @e@ + -> IO FC.CInt +botan_privkey_load_rsa = hs_bindgen_a4370e7019ec5cec + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_load_rsa_pkcs1@ +foreign import ccall unsafe "hs_bindgen_3feb361d05574e21" hs_bindgen_3feb361d05574e21 :: + Ptr.Ptr Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_privkey_load_rsa_pkcs1' +-} +botan_privkey_load_rsa_pkcs1_wrapper :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @bits@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> IO FC.CInt +botan_privkey_load_rsa_pkcs1_wrapper = + hs_bindgen_3feb361d05574e21 + +{-| __C declaration:__ @botan_privkey_load_rsa_pkcs1@ + + __defined at:__ @botan\/ffi.h:1315:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_rsa_pkcs1 :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @bits@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> IO FC.CInt +botan_privkey_load_rsa_pkcs1 = + \x0 -> + \x1 -> + \x2 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr3 -> + hs_bindgen_3feb361d05574e21 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_rsa_get_p@ +foreign import ccall unsafe "hs_bindgen_9239ce6952072d19" hs_bindgen_9239ce6952072d19 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_p@ + + __defined at:__ @botan\/ffi.h:1320:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_rsa_get_p :: + Botan_mp_t + -- ^ __C declaration:__ @p@ + -> Botan_privkey_t + -- ^ __C declaration:__ @rsa_key@ + -> IO FC.CInt +botan_privkey_rsa_get_p = hs_bindgen_9239ce6952072d19 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_rsa_get_q@ +foreign import ccall unsafe "hs_bindgen_f6b9c2556a4a9856" hs_bindgen_f6b9c2556a4a9856 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_q@ + + __defined at:__ @botan\/ffi.h:1322:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_rsa_get_q :: + Botan_mp_t + -- ^ __C declaration:__ @q@ + -> Botan_privkey_t + -- ^ __C declaration:__ @rsa_key@ + -> IO FC.CInt +botan_privkey_rsa_get_q = hs_bindgen_f6b9c2556a4a9856 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_rsa_get_d@ +foreign import ccall unsafe "hs_bindgen_60e41a938ecce9a0" hs_bindgen_60e41a938ecce9a0 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_d@ + + __defined at:__ @botan\/ffi.h:1324:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_rsa_get_d :: + Botan_mp_t + -- ^ __C declaration:__ @d@ + -> Botan_privkey_t + -- ^ __C declaration:__ @rsa_key@ + -> IO FC.CInt +botan_privkey_rsa_get_d = hs_bindgen_60e41a938ecce9a0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_b0f13c772bfd45d2" hs_bindgen_b0f13c772bfd45d2 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1326:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_rsa_get_n :: + Botan_mp_t + -- ^ __C declaration:__ @n@ + -> Botan_privkey_t + -- ^ __C declaration:__ @rsa_key@ + -> IO FC.CInt +botan_privkey_rsa_get_n = hs_bindgen_b0f13c772bfd45d2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_c238cee3b846cb87" hs_bindgen_c238cee3b846cb87 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1328:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_rsa_get_e :: + Botan_mp_t + -- ^ __C declaration:__ @e@ + -> Botan_privkey_t + -- ^ __C declaration:__ @rsa_key@ + -> IO FC.CInt +botan_privkey_rsa_get_e = hs_bindgen_c238cee3b846cb87 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_rsa_get_privkey@ +foreign import ccall unsafe "hs_bindgen_60b1085b6e10a73b" hs_bindgen_60b1085b6e10a73b :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_privkey@ + + __defined at:__ @botan\/ffi.h:1330:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_rsa_get_privkey :: + Botan_privkey_t + -- ^ __C declaration:__ @rsa_key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_privkey_rsa_get_privkey = + hs_bindgen_60b1085b6e10a73b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pubkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_b543885c6c25f4b9" hs_bindgen_b543885c6c25f4b9 :: + Ptr.Ptr Botan_pubkey_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_load_rsa@ + + __defined at:__ @botan\/ffi.h:1334:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_rsa :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @n@ + -> Botan_mp_t + -- ^ __C declaration:__ @e@ + -> IO FC.CInt +botan_pubkey_load_rsa = hs_bindgen_b543885c6c25f4b9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pubkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_e02eccf6f17c7fcf" hs_bindgen_e02eccf6f17c7fcf :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1339:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_rsa_get_e :: + Botan_mp_t + -- ^ __C declaration:__ @e@ + -> Botan_pubkey_t + -- ^ __C declaration:__ @rsa_key@ + -> IO FC.CInt +botan_pubkey_rsa_get_e = hs_bindgen_e02eccf6f17c7fcf + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pubkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_e94890f4ad2ac5d0" hs_bindgen_e94890f4ad2ac5d0 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1341:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_rsa_get_n :: + Botan_mp_t + -- ^ __C declaration:__ @n@ + -> Botan_pubkey_t + -- ^ __C declaration:__ @rsa_key@ + -> IO FC.CInt +botan_pubkey_rsa_get_n = hs_bindgen_e94890f4ad2ac5d0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_1e9cac36751bc8e8" hs_bindgen_1e9cac36751bc8e8 :: + Ptr.Ptr Botan_privkey_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_load_dsa@ + + __defined at:__ @botan\/ffi.h:1346:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_dsa :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @p@ + -> Botan_mp_t + -- ^ __C declaration:__ @q@ + -> Botan_mp_t + -- ^ __C declaration:__ @g@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> IO FC.CInt +botan_privkey_load_dsa = hs_bindgen_1e9cac36751bc8e8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pubkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_70c0b0eddfd0aac8" hs_bindgen_70c0b0eddfd0aac8 :: + Ptr.Ptr Botan_pubkey_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_load_dsa@ + + __defined at:__ @botan\/ffi.h:1352:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_dsa :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @p@ + -> Botan_mp_t + -- ^ __C declaration:__ @q@ + -> Botan_mp_t + -- ^ __C declaration:__ @g@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_pubkey_load_dsa = hs_bindgen_70c0b0eddfd0aac8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_dsa_get_x@ +foreign import ccall unsafe "hs_bindgen_b92cf58086d52f41" hs_bindgen_b92cf58086d52f41 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_dsa_get_x@ + + __defined at:__ @botan\/ffi.h:1359:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_dsa_get_x :: + Botan_mp_t + -- ^ __C declaration:__ @n@ + -> Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_privkey_dsa_get_x = hs_bindgen_b92cf58086d52f41 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pubkey_dsa_get_p@ +foreign import ccall unsafe "hs_bindgen_198d1517dee7e7a4" hs_bindgen_198d1517dee7e7a4 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_p@ + + __defined at:__ @botan\/ffi.h:1362:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_dsa_get_p :: + Botan_mp_t + -- ^ __C declaration:__ @p@ + -> Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_dsa_get_p = hs_bindgen_198d1517dee7e7a4 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pubkey_dsa_get_q@ +foreign import ccall unsafe "hs_bindgen_55e6c39ea6d3fe05" hs_bindgen_55e6c39ea6d3fe05 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_q@ + + __defined at:__ @botan\/ffi.h:1364:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_dsa_get_q :: + Botan_mp_t + -- ^ __C declaration:__ @q@ + -> Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_dsa_get_q = hs_bindgen_55e6c39ea6d3fe05 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pubkey_dsa_get_g@ +foreign import ccall unsafe "hs_bindgen_a361f3b9bdccf148" hs_bindgen_a361f3b9bdccf148 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_g@ + + __defined at:__ @botan\/ffi.h:1366:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_dsa_get_g :: + Botan_mp_t + -- ^ __C declaration:__ @d@ + -> Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_dsa_get_g = hs_bindgen_a361f3b9bdccf148 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pubkey_dsa_get_y@ +foreign import ccall unsafe "hs_bindgen_c103df7a56e0049c" hs_bindgen_c103df7a56e0049c :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_y@ + + __defined at:__ @botan\/ffi.h:1368:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_dsa_get_y :: + Botan_mp_t + -- ^ __C declaration:__ @y@ + -> Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_dsa_get_y = hs_bindgen_c103df7a56e0049c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_13a98a6c42087fa7" hs_bindgen_13a98a6c42087fa7 :: + Ptr.Ptr Botan_privkey_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_load_dh@ + + __defined at:__ @botan\/ffi.h:1383:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_dh :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @p@ + -> Botan_mp_t + -- ^ __C declaration:__ @g@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> IO FC.CInt +botan_privkey_load_dh = hs_bindgen_13a98a6c42087fa7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pubkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_3a9727fb96babdd7" hs_bindgen_3a9727fb96babdd7 :: + Ptr.Ptr Botan_pubkey_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| Loads Diffie Hellman public key + + [__@key@ /(input)/__]: variable populated with key material + + [__@p@ /(input)/__]: prime order of a Z_p group + + [__@g@ /(input)/__]: group generator + + [__@y@ /(input)/__]: public key + + __pre condition:__ key is NULL on input + + __post condition:__ function allocates memory and assigns to `key' + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_pubkey_load_dh@ + +__defined at:__ @botan\/ffi.h:1400:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_dh :: + Ptr.Ptr Botan_pubkey_t + {- ^ + + [__@key@ /(input)/__]: variable populated with key material + + __C declaration:__ @key@ + -} + -> Botan_mp_t + {- ^ + + [__@p@ /(input)/__]: prime order of a Z_p group + + __C declaration:__ @p@ + -} + -> Botan_mp_t + {- ^ + + [__@g@ /(input)/__]: group generator + + __C declaration:__ @g@ + -} + -> Botan_mp_t + {- ^ + + [__@y@ /(input)/__]: public key + + __C declaration:__ @y@ + -} + -> IO FC.CInt +botan_pubkey_load_dh = hs_bindgen_3a9727fb96babdd7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pubkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_59ba2add33a8f02c" hs_bindgen_59ba2add33a8f02c :: + Ptr.Ptr Botan_pubkey_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| Loads ElGamal public key + + [__@key@ /(input)/__]: variable populated with key material + + [__@p@ /(input)/__]: prime order of a Z_p group + + [__@g@ /(input)/__]: group generator + + [__@y@ /(input)/__]: public key + + __pre condition:__ key is NULL on input + + __post condition:__ function allocates memory and assigns to `key' + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_pubkey_load_elgamal@ + +__defined at:__ @botan\/ffi.h:1421:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_elgamal :: + Ptr.Ptr Botan_pubkey_t + {- ^ + + [__@key@ /(input)/__]: variable populated with key material + + __C declaration:__ @key@ + -} + -> Botan_mp_t + {- ^ + + [__@p@ /(input)/__]: prime order of a Z_p group + + __C declaration:__ @p@ + -} + -> Botan_mp_t + {- ^ + + [__@g@ /(input)/__]: group generator + + __C declaration:__ @g@ + -} + -> Botan_mp_t + {- ^ + + [__@y@ /(input)/__]: public key + + __C declaration:__ @y@ + -} + -> IO FC.CInt +botan_pubkey_load_elgamal = + hs_bindgen_59ba2add33a8f02c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_aab9500c8d559f72" hs_bindgen_aab9500c8d559f72 :: + Ptr.Ptr Botan_privkey_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| Loads ElGamal private key + + [__@key@ /(input)/__]: variable populated with key material + + [__@p@ /(input)/__]: prime order of a Z_p group + + [__@g@ /(input)/__]: group generator + + [__@x@ /(input)/__]: private key + + __pre condition:__ key is NULL on input + + __post condition:__ function allocates memory and assigns to `key' + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_privkey_load_elgamal@ + +__defined at:__ @botan\/ffi.h:1439:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_elgamal :: + Ptr.Ptr Botan_privkey_t + {- ^ + + [__@key@ /(input)/__]: variable populated with key material + + __C declaration:__ @key@ + -} + -> Botan_mp_t + {- ^ + + [__@p@ /(input)/__]: prime order of a Z_p group + + __C declaration:__ @p@ + -} + -> Botan_mp_t + {- ^ + + [__@g@ /(input)/__]: group generator + + __C declaration:__ @g@ + -} + -> Botan_mp_t + {- ^ + + [__@x@ /(input)/__]: private key + + __C declaration:__ @x@ + -} + -> IO FC.CInt +botan_privkey_load_elgamal = + hs_bindgen_aab9500c8d559f72 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_da76c75d0e07c34a" hs_bindgen_da76c75d0e07c34a :: + Ptr.Ptr Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| Pointer-based API for 'botan_privkey_load_ed25519' +-} +botan_privkey_load_ed25519_wrapper :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @privkey@ + -> IO FC.CInt +botan_privkey_load_ed25519_wrapper = + hs_bindgen_da76c75d0e07c34a + +{-| __C declaration:__ @botan_privkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1448:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_ed25519 :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> (HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @privkey@ + -> IO FC.CInt +botan_privkey_load_ed25519 = + \x0 -> + \x1 -> + HsBindgen.Runtime.ConstantArray.withPtr x1 (\ptr2 -> + hs_bindgen_da76c75d0e07c34a x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pubkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_156cac709e97cdd9" hs_bindgen_156cac709e97cdd9 :: + Ptr.Ptr Botan_pubkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pubkey_load_ed25519' +-} +botan_pubkey_load_ed25519_wrapper :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> IO FC.CInt +botan_pubkey_load_ed25519_wrapper = + hs_bindgen_156cac709e97cdd9 + +{-| __C declaration:__ @botan_pubkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1451:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_ed25519 :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> (HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> IO FC.CInt +botan_pubkey_load_ed25519 = + \x0 -> + \x1 -> + HsBindgen.Runtime.ConstantArray.withPtr x1 (\ptr2 -> + hs_bindgen_156cac709e97cdd9 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_ed25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_4644b88c0a4a71c7" hs_bindgen_4644b88c0a4a71c7 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1454:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_ed25519_get_privkey :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @output@ + -> IO FC.CInt +botan_privkey_ed25519_get_privkey = + hs_bindgen_4644b88c0a4a71c7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_cb8ab939c7c29d1c" hs_bindgen_cb8ab939c7c29d1c :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1457:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_ed25519_get_pubkey :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> IO FC.CInt +botan_pubkey_ed25519_get_pubkey = + hs_bindgen_cb8ab939c7c29d1c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_627daeac85418594" hs_bindgen_627daeac85418594 :: + Ptr.Ptr Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| Pointer-based API for 'botan_privkey_load_x25519' +-} +botan_privkey_load_x25519_wrapper :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @privkey@ + -> IO FC.CInt +botan_privkey_load_x25519_wrapper = + hs_bindgen_627daeac85418594 + +{-| __C declaration:__ @botan_privkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1464:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_x25519 :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> (HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @privkey@ + -> IO FC.CInt +botan_privkey_load_x25519 = + \x0 -> + \x1 -> + HsBindgen.Runtime.ConstantArray.withPtr x1 (\ptr2 -> + hs_bindgen_627daeac85418594 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pubkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_2e74e9ddb58f3ba3" hs_bindgen_2e74e9ddb58f3ba3 :: + Ptr.Ptr Botan_pubkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pubkey_load_x25519' +-} +botan_pubkey_load_x25519_wrapper :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> IO FC.CInt +botan_pubkey_load_x25519_wrapper = + hs_bindgen_2e74e9ddb58f3ba3 + +{-| __C declaration:__ @botan_pubkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1467:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_x25519 :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> (HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> IO FC.CInt +botan_pubkey_load_x25519 = + \x0 -> + \x1 -> + HsBindgen.Runtime.ConstantArray.withPtr x1 (\ptr2 -> + hs_bindgen_2e74e9ddb58f3ba3 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_x25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_f76b440205cfabe7" hs_bindgen_f76b440205cfabe7 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1470:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_x25519_get_privkey :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @output@ + -> IO FC.CInt +botan_privkey_x25519_get_privkey = + hs_bindgen_f76b440205cfabe7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pubkey_x25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_942806143cfdf66c" hs_bindgen_942806143cfdf66c :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1473:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_x25519_get_pubkey :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> IO FC.CInt +botan_pubkey_x25519_get_pubkey = + hs_bindgen_942806143cfdf66c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_ece85749646e9689" hs_bindgen_ece85749646e9689 :: + Ptr.Ptr Botan_privkey_t + -> Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_load_ecdsa@ + + __defined at:__ @botan\/ffi.h:1480:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_ecdsa :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @scalar@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @curve_name@ + -> IO FC.CInt +botan_privkey_load_ecdsa = + hs_bindgen_ece85749646e9689 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pubkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_fd42014cccac9915" hs_bindgen_fd42014cccac9915 :: + Ptr.Ptr Botan_pubkey_t + -> Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_load_ecdsa@ + + __defined at:__ @botan\/ffi.h:1485:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_ecdsa :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @public_x@ + -> Botan_mp_t + -- ^ __C declaration:__ @public_y@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @curve_name@ + -> IO FC.CInt +botan_pubkey_load_ecdsa = hs_bindgen_fd42014cccac9915 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pubkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_386d8446a5bc8713" hs_bindgen_386d8446a5bc8713 :: + Ptr.Ptr Botan_pubkey_t + -> Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_load_ecdh@ + + __defined at:__ @botan\/ffi.h:1491:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_ecdh :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @public_x@ + -> Botan_mp_t + -- ^ __C declaration:__ @public_y@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @curve_name@ + -> IO FC.CInt +botan_pubkey_load_ecdh = hs_bindgen_386d8446a5bc8713 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_30ad05f74ca4cc83" hs_bindgen_30ad05f74ca4cc83 :: + Ptr.Ptr Botan_privkey_t + -> Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_load_ecdh@ + + __defined at:__ @botan\/ffi.h:1497:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_ecdh :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @scalar@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @curve_name@ + -> IO FC.CInt +botan_privkey_load_ecdh = hs_bindgen_30ad05f74ca4cc83 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pubkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_4219f03890a454e6" hs_bindgen_4219f03890a454e6 :: + Ptr.Ptr Botan_pubkey_t + -> Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_load_sm2@ + + __defined at:__ @botan\/ffi.h:1502:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_sm2 :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @public_x@ + -> Botan_mp_t + -- ^ __C declaration:__ @public_y@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @curve_name@ + -> IO FC.CInt +botan_pubkey_load_sm2 = hs_bindgen_4219f03890a454e6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_4eea3b9a7b62c986" hs_bindgen_4eea3b9a7b62c986 :: + Ptr.Ptr Botan_privkey_t + -> Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_load_sm2@ + + __defined at:__ @botan\/ffi.h:1508:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_sm2 :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @scalar@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @curve_name@ + -> IO FC.CInt +botan_privkey_load_sm2 = hs_bindgen_4eea3b9a7b62c986 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pubkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_56749a0c36eb5761" hs_bindgen_56749a0c36eb5761 :: + Ptr.Ptr Botan_pubkey_t + -> Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_load_sm2_enc@ + + __defined at:__ @botan\/ffi.h:1513:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_sm2_enc :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @public_x@ + -> Botan_mp_t + -- ^ __C declaration:__ @public_y@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @curve_name@ + -> IO FC.CInt +botan_pubkey_load_sm2_enc = + hs_bindgen_56749a0c36eb5761 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_privkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_e4f6ba3c4c2fdfd8" hs_bindgen_e4f6ba3c4c2fdfd8 :: + Ptr.Ptr Botan_privkey_t + -> Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_load_sm2_enc@ + + __defined at:__ @botan\/ffi.h:1519:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_sm2_enc :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @scalar@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @curve_name@ + -> IO FC.CInt +botan_privkey_load_sm2_enc = + hs_bindgen_e4f6ba3c4c2fdfd8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pubkey_sm2_compute_za@ +foreign import ccall unsafe "hs_bindgen_f94bcaa769e0e2fe" hs_bindgen_f94bcaa769e0e2fe :: + Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_sm2_compute_za@ + + __defined at:__ @botan\/ffi.h:1524:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_sm2_compute_za :: + Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @ident@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hash_algo@ + -> Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_sm2_compute_za = + hs_bindgen_f94bcaa769e0e2fe + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pubkey_view_ec_public_point@ +foreign import ccall unsafe "hs_bindgen_0e235be46a7ff659" hs_bindgen_0e235be46a7ff659 :: + Botan_pubkey_t + -> Botan_view_ctx + -> Botan_view_bin_fn + -> IO FC.CInt + +{-| View the uncompressed public point associated with the key + +__C declaration:__ @botan_pubkey_view_ec_public_point@ + +__defined at:__ @botan\/ffi.h:1534:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_view_ec_public_point :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_bin_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_pubkey_view_ec_public_point = + hs_bindgen_0e235be46a7ff659 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pk_op_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_84cce397dfc5f030" hs_bindgen_84cce397dfc5f030 :: + Ptr.Ptr Botan_pk_op_encrypt_t + -> Botan_pubkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_encrypt_create@ + + __defined at:__ @botan\/ffi.h:1544:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_encrypt_create :: + Ptr.Ptr Botan_pk_op_encrypt_t + -- ^ __C declaration:__ @op@ + -> Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @padding@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_pk_op_encrypt_create = + hs_bindgen_84cce397dfc5f030 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pk_op_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_bd67ffcf5d3bbdba" hs_bindgen_bd67ffcf5d3bbdba :: + Botan_pk_op_encrypt_t + -> IO FC.CInt + +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pk_op_encrypt_destroy@ + +__defined at:__ @botan\/ffi.h:1552:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_encrypt_destroy :: + Botan_pk_op_encrypt_t + -- ^ __C declaration:__ @op@ + -> IO FC.CInt +botan_pk_op_encrypt_destroy = + hs_bindgen_bd67ffcf5d3bbdba + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pk_op_encrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_8cfcffd2b60f2798" hs_bindgen_8cfcffd2b60f2798 :: + Botan_pk_op_encrypt_t + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_encrypt_output_length@ + + __defined at:__ @botan\/ffi.h:1554:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_encrypt_output_length :: + Botan_pk_op_encrypt_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ptext_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ctext_len@ + -> IO FC.CInt +botan_pk_op_encrypt_output_length = + hs_bindgen_8cfcffd2b60f2798 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pk_op_encrypt@ +foreign import ccall unsafe "hs_bindgen_5cb2b790f538a2be" hs_bindgen_5cb2b790f538a2be :: + Botan_pk_op_encrypt_t + -> Botan_rng_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pk_op_encrypt' +-} +botan_pk_op_encrypt_wrapper :: + Botan_pk_op_encrypt_t + -- ^ __C declaration:__ @op@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @plaintext@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @plaintext_len@ + -> IO FC.CInt +botan_pk_op_encrypt_wrapper = + hs_bindgen_5cb2b790f538a2be + +{-| __C declaration:__ @botan_pk_op_encrypt@ + + __defined at:__ @botan\/ffi.h:1558:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_encrypt :: + Botan_pk_op_encrypt_t + -- ^ __C declaration:__ @op@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @plaintext@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @plaintext_len@ + -> IO FC.CInt +botan_pk_op_encrypt = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + HsBindgen.Runtime.IncompleteArray.withPtr x4 (\ptr6 -> + hs_bindgen_5cb2b790f538a2be x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x5) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pk_op_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_b1b77b24043b39af" hs_bindgen_b1b77b24043b39af :: + Ptr.Ptr Botan_pk_op_decrypt_t + -> Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_decrypt_create@ + + __defined at:__ @botan\/ffi.h:1570:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_decrypt_create :: + Ptr.Ptr Botan_pk_op_decrypt_t + -- ^ __C declaration:__ @op@ + -> Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @padding@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_pk_op_decrypt_create = + hs_bindgen_b1b77b24043b39af + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pk_op_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_16e49f4a57ab6040" hs_bindgen_16e49f4a57ab6040 :: + Botan_pk_op_decrypt_t + -> IO FC.CInt + +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pk_op_decrypt_destroy@ + +__defined at:__ @botan\/ffi.h:1578:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_decrypt_destroy :: + Botan_pk_op_decrypt_t + -- ^ __C declaration:__ @op@ + -> IO FC.CInt +botan_pk_op_decrypt_destroy = + hs_bindgen_16e49f4a57ab6040 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pk_op_decrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_529644687c0851d6" hs_bindgen_529644687c0851d6 :: + Botan_pk_op_decrypt_t + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_decrypt_output_length@ + + __defined at:__ @botan\/ffi.h:1580:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_decrypt_output_length :: + Botan_pk_op_decrypt_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ctext_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ptext_len@ + -> IO FC.CInt +botan_pk_op_decrypt_output_length = + hs_bindgen_529644687c0851d6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pk_op_decrypt@ +foreign import ccall unsafe "hs_bindgen_9ffb3d9eced9fe75" hs_bindgen_9ffb3d9eced9fe75 :: + Botan_pk_op_decrypt_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pk_op_decrypt' +-} +botan_pk_op_decrypt_wrapper :: + Botan_pk_op_decrypt_t + -- ^ __C declaration:__ @op@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @ciphertext@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ciphertext_len@ + -> IO FC.CInt +botan_pk_op_decrypt_wrapper = + hs_bindgen_9ffb3d9eced9fe75 + +{-| __C declaration:__ @botan_pk_op_decrypt@ + + __defined at:__ @botan\/ffi.h:1584:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_decrypt :: + Botan_pk_op_decrypt_t + -- ^ __C declaration:__ @op@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @ciphertext@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ciphertext_len@ + -> IO FC.CInt +botan_pk_op_decrypt = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + HsBindgen.Runtime.IncompleteArray.withPtr x3 (\ptr5 -> + hs_bindgen_9ffb3d9eced9fe75 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x4) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pk_op_sign_create@ +foreign import ccall unsafe "hs_bindgen_c7208d8b32e52edf" hs_bindgen_c7208d8b32e52edf :: + Ptr.Ptr Botan_pk_op_sign_t + -> Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_sign_create@ + + __defined at:__ @botan\/ffi.h:1597:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_sign_create :: + Ptr.Ptr Botan_pk_op_sign_t + -- ^ __C declaration:__ @op@ + -> Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hash_and_padding@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_pk_op_sign_create = hs_bindgen_c7208d8b32e52edf + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pk_op_sign_destroy@ +foreign import ccall unsafe "hs_bindgen_038c55b2eec6445b" hs_bindgen_038c55b2eec6445b :: + Botan_pk_op_sign_t + -> IO FC.CInt + +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pk_op_sign_destroy@ + +__defined at:__ @botan\/ffi.h:1605:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_sign_destroy :: + Botan_pk_op_sign_t + -- ^ __C declaration:__ @op@ + -> IO FC.CInt +botan_pk_op_sign_destroy = + hs_bindgen_038c55b2eec6445b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pk_op_sign_output_length@ +foreign import ccall unsafe "hs_bindgen_3d469a3bfd0cd19a" hs_bindgen_3d469a3bfd0cd19a :: + Botan_pk_op_sign_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_sign_output_length@ + + __defined at:__ @botan\/ffi.h:1607:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_sign_output_length :: + Botan_pk_op_sign_t + -- ^ __C declaration:__ @op@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @olen@ + -> IO FC.CInt +botan_pk_op_sign_output_length = + hs_bindgen_3d469a3bfd0cd19a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pk_op_sign_update@ +foreign import ccall unsafe "hs_bindgen_3a6fe2e9cccdf76b" hs_bindgen_3a6fe2e9cccdf76b :: + Botan_pk_op_sign_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pk_op_sign_update' +-} +botan_pk_op_sign_update_wrapper :: + Botan_pk_op_sign_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @in'@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @in_len@ + -> IO FC.CInt +botan_pk_op_sign_update_wrapper = + hs_bindgen_3a6fe2e9cccdf76b + +{-| __C declaration:__ @botan_pk_op_sign_update@ + + __defined at:__ @botan\/ffi.h:1609:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_sign_update :: + Botan_pk_op_sign_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @in'@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @in_len@ + -> IO FC.CInt +botan_pk_op_sign_update = + \x0 -> + \x1 -> + \x2 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr3 -> + hs_bindgen_3a6fe2e9cccdf76b x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pk_op_sign_finish@ +foreign import ccall unsafe "hs_bindgen_bcc1e7289876da2f" hs_bindgen_bcc1e7289876da2f :: + Botan_pk_op_sign_t + -> Botan_rng_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_sign_finish@ + + __defined at:__ @botan\/ffi.h:1612:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_sign_finish :: + Botan_pk_op_sign_t + -- ^ __C declaration:__ @op@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @sig@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @sig_len@ + -> IO FC.CInt +botan_pk_op_sign_finish = hs_bindgen_bcc1e7289876da2f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pk_op_verify_create@ +foreign import ccall unsafe "hs_bindgen_7230c154b73ef167" hs_bindgen_7230c154b73ef167 :: + Ptr.Ptr Botan_pk_op_verify_t + -> Botan_pubkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_verify_create@ + + __defined at:__ @botan\/ffi.h:1621:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_verify_create :: + Ptr.Ptr Botan_pk_op_verify_t + -- ^ __C declaration:__ @op@ + -> Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hash_and_padding@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_pk_op_verify_create = + hs_bindgen_7230c154b73ef167 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pk_op_verify_destroy@ +foreign import ccall unsafe "hs_bindgen_c1a8f1c707dd0fa5" hs_bindgen_c1a8f1c707dd0fa5 :: + Botan_pk_op_verify_t + -> IO FC.CInt + +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pk_op_verify_destroy@ + +__defined at:__ @botan\/ffi.h:1629:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_verify_destroy :: + Botan_pk_op_verify_t + -- ^ __C declaration:__ @op@ + -> IO FC.CInt +botan_pk_op_verify_destroy = + hs_bindgen_c1a8f1c707dd0fa5 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pk_op_verify_update@ +foreign import ccall unsafe "hs_bindgen_e5eaca407607a791" hs_bindgen_e5eaca407607a791 :: + Botan_pk_op_verify_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pk_op_verify_update' +-} +botan_pk_op_verify_update_wrapper :: + Botan_pk_op_verify_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @in'@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @in_len@ + -> IO FC.CInt +botan_pk_op_verify_update_wrapper = + hs_bindgen_e5eaca407607a791 + +{-| __C declaration:__ @botan_pk_op_verify_update@ + + __defined at:__ @botan\/ffi.h:1631:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_verify_update :: + Botan_pk_op_verify_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @in'@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @in_len@ + -> IO FC.CInt +botan_pk_op_verify_update = + \x0 -> + \x1 -> + \x2 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr3 -> + hs_bindgen_e5eaca407607a791 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pk_op_verify_finish@ +foreign import ccall unsafe "hs_bindgen_a951469f5a91eb53" hs_bindgen_a951469f5a91eb53 :: + Botan_pk_op_verify_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pk_op_verify_finish' +-} +botan_pk_op_verify_finish_wrapper :: + Botan_pk_op_verify_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @sig@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @sig_len@ + -> IO FC.CInt +botan_pk_op_verify_finish_wrapper = + hs_bindgen_a951469f5a91eb53 + +{-| __C declaration:__ @botan_pk_op_verify_finish@ + + __defined at:__ @botan\/ffi.h:1632:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_verify_finish :: + Botan_pk_op_verify_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @sig@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @sig_len@ + -> IO FC.CInt +botan_pk_op_verify_finish = + \x0 -> + \x1 -> + \x2 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr3 -> + hs_bindgen_a951469f5a91eb53 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pk_op_key_agreement_create@ +foreign import ccall unsafe "hs_bindgen_d3950a5488d5784e" hs_bindgen_d3950a5488d5784e :: + Ptr.Ptr Botan_pk_op_ka_t + -> Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_key_agreement_create@ + + __defined at:__ @botan\/ffi.h:1640:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_key_agreement_create :: + Ptr.Ptr Botan_pk_op_ka_t + -- ^ __C declaration:__ @op@ + -> Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @kdf@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_pk_op_key_agreement_create = + hs_bindgen_d3950a5488d5784e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pk_op_key_agreement_destroy@ +foreign import ccall unsafe "hs_bindgen_5b97b3dfcdc2d911" hs_bindgen_5b97b3dfcdc2d911 :: + Botan_pk_op_ka_t + -> IO FC.CInt + +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pk_op_key_agreement_destroy@ + +__defined at:__ @botan\/ffi.h:1648:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_key_agreement_destroy :: + Botan_pk_op_ka_t + -- ^ __C declaration:__ @op@ + -> IO FC.CInt +botan_pk_op_key_agreement_destroy = + hs_bindgen_5b97b3dfcdc2d911 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pk_op_key_agreement_export_public@ +foreign import ccall unsafe "hs_bindgen_5ba58bca9b0e77dc" hs_bindgen_5ba58bca9b0e77dc :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_key_agreement_export_public@ + + __defined at:__ @botan\/ffi.h:1650:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_key_agreement_export_public :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_pk_op_key_agreement_export_public = + hs_bindgen_5ba58bca9b0e77dc + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pk_op_key_agreement_view_public@ +foreign import ccall unsafe "hs_bindgen_6742a42deebea5a1" hs_bindgen_6742a42deebea5a1 :: + Botan_privkey_t + -> Botan_view_ctx + -> Botan_view_bin_fn + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_key_agreement_view_public@ + + __defined at:__ @botan\/ffi.h:1653:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_key_agreement_view_public :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_bin_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_pk_op_key_agreement_view_public = + hs_bindgen_6742a42deebea5a1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pk_op_key_agreement_size@ +foreign import ccall unsafe "hs_bindgen_68797ed9db928901" hs_bindgen_68797ed9db928901 :: + Botan_pk_op_ka_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_key_agreement_size@ + + __defined at:__ @botan\/ffi.h:1658:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_key_agreement_size :: + Botan_pk_op_ka_t + -- ^ __C declaration:__ @op@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_pk_op_key_agreement_size = + hs_bindgen_68797ed9db928901 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pk_op_key_agreement@ +foreign import ccall unsafe "hs_bindgen_9a6a9c78b63eeb33" hs_bindgen_9a6a9c78b63eeb33 :: + Botan_pk_op_ka_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pk_op_key_agreement' +-} +botan_pk_op_key_agreement_wrapper :: + Botan_pk_op_ka_t + -- ^ __C declaration:__ @op@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @other_key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @other_key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> IO FC.CInt +botan_pk_op_key_agreement_wrapper = + hs_bindgen_9a6a9c78b63eeb33 + +{-| __C declaration:__ @botan_pk_op_key_agreement@ + + __defined at:__ @botan\/ffi.h:1661:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_key_agreement :: + Botan_pk_op_ka_t + -- ^ __C declaration:__ @op@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @other_key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @other_key_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> IO FC.CInt +botan_pk_op_key_agreement = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + HsBindgen.Runtime.IncompleteArray.withPtr x5 (\ptr7 -> + HsBindgen.Runtime.IncompleteArray.withPtr x3 (\ptr8 -> + hs_bindgen_9a6a9c78b63eeb33 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x6)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pk_op_kem_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_8fd8540777c8ed6d" hs_bindgen_8fd8540777c8ed6d :: + Ptr.Ptr Botan_pk_op_kem_encrypt_t + -> Botan_pubkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create@ + + __defined at:__ @botan\/ffi.h:1671:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_encrypt_create :: + Ptr.Ptr Botan_pk_op_kem_encrypt_t + -- ^ __C declaration:__ @op@ + -> Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @kdf@ + -> IO FC.CInt +botan_pk_op_kem_encrypt_create = + hs_bindgen_8fd8540777c8ed6d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_7716a4c0866ed246" hs_bindgen_7716a4c0866ed246 :: + Botan_pk_op_kem_encrypt_t + -> IO FC.CInt + +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pk_op_kem_encrypt_destroy@ + +__defined at:__ @botan\/ffi.h:1679:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_encrypt_destroy :: + Botan_pk_op_kem_encrypt_t + -- ^ __C declaration:__ @op@ + -> IO FC.CInt +botan_pk_op_kem_encrypt_destroy = + hs_bindgen_7716a4c0866ed246 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_ad8d06ee062ce57a" hs_bindgen_ad8d06ee062ce57a :: + Botan_pk_op_kem_encrypt_t + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_shared_key_length@ + + __defined at:__ @botan\/ffi.h:1682:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_encrypt_shared_key_length :: + Botan_pk_op_kem_encrypt_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @desired_shared_key_length@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @output_shared_key_length@ + -> IO FC.CInt +botan_pk_op_kem_encrypt_shared_key_length = + hs_bindgen_ad8d06ee062ce57a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall unsafe "hs_bindgen_2e5412392b6ab8dc" hs_bindgen_2e5412392b6ab8dc :: + Botan_pk_op_kem_encrypt_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_encapsulated_key_length@ + + __defined at:__ @botan\/ffi.h:1688:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_encrypt_encapsulated_key_length :: + Botan_pk_op_kem_encrypt_t + -- ^ __C declaration:__ @op@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @output_encapsulated_key_length@ + -> IO FC.CInt +botan_pk_op_kem_encrypt_encapsulated_key_length = + hs_bindgen_2e5412392b6ab8dc + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall unsafe "hs_bindgen_520a10376b5cffd3" hs_bindgen_520a10376b5cffd3 :: + Botan_pk_op_kem_encrypt_t + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pk_op_kem_encrypt_create_shared_key' +-} +botan_pk_op_kem_encrypt_create_shared_key_wrapper :: + Botan_pk_op_kem_encrypt_t + -- ^ __C declaration:__ @op@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @desired_shared_key_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @shared_key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @shared_key_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @encapsulated_key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @encapsulated_key_len@ + -> IO FC.CInt +botan_pk_op_kem_encrypt_create_shared_key_wrapper = + hs_bindgen_520a10376b5cffd3 + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create_shared_key@ + + __defined at:__ @botan\/ffi.h:1692:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_encrypt_create_shared_key :: + Botan_pk_op_kem_encrypt_t + -- ^ __C declaration:__ @op@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @desired_shared_key_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @shared_key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @shared_key_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @encapsulated_key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @encapsulated_key_len@ + -> IO FC.CInt +botan_pk_op_kem_encrypt_create_shared_key = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + \x8 -> + HsBindgen.Runtime.IncompleteArray.withPtr x2 (\ptr9 -> + hs_bindgen_520a10376b5cffd3 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 x4 x5 x6 x7 x8) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pk_op_kem_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_97573923bee0c1a0" hs_bindgen_97573923bee0c1a0 :: + Ptr.Ptr Botan_pk_op_kem_decrypt_t + -> Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_create@ + + __defined at:__ @botan\/ffi.h:1705:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_decrypt_create :: + Ptr.Ptr Botan_pk_op_kem_decrypt_t + -- ^ __C declaration:__ @op@ + -> Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @kdf@ + -> IO FC.CInt +botan_pk_op_kem_decrypt_create = + hs_bindgen_97573923bee0c1a0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_acab7c3544794419" hs_bindgen_acab7c3544794419 :: + Botan_pk_op_kem_decrypt_t + -> IO FC.CInt + +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pk_op_kem_decrypt_destroy@ + +__defined at:__ @botan\/ffi.h:1713:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_decrypt_destroy :: + Botan_pk_op_kem_decrypt_t + -- ^ __C declaration:__ @op@ + -> IO FC.CInt +botan_pk_op_kem_decrypt_destroy = + hs_bindgen_acab7c3544794419 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_7696e69c6aa264c6" hs_bindgen_7696e69c6aa264c6 :: + Botan_pk_op_kem_decrypt_t + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key_length@ + + __defined at:__ @botan\/ffi.h:1716:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_decrypt_shared_key_length :: + Botan_pk_op_kem_decrypt_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @desired_shared_key_length@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @output_shared_key_length@ + -> IO FC.CInt +botan_pk_op_kem_decrypt_shared_key_length = + hs_bindgen_7696e69c6aa264c6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall unsafe "hs_bindgen_2e86a13586756950" hs_bindgen_2e86a13586756950 :: + Botan_pk_op_kem_decrypt_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pk_op_kem_decrypt_shared_key' +-} +botan_pk_op_kem_decrypt_shared_key_wrapper :: + Botan_pk_op_kem_decrypt_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @encapsulated_key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @encapsulated_key_len@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @desired_shared_key_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @shared_key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @shared_key_len@ + -> IO FC.CInt +botan_pk_op_kem_decrypt_shared_key_wrapper = + hs_bindgen_2e86a13586756950 + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key@ + + __defined at:__ @botan\/ffi.h:1721:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_decrypt_shared_key :: + Botan_pk_op_kem_decrypt_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @encapsulated_key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @encapsulated_key_len@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @desired_shared_key_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @shared_key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @shared_key_len@ + -> IO FC.CInt +botan_pk_op_kem_decrypt_shared_key = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + HsBindgen.Runtime.IncompleteArray.withPtr x3 (\ptr8 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr9 -> + hs_bindgen_2e86a13586756950 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_pkcs_hash_id@ +foreign import ccall unsafe "hs_bindgen_1e5950991ed3e1d9" hs_bindgen_1e5950991ed3e1d9 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Signature Scheme Utility Functions + +__C declaration:__ @botan_pkcs_hash_id@ + +__defined at:__ @botan\/ffi.h:1735:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pkcs_hash_id :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hash_name@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pkcs_id@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @pkcs_id_len@ + -> IO FC.CInt +botan_pkcs_hash_id = hs_bindgen_1e5950991ed3e1d9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mceies_encrypt@ +foreign import ccall unsafe "hs_bindgen_e28214bae44c6251" hs_bindgen_e28214bae44c6251 :: + Botan_pubkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_mceies_encrypt' +-} +botan_mceies_encrypt_wrapper :: + Botan_pubkey_t + -- ^ __C declaration:__ @mce_key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @aead@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @pt_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @ad@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ad_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @ct@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ct_len@ + -> IO FC.CInt +botan_mceies_encrypt_wrapper = + hs_bindgen_e28214bae44c6251 + +{-| __C declaration:__ @botan_mceies_encrypt@ + + __defined at:__ @botan\/ffi.h:1742:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mceies_encrypt :: + Botan_pubkey_t + -- ^ __C declaration:__ @mce_key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @aead@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @pt_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @ad@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ad_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @ct@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ct_len@ + -> IO FC.CInt +botan_mceies_encrypt = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + \x8 -> + HsBindgen.Runtime.IncompleteArray.withPtr x5 (\ptr9 -> + HsBindgen.Runtime.IncompleteArray.withPtr x3 (\ptr10 -> + hs_bindgen_e28214bae44c6251 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x6 x7 x8)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_mceies_decrypt@ +foreign import ccall unsafe "hs_bindgen_8338743b2b24e771" hs_bindgen_8338743b2b24e771 :: + Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_mceies_decrypt' +-} +botan_mceies_decrypt_wrapper :: + Botan_privkey_t + -- ^ __C declaration:__ @mce_key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @aead@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @ct@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ct_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @ad@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ad_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pt@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @pt_len@ + -> IO FC.CInt +botan_mceies_decrypt_wrapper = + hs_bindgen_8338743b2b24e771 + +{-| __C declaration:__ @botan_mceies_decrypt@ + + __defined at:__ @botan\/ffi.h:1753:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mceies_decrypt :: + Botan_privkey_t + -- ^ __C declaration:__ @mce_key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @aead@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @ct@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ct_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @ad@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ad_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pt@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @pt_len@ + -> IO FC.CInt +botan_mceies_decrypt = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + HsBindgen.Runtime.IncompleteArray.withPtr x4 (\ptr8 -> + HsBindgen.Runtime.IncompleteArray.withPtr x2 (\ptr9 -> + hs_bindgen_8338743b2b24e771 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_x509_cert_load@ +foreign import ccall unsafe "hs_bindgen_f1deef85025eff3e" hs_bindgen_f1deef85025eff3e :: + Ptr.Ptr Botan_x509_cert_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_x509_cert_load' +-} +botan_x509_cert_load_wrapper :: + Ptr.Ptr Botan_x509_cert_t + -- ^ __C declaration:__ @cert_obj@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @cert@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @cert_len@ + -> IO FC.CInt +botan_x509_cert_load_wrapper = + hs_bindgen_f1deef85025eff3e + +{-| __C declaration:__ @botan_x509_cert_load@ + + __defined at:__ @botan\/ffi.h:1765:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_load :: + Ptr.Ptr Botan_x509_cert_t + -- ^ __C declaration:__ @cert_obj@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @cert@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @cert_len@ + -> IO FC.CInt +botan_x509_cert_load = + \x0 -> + \x1 -> + \x2 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr3 -> + hs_bindgen_f1deef85025eff3e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_x509_cert_load_file@ +foreign import ccall unsafe "hs_bindgen_f4e0c10e0666f0c1" hs_bindgen_f4e0c10e0666f0c1 :: + Ptr.Ptr Botan_x509_cert_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_load_file@ + + __defined at:__ @botan\/ffi.h:1766:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_load_file :: + Ptr.Ptr Botan_x509_cert_t + -- ^ __C declaration:__ @cert_obj@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @filename@ + -> IO FC.CInt +botan_x509_cert_load_file = + hs_bindgen_f4e0c10e0666f0c1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_x509_cert_destroy@ +foreign import ccall unsafe "hs_bindgen_c5c4d21741875738" hs_bindgen_c5c4d21741875738 :: + Botan_x509_cert_t + -> IO FC.CInt + +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_x509_cert_destroy@ + +__defined at:__ @botan\/ffi.h:1771:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_destroy :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> IO FC.CInt +botan_x509_cert_destroy = hs_bindgen_c5c4d21741875738 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_x509_cert_dup@ +foreign import ccall unsafe "hs_bindgen_68829da068a548f5" hs_bindgen_68829da068a548f5 :: + Ptr.Ptr Botan_x509_cert_t + -> Botan_x509_cert_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_dup@ + + __defined at:__ @botan\/ffi.h:1773:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_dup :: + Ptr.Ptr Botan_x509_cert_t + -- ^ __C declaration:__ @new_cert@ + -> Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> IO FC.CInt +botan_x509_cert_dup = hs_bindgen_68829da068a548f5 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_x509_cert_get_time_starts@ +foreign import ccall unsafe "hs_bindgen_a09c8f71693f1880" hs_bindgen_a09c8f71693f1880 :: + Botan_x509_cert_t + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_get_time_starts@ + + __defined at:__ @botan\/ffi.h:1776:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_time_starts :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Ptr.Ptr FC.CChar + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_x509_cert_get_time_starts = + hs_bindgen_a09c8f71693f1880 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_x509_cert_get_time_expires@ +foreign import ccall unsafe "hs_bindgen_cc0e363581b558a7" hs_bindgen_cc0e363581b558a7 :: + Botan_x509_cert_t + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_get_time_expires@ + + __defined at:__ @botan\/ffi.h:1777:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_time_expires :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Ptr.Ptr FC.CChar + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_x509_cert_get_time_expires = + hs_bindgen_cc0e363581b558a7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_x509_cert_not_before@ +foreign import ccall unsafe "hs_bindgen_5cd5c3f02e0a58b1" hs_bindgen_5cd5c3f02e0a58b1 :: + Botan_x509_cert_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word64 + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_not_before@ + + __defined at:__ @botan\/ffi.h:1779:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_not_before :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word64 + -- ^ __C declaration:__ @time_since_epoch@ + -> IO FC.CInt +botan_x509_cert_not_before = + hs_bindgen_5cd5c3f02e0a58b1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_x509_cert_not_after@ +foreign import ccall unsafe "hs_bindgen_e28cba74f627be2e" hs_bindgen_e28cba74f627be2e :: + Botan_x509_cert_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word64 + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_not_after@ + + __defined at:__ @botan\/ffi.h:1780:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_not_after :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word64 + -- ^ __C declaration:__ @time_since_epoch@ + -> IO FC.CInt +botan_x509_cert_not_after = + hs_bindgen_e28cba74f627be2e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_x509_cert_get_fingerprint@ +foreign import ccall unsafe "hs_bindgen_210d4af4ba377a43" hs_bindgen_210d4af4ba377a43 :: + Botan_x509_cert_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_get_fingerprint@ + + __defined at:__ @botan\/ffi.h:1782:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_fingerprint :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hash@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_x509_cert_get_fingerprint = + hs_bindgen_210d4af4ba377a43 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_x509_cert_get_serial_number@ +foreign import ccall unsafe "hs_bindgen_db77422855b17046" hs_bindgen_db77422855b17046 :: + Botan_x509_cert_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_get_serial_number@ + + __defined at:__ @botan\/ffi.h:1784:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_serial_number :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_x509_cert_get_serial_number = + hs_bindgen_db77422855b17046 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_x509_cert_get_authority_key_id@ +foreign import ccall unsafe "hs_bindgen_bf070ce8be37002f" hs_bindgen_bf070ce8be37002f :: + Botan_x509_cert_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_get_authority_key_id@ + + __defined at:__ @botan\/ffi.h:1785:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_authority_key_id :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_x509_cert_get_authority_key_id = + hs_bindgen_bf070ce8be37002f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_x509_cert_get_subject_key_id@ +foreign import ccall unsafe "hs_bindgen_6cd3823019ba075b" hs_bindgen_6cd3823019ba075b :: + Botan_x509_cert_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_get_subject_key_id@ + + __defined at:__ @botan\/ffi.h:1786:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_subject_key_id :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_x509_cert_get_subject_key_id = + hs_bindgen_6cd3823019ba075b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_x509_cert_get_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_4003d8ff0f330ada" hs_bindgen_4003d8ff0f330ada :: + Botan_x509_cert_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_get_public_key_bits@ + + __defined at:__ @botan\/ffi.h:1788:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_public_key_bits :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_x509_cert_get_public_key_bits = + hs_bindgen_4003d8ff0f330ada + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_x509_cert_view_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_2ff2109e2a48ff96" hs_bindgen_2ff2109e2a48ff96 :: + Botan_x509_cert_t + -> Botan_view_ctx + -> Botan_view_bin_fn + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_view_public_key_bits@ + + __defined at:__ @botan\/ffi.h:1791:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_view_public_key_bits :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_bin_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_x509_cert_view_public_key_bits = + hs_bindgen_2ff2109e2a48ff96 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_x509_cert_get_public_key@ +foreign import ccall unsafe "hs_bindgen_ee989703a0c67e27" hs_bindgen_ee989703a0c67e27 :: + Botan_x509_cert_t + -> Ptr.Ptr Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_get_public_key@ + + __defined at:__ @botan\/ffi.h:1796:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_public_key :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_x509_cert_get_public_key = + hs_bindgen_ee989703a0c67e27 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_x509_cert_get_issuer_dn@ +foreign import ccall unsafe "hs_bindgen_87ff05da0793a057" hs_bindgen_87ff05da0793a057 :: + Botan_x509_cert_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_get_issuer_dn@ + + __defined at:__ @botan\/ffi.h:1799:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_issuer_dn :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @index@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_x509_cert_get_issuer_dn = + hs_bindgen_87ff05da0793a057 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_x509_cert_get_subject_dn@ +foreign import ccall unsafe "hs_bindgen_ea7d597594d96638" hs_bindgen_ea7d597594d96638 :: + Botan_x509_cert_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_get_subject_dn@ + + __defined at:__ @botan\/ffi.h:1804:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_subject_dn :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @index@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_x509_cert_get_subject_dn = + hs_bindgen_ea7d597594d96638 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_x509_cert_to_string@ +foreign import ccall unsafe "hs_bindgen_be6c6923475edd18" hs_bindgen_be6c6923475edd18 :: + Botan_x509_cert_t + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_to_string@ + + __defined at:__ @botan\/ffi.h:1808:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_to_string :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Ptr.Ptr FC.CChar + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_x509_cert_to_string = + hs_bindgen_be6c6923475edd18 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_x509_cert_view_as_string@ +foreign import ccall unsafe "hs_bindgen_576deb4f28e1488f" hs_bindgen_576deb4f28e1488f :: + Botan_x509_cert_t + -> Botan_view_ctx + -> Botan_view_str_fn + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_view_as_string@ + + __defined at:__ @botan\/ffi.h:1810:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_view_as_string :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_str_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_x509_cert_view_as_string = + hs_bindgen_576deb4f28e1488f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_x509_cert_allowed_usage@ +foreign import ccall unsafe "hs_bindgen_0df94c47b0227d71" hs_bindgen_0df94c47b0227d71 :: + Botan_x509_cert_t + -> FC.CUInt + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_allowed_usage@ + + __defined at:__ @botan\/ffi.h:1829:27@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_allowed_usage :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> FC.CUInt + -- ^ __C declaration:__ @key_usage@ + -> IO FC.CInt +botan_x509_cert_allowed_usage = + hs_bindgen_0df94c47b0227d71 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_x509_cert_hostname_match@ +foreign import ccall unsafe "hs_bindgen_396cd55f0d20550c" hs_bindgen_396cd55f0d20550c :: + Botan_x509_cert_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Check if the certificate matches the specified hostname via alternative name or CN match. RFC 5280 wildcards also supported. + +__C declaration:__ @botan_x509_cert_hostname_match@ + +__defined at:__ @botan\/ffi.h:1835:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_hostname_match :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hostname@ + -> IO FC.CInt +botan_x509_cert_hostname_match = + hs_bindgen_396cd55f0d20550c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_x509_cert_verify@ +foreign import ccall unsafe "hs_bindgen_03285da4f53028bb" hs_bindgen_03285da4f53028bb :: + Ptr.Ptr FC.CInt + -> Botan_x509_cert_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word64 + -> IO FC.CInt + +{-| Returns 0 if the validation was successful, 1 if validation failed, and negative on error. A status code with details is written to *validation_result + + Intermediates or trusted lists can be null Trusted path can be null + +__C declaration:__ @botan_x509_cert_verify@ + +__defined at:__ @botan\/ffi.h:1845:27@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_verify :: + Ptr.Ptr FC.CInt + -- ^ __C declaration:__ @validation_result@ + -> Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t + -- ^ __C declaration:__ @intermediates@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @intermediates_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t + -- ^ __C declaration:__ @trusted@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @trusted_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @trusted_path@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @required_strength@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hostname@ + -> HsBindgen.Runtime.Prelude.Word64 + -- ^ __C declaration:__ @reference_time@ + -> IO FC.CInt +botan_x509_cert_verify = hs_bindgen_03285da4f53028bb + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_x509_cert_validation_status@ +foreign import ccall unsafe "hs_bindgen_4325e4a23286212d" hs_bindgen_4325e4a23286212d :: + FC.CInt + -> IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) + +{-| Returns a pointer to a static character string explaining the status code, or else NULL if unknown. + +__C declaration:__ @botan_x509_cert_validation_status@ + +__defined at:__ @botan\/ffi.h:1861:35@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_validation_status :: + FC.CInt + -- ^ __C declaration:__ @code@ + -> IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_x509_cert_validation_status = + hs_bindgen_4325e4a23286212d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_x509_crl_load_file@ +foreign import ccall unsafe "hs_bindgen_2f9681570f4a388d" hs_bindgen_2f9681570f4a388d :: + Ptr.Ptr Botan_x509_crl_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_crl_load_file@ + + __defined at:__ @botan\/ffi.h:1869:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_crl_load_file :: + Ptr.Ptr Botan_x509_crl_t + -- ^ __C declaration:__ @crl_obj@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @crl_path@ + -> IO FC.CInt +botan_x509_crl_load_file = + hs_bindgen_2f9681570f4a388d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_x509_crl_load@ +foreign import ccall unsafe "hs_bindgen_cfc1d4d70d3b7d2a" hs_bindgen_cfc1d4d70d3b7d2a :: + Ptr.Ptr Botan_x509_crl_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_x509_crl_load' +-} +botan_x509_crl_load_wrapper :: + Ptr.Ptr Botan_x509_crl_t + -- ^ __C declaration:__ @crl_obj@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @crl_bits@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @crl_bits_len@ + -> IO FC.CInt +botan_x509_crl_load_wrapper = + hs_bindgen_cfc1d4d70d3b7d2a + +{-| __C declaration:__ @botan_x509_crl_load@ + + __defined at:__ @botan\/ffi.h:1870:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_crl_load :: + Ptr.Ptr Botan_x509_crl_t + -- ^ __C declaration:__ @crl_obj@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @crl_bits@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @crl_bits_len@ + -> IO FC.CInt +botan_x509_crl_load = + \x0 -> + \x1 -> + \x2 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr3 -> + hs_bindgen_cfc1d4d70d3b7d2a x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_x509_crl_destroy@ +foreign import ccall unsafe "hs_bindgen_ee8644d99725f073" hs_bindgen_ee8644d99725f073 :: + Botan_x509_crl_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_crl_destroy@ + + __defined at:__ @botan\/ffi.h:1872:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_crl_destroy :: + Botan_x509_crl_t + -- ^ __C declaration:__ @crl@ + -> IO FC.CInt +botan_x509_crl_destroy = hs_bindgen_ee8644d99725f073 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_x509_is_revoked@ +foreign import ccall unsafe "hs_bindgen_8e8376aa6c2f3096" hs_bindgen_8e8376aa6c2f3096 :: + Botan_x509_crl_t + -> Botan_x509_cert_t + -> IO FC.CInt + +{-| Given a CRL and a certificate, check if the certificate is revoked on that particular CRL + +__C declaration:__ @botan_x509_is_revoked@ + +__defined at:__ @botan\/ffi.h:1878:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_x509_is_revoked :: + Botan_x509_crl_t + -- ^ __C declaration:__ @crl@ + -> Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> IO FC.CInt +botan_x509_is_revoked = hs_bindgen_8e8376aa6c2f3096 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_x509_cert_verify_with_crl@ +foreign import ccall unsafe "hs_bindgen_9550d7d84bad350d" hs_bindgen_9550d7d84bad350d :: + Ptr.Ptr FC.CInt + -> Botan_x509_cert_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_crl_t + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word64 + -> IO FC.CInt + +{-| Different flavor of `botan_x509_cert_verify`, supports revocation lists. CRLs are passed as an array, same as intermediates and trusted CAs + +__C declaration:__ @botan_x509_cert_verify_with_crl@ + +__defined at:__ @botan\/ffi.h:1884:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_verify_with_crl :: + Ptr.Ptr FC.CInt + -- ^ __C declaration:__ @validation_result@ + -> Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t + -- ^ __C declaration:__ @intermediates@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @intermediates_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t + -- ^ __C declaration:__ @trusted@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @trusted_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_crl_t + -- ^ __C declaration:__ @crls@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @crls_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @trusted_path@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @required_strength@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hostname@ + -> HsBindgen.Runtime.Prelude.Word64 + -- ^ __C declaration:__ @reference_time@ + -> IO FC.CInt +botan_x509_cert_verify_with_crl = + hs_bindgen_9550d7d84bad350d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_key_wrap3394@ +foreign import ccall unsafe "hs_bindgen_e5bc5fa706d03290" hs_bindgen_e5bc5fa706d03290 :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_key_wrap3394' +-} +botan_key_wrap3394_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @kek@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @kek_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @wrapped_key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @wrapped_key_len@ + -> IO FC.CInt +botan_key_wrap3394_wrapper = + hs_bindgen_e5bc5fa706d03290 + +{-| Key wrapping as per RFC 3394 + +__C declaration:__ @botan_key_wrap3394@ + +__defined at:__ @botan\/ffi.h:1903:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_key_wrap3394 :: + HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @kek@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @kek_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @wrapped_key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @wrapped_key_len@ + -> IO FC.CInt +botan_key_wrap3394 = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + HsBindgen.Runtime.IncompleteArray.withPtr x2 (\ptr6 -> + HsBindgen.Runtime.IncompleteArray.withPtr x0 (\ptr7 -> + hs_bindgen_e5bc5fa706d03290 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_key_unwrap3394@ +foreign import ccall unsafe "hs_bindgen_5bf6a4aa2c12d606" hs_bindgen_5bf6a4aa2c12d606 :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_key_unwrap3394' +-} +botan_key_unwrap3394_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @wrapped_key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @wrapped_key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @kek@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @kek_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> IO FC.CInt +botan_key_unwrap3394_wrapper = + hs_bindgen_5bf6a4aa2c12d606 + +{-| __C declaration:__ @botan_key_unwrap3394@ + + __defined at:__ @botan\/ffi.h:1909:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_key_unwrap3394 :: + HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @wrapped_key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @wrapped_key_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @kek@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @kek_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> IO FC.CInt +botan_key_unwrap3394 = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + HsBindgen.Runtime.IncompleteArray.withPtr x2 (\ptr6 -> + HsBindgen.Runtime.IncompleteArray.withPtr x0 (\ptr7 -> + hs_bindgen_5bf6a4aa2c12d606 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_nist_kw_enc@ +foreign import ccall unsafe "hs_bindgen_2691416a1849d8d6" hs_bindgen_2691416a1849d8d6 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> FC.CInt + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_nist_kw_enc' +-} +botan_nist_kw_enc_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cipher_algo@ + -> FC.CInt + -- ^ __C declaration:__ @padded@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @kek@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @kek_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @wrapped_key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @wrapped_key_len@ + -> IO FC.CInt +botan_nist_kw_enc_wrapper = + hs_bindgen_2691416a1849d8d6 + +{-| __C declaration:__ @botan_nist_kw_enc@ + + __defined at:__ @botan\/ffi.h:1914:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_nist_kw_enc :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cipher_algo@ + -> FC.CInt + -- ^ __C declaration:__ @padded@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @kek@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @kek_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @wrapped_key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @wrapped_key_len@ + -> IO FC.CInt +botan_nist_kw_enc = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + HsBindgen.Runtime.IncompleteArray.withPtr x4 (\ptr8 -> + HsBindgen.Runtime.IncompleteArray.withPtr x2 (\ptr9 -> + hs_bindgen_2691416a1849d8d6 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_nist_kw_dec@ +foreign import ccall unsafe "hs_bindgen_b94c87abddb1c3bd" hs_bindgen_b94c87abddb1c3bd :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> FC.CInt + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_nist_kw_dec' +-} +botan_nist_kw_dec_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cipher_algo@ + -> FC.CInt + -- ^ __C declaration:__ @padded@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @wrapped_key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @wrapped_key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @kek@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @kek_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> IO FC.CInt +botan_nist_kw_dec_wrapper = + hs_bindgen_b94c87abddb1c3bd + +{-| __C declaration:__ @botan_nist_kw_dec@ + + __defined at:__ @botan\/ffi.h:1920:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_nist_kw_dec :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cipher_algo@ + -> FC.CInt + -- ^ __C declaration:__ @padded@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @wrapped_key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @wrapped_key_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @kek@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @kek_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> IO FC.CInt +botan_nist_kw_dec = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + HsBindgen.Runtime.IncompleteArray.withPtr x4 (\ptr8 -> + HsBindgen.Runtime.IncompleteArray.withPtr x2 (\ptr9 -> + hs_bindgen_b94c87abddb1c3bd x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_hotp_init@ +foreign import ccall unsafe "hs_bindgen_b0869e7d1ed2c3ec" hs_bindgen_b0869e7d1ed2c3ec :: + Ptr.Ptr Botan_hotp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_hotp_init' +-} +botan_hotp_init_wrapper :: + Ptr.Ptr Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hash_algo@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @digits@ + -> IO FC.CInt +botan_hotp_init_wrapper = hs_bindgen_b0869e7d1ed2c3ec + +{-| Initialize a HOTP instance + +__C declaration:__ @botan_hotp_init@ + +__defined at:__ @botan\/ffi.h:1935:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_init :: + Ptr.Ptr Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hash_algo@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @digits@ + -> IO FC.CInt +botan_hotp_init = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr5 -> + hs_bindgen_b0869e7d1ed2c3ec x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_hotp_destroy@ +foreign import ccall unsafe "hs_bindgen_a4122819b6f615ee" hs_bindgen_a4122819b6f615ee :: + Botan_hotp_t + -> IO FC.CInt + +{-| Destroy a HOTP instance + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_hotp_destroy@ + +__defined at:__ @botan\/ffi.h:1945:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_destroy :: + Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> IO FC.CInt +botan_hotp_destroy = hs_bindgen_a4122819b6f615ee + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_hotp_generate@ +foreign import ccall unsafe "hs_bindgen_8a970e1c8ceadae5" hs_bindgen_8a970e1c8ceadae5 :: + Botan_hotp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> HsBindgen.Runtime.Prelude.Word64 + -> IO FC.CInt + +{-| Generate a HOTP code for the provided counter + +__C declaration:__ @botan_hotp_generate@ + +__defined at:__ @botan\/ffi.h:1951:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_generate :: + Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @hotp_code@ + -> HsBindgen.Runtime.Prelude.Word64 + -- ^ __C declaration:__ @hotp_counter@ + -> IO FC.CInt +botan_hotp_generate = hs_bindgen_8a970e1c8ceadae5 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_hotp_check@ +foreign import ccall unsafe "hs_bindgen_edfe9ab0e22d611b" hs_bindgen_edfe9ab0e22d611b :: + Botan_hotp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word64 + -> HsBindgen.Runtime.Prelude.Word32 + -> HsBindgen.Runtime.Prelude.Word64 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Verify a HOTP code + +__C declaration:__ @botan_hotp_check@ + +__defined at:__ @botan\/ffi.h:1959:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_check :: + Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word64 + -- ^ __C declaration:__ @next_hotp_counter@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @hotp_code@ + -> HsBindgen.Runtime.Prelude.Word64 + -- ^ __C declaration:__ @hotp_counter@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @resync_range@ + -> IO FC.CInt +botan_hotp_check = hs_bindgen_edfe9ab0e22d611b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_totp_init@ +foreign import ccall unsafe "hs_bindgen_498859899ae7f77f" hs_bindgen_498859899ae7f77f :: + Ptr.Ptr Botan_totp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_totp_init' +-} +botan_totp_init_wrapper :: + Ptr.Ptr Botan_totp_t + -- ^ __C declaration:__ @totp@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hash_algo@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @digits@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @time_step@ + -> IO FC.CInt +botan_totp_init_wrapper = hs_bindgen_498859899ae7f77f + +{-| Initialize a TOTP instance + +__C declaration:__ @botan_totp_init@ + +__defined at:__ @botan\/ffi.h:1976:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_init :: + Ptr.Ptr Botan_totp_t + -- ^ __C declaration:__ @totp@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hash_algo@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @digits@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @time_step@ + -> IO FC.CInt +botan_totp_init = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr6 -> + hs_bindgen_498859899ae7f77f x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x2 x3 x4 x5) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_totp_destroy@ +foreign import ccall unsafe "hs_bindgen_72fe5154d6d956d1" hs_bindgen_72fe5154d6d956d1 :: + Botan_totp_t + -> IO FC.CInt + +{-| Destroy a TOTP instance + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_totp_destroy@ + +__defined at:__ @botan\/ffi.h:1987:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_destroy :: + Botan_totp_t + -- ^ __C declaration:__ @totp@ + -> IO FC.CInt +botan_totp_destroy = hs_bindgen_72fe5154d6d956d1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_totp_generate@ +foreign import ccall unsafe "hs_bindgen_4bc7ba45ba382481" hs_bindgen_4bc7ba45ba382481 :: + Botan_totp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> HsBindgen.Runtime.Prelude.Word64 + -> IO FC.CInt + +{-| Generate a TOTP code for the provided timestamp + + [__@totp@ /(input)/__]: the TOTP object + + [__@totp_code@ /(input)/__]: the OTP code will be written here + + [__@timestamp@ /(input)/__]: the current local timestamp + +__C declaration:__ @botan_totp_generate@ + +__defined at:__ @botan\/ffi.h:1996:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_generate :: + Botan_totp_t + {- ^ + + [__@totp@ /(input)/__]: the TOTP object + + __C declaration:__ @totp@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + {- ^ + + [__@totp_code@ /(input)/__]: the OTP code will be written here + + __C declaration:__ @totp_code@ + -} + -> HsBindgen.Runtime.Prelude.Word64 + {- ^ + + [__@timestamp@ /(input)/__]: the current local timestamp + + __C declaration:__ @timestamp@ + -} + -> IO FC.CInt +botan_totp_generate = hs_bindgen_4bc7ba45ba382481 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_totp_check@ +foreign import ccall unsafe "hs_bindgen_712de19f34689e07" hs_bindgen_712de19f34689e07 :: + Botan_totp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> HsBindgen.Runtime.Prelude.Word64 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Verify a TOTP code + + [__@totp@ /(input)/__]: the TOTP object + + [__@totp_code@ /(input)/__]: the presented OTP + + [__@timestamp@ /(input)/__]: the current local timestamp + + [__@acceptable_clock_drift@ /(input)/__]: specifies the acceptable amount of clock drift (in terms of time steps) between the two hosts. + +__C declaration:__ @botan_totp_check@ + +__defined at:__ @botan\/ffi.h:2009:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_check :: + Botan_totp_t + {- ^ + + [__@totp@ /(input)/__]: the TOTP object + + __C declaration:__ @totp@ + -} + -> HsBindgen.Runtime.Prelude.Word32 + {- ^ + + [__@totp_code@ /(input)/__]: the presented OTP + + __C declaration:__ @totp_code@ + -} + -> HsBindgen.Runtime.Prelude.Word64 + {- ^ + + [__@timestamp@ /(input)/__]: the current local timestamp + + __C declaration:__ @timestamp@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@acceptable_clock_drift@ /(input)/__]: specifies the acceptable amount of clock drift (in terms of time steps) between the two hosts. + + __C declaration:__ @acceptable_clock_drift@ + -} + -> IO FC.CInt +botan_totp_check = hs_bindgen_712de19f34689e07 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_fpe_fe1_init@ +foreign import ccall unsafe "hs_bindgen_34bd55593172bfef" hs_bindgen_34bd55593172bfef :: + Ptr.Ptr Botan_fpe_t + -> Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| Pointer-based API for 'botan_fpe_fe1_init' +-} +botan_fpe_fe1_init_wrapper :: + Ptr.Ptr Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> Botan_mp_t + -- ^ __C declaration:__ @n@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @rounds@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_fpe_fe1_init_wrapper = + hs_bindgen_34bd55593172bfef + +{-| __C declaration:__ @botan_fpe_fe1_init@ + + __defined at:__ @botan\/ffi.h:2024:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_fpe_fe1_init :: + Ptr.Ptr Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> Botan_mp_t + -- ^ __C declaration:__ @n@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @rounds@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_fpe_fe1_init = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + HsBindgen.Runtime.IncompleteArray.withPtr x2 (\ptr6 -> + hs_bindgen_34bd55593172bfef x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_fpe_destroy@ +foreign import ccall unsafe "hs_bindgen_04cc072a948c056d" hs_bindgen_04cc072a948c056d :: + Botan_fpe_t + -> IO FC.CInt + +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_fpe_destroy@ + +__defined at:__ @botan\/ffi.h:2032:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_fpe_destroy :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> IO FC.CInt +botan_fpe_destroy = hs_bindgen_04cc072a948c056d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_fpe_encrypt@ +foreign import ccall unsafe "hs_bindgen_497f2719046f9fcc" hs_bindgen_497f2719046f9fcc :: + Botan_fpe_t + -> Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_fpe_encrypt' +-} +botan_fpe_encrypt_wrapper :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @tweak@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @tweak_len@ + -> IO FC.CInt +botan_fpe_encrypt_wrapper = + hs_bindgen_497f2719046f9fcc + +{-| __C declaration:__ @botan_fpe_encrypt@ + + __defined at:__ @botan\/ffi.h:2035:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_fpe_encrypt :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @tweak@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @tweak_len@ + -> IO FC.CInt +botan_fpe_encrypt = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + HsBindgen.Runtime.IncompleteArray.withPtr x2 (\ptr4 -> + hs_bindgen_497f2719046f9fcc x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_fpe_decrypt@ +foreign import ccall unsafe "hs_bindgen_0b7b698271ad8e23" hs_bindgen_0b7b698271ad8e23 :: + Botan_fpe_t + -> Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_fpe_decrypt' +-} +botan_fpe_decrypt_wrapper :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @tweak@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @tweak_len@ + -> IO FC.CInt +botan_fpe_decrypt_wrapper = + hs_bindgen_0b7b698271ad8e23 + +{-| __C declaration:__ @botan_fpe_decrypt@ + + __defined at:__ @botan\/ffi.h:2038:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_fpe_decrypt :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @tweak@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @tweak_len@ + -> IO FC.CInt +botan_fpe_decrypt = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + HsBindgen.Runtime.IncompleteArray.withPtr x2 (\ptr4 -> + hs_bindgen_0b7b698271ad8e23 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_srp6_server_session_init@ +foreign import ccall unsafe "hs_bindgen_e90b4ac55f684b15" hs_bindgen_e90b4ac55f684b15 :: + Ptr.Ptr Botan_srp6_server_session_t + -> IO FC.CInt + +{-| Initialize an SRP-6 server session object + + [__@srp6@ /(input)/__]: SRP-6 server session object + +__C declaration:__ @botan_srp6_server_session_init@ + +__defined at:__ @botan\/ffi.h:2050:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_srp6_server_session_init :: + Ptr.Ptr Botan_srp6_server_session_t + {- ^ + + [__@srp6@ /(input)/__]: SRP-6 server session object + + __C declaration:__ @srp6@ + -} + -> IO FC.CInt +botan_srp6_server_session_init = + hs_bindgen_e90b4ac55f684b15 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_srp6_server_session_destroy@ +foreign import ccall unsafe "hs_bindgen_c5b86161d7103278" hs_bindgen_c5b86161d7103278 :: + Botan_srp6_server_session_t + -> IO FC.CInt + +{-| Frees all resources of the SRP-6 server session object + + [__@srp6@ /(input)/__]: SRP-6 server session object + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_srp6_server_session_destroy@ + +__defined at:__ @botan\/ffi.h:2058:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_srp6_server_session_destroy :: + Botan_srp6_server_session_t + {- ^ + + [__@srp6@ /(input)/__]: SRP-6 server session object + + __C declaration:__ @srp6@ + -} + -> IO FC.CInt +botan_srp6_server_session_destroy = + hs_bindgen_c5b86161d7103278 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_srp6_server_session_step1@ +foreign import ccall unsafe "hs_bindgen_eca3422d1b410999" hs_bindgen_eca3422d1b410999 :: + Botan_srp6_server_session_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Botan_rng_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_srp6_server_session_step1' +-} +botan_srp6_server_session_step1_wrapper :: + Botan_srp6_server_session_t + {- ^ + + [__@srp6@ /(input)/__]: SRP-6 server session object + + __C declaration:__ @srp6@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@verifier@ /(input)/__]: the verification value saved from client registration + + __C declaration:__ @verifier@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@verifier_len@ /(input)/__]: SRP-6 verifier value length + + __C declaration:__ @verifier_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@group_id@ /(input)/__]: the SRP group id + + __C declaration:__ @group_id@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@hash_id@ /(input)/__]: the SRP hash in use + + __C declaration:__ @hash_id@ + -} + -> Botan_rng_t + {- ^ + + [__@rng_obj@ /(input)/__]: a random number generator object + + __C declaration:__ @rng_obj@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @b_pub@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @b_pub_len@ + -> IO FC.CInt +botan_srp6_server_session_step1_wrapper = + hs_bindgen_eca3422d1b410999 + +{-| SRP-6 Server side step 1 + + [__@srp6@ /(input)/__]: SRP-6 server session object + + [__@verifier@ /(input)/__]: the verification value saved from client registration + + [__@verifier_len@ /(input)/__]: SRP-6 verifier value length + + [__@group_id@ /(input)/__]: the SRP group id + + [__@hash_id@ /(input)/__]: the SRP hash in use + + [__@rng_obj@ /(input)/__]: a random number generator object + + [__@B_pub@ /(input)/__]: out buffer to store the SRP-6 B value + + [__@B_pub_len@ /(input)/__]: SRP-6 B value length + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_srp6_server_session_step1@ + +__defined at:__ @botan\/ffi.h:2073:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_srp6_server_session_step1 :: + Botan_srp6_server_session_t + {- ^ + + [__@srp6@ /(input)/__]: SRP-6 server session object + + __C declaration:__ @srp6@ + -} + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@verifier@ /(input)/__]: the verification value saved from client registration + + __C declaration:__ @verifier@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@verifier_len@ /(input)/__]: SRP-6 verifier value length + + __C declaration:__ @verifier_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@group_id@ /(input)/__]: the SRP group id + + __C declaration:__ @group_id@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@hash_id@ /(input)/__]: the SRP hash in use + + __C declaration:__ @hash_id@ + -} + -> Botan_rng_t + {- ^ + + [__@rng_obj@ /(input)/__]: a random number generator object + + __C declaration:__ @rng_obj@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @b_pub@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @b_pub_len@ + -> IO FC.CInt +botan_srp6_server_session_step1 = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr8 -> + hs_bindgen_eca3422d1b410999 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x2 x3 x4 x5 x6 x7) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_srp6_server_session_step2@ +foreign import ccall unsafe "hs_bindgen_6d7c44e5669ac709" hs_bindgen_6d7c44e5669ac709 :: + Botan_srp6_server_session_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_srp6_server_session_step2' +-} +botan_srp6_server_session_step2_wrapper :: + Botan_srp6_server_session_t + {- ^ + + [__@srp6@ /(input)/__]: SRP-6 server session object + + __C declaration:__ @srp6@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @a@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @a_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@key@ /(input)/__]: out buffer to store the symmetric key value + + __C declaration:__ @key@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@key_len@ /(input)/__]: symmetric key length + + __C declaration:__ @key_len@ + -} + -> IO FC.CInt +botan_srp6_server_session_step2_wrapper = + hs_bindgen_6d7c44e5669ac709 + +{-| SRP-6 Server side step 2 + + [__@srp6@ /(input)/__]: SRP-6 server session object + + [__@A@ /(input)/__]: the client's value + + [__@A_len@ /(input)/__]: the client's value length + + [__@key@ /(input)/__]: out buffer to store the symmetric key value + + [__@key_len@ /(input)/__]: symmetric key length + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_srp6_server_session_step2@ + +__defined at:__ @botan\/ffi.h:2089:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_srp6_server_session_step2 :: + Botan_srp6_server_session_t + {- ^ + + [__@srp6@ /(input)/__]: SRP-6 server session object + + __C declaration:__ @srp6@ + -} + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @a@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @a_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@key@ /(input)/__]: out buffer to store the symmetric key value + + __C declaration:__ @key@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@key_len@ /(input)/__]: symmetric key length + + __C declaration:__ @key_len@ + -} + -> IO FC.CInt +botan_srp6_server_session_step2 = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr5 -> + hs_bindgen_6d7c44e5669ac709 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_srp6_generate_verifier@ +foreign import ccall unsafe "hs_bindgen_2925d593022349d9" hs_bindgen_2925d593022349d9 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_srp6_generate_verifier' +-} +botan_srp6_generate_verifier_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@identifier@ /(input)/__]: a username or other client identifier + + __C declaration:__ @identifier@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@password@ /(input)/__]: the secret used to authenticate user + + __C declaration:__ @password@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@salt@ /(input)/__]: a randomly chosen value, at least 128 bits long + + __C declaration:__ @salt@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@salt_len@ /(input)/__]: the length of salt + + __C declaration:__ @salt_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@group_id@ /(input)/__]: specifies the shared SRP group + + __C declaration:__ @group_id@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@hash_id@ /(input)/__]: specifies a secure hash function + + __C declaration:__ @hash_id@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@verifier@ /(input)/__]: out buffer to store the SRP-6 verifier value + + __C declaration:__ @verifier@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@verifier_len@ /(input)/__]: SRP-6 verifier value length + + __C declaration:__ @verifier_len@ + -} + -> IO FC.CInt +botan_srp6_generate_verifier_wrapper = + hs_bindgen_2925d593022349d9 + +{-| Generate a new SRP-6 verifier + + [__@identifier@ /(input)/__]: a username or other client identifier + + [__@password@ /(input)/__]: the secret used to authenticate user + + [__@salt@ /(input)/__]: a randomly chosen value, at least 128 bits long + + [__@salt_len@ /(input)/__]: the length of salt + + [__@group_id@ /(input)/__]: specifies the shared SRP group + + [__@hash_id@ /(input)/__]: specifies a secure hash function + + [__@verifier@ /(input)/__]: out buffer to store the SRP-6 verifier value + + [__@verifier_len@ /(input)/__]: SRP-6 verifier value length + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_srp6_generate_verifier@ + +__defined at:__ @botan\/ffi.h:2106:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_srp6_generate_verifier :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@identifier@ /(input)/__]: a username or other client identifier + + __C declaration:__ @identifier@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@password@ /(input)/__]: the secret used to authenticate user + + __C declaration:__ @password@ + -} + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@salt@ /(input)/__]: a randomly chosen value, at least 128 bits long + + __C declaration:__ @salt@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@salt_len@ /(input)/__]: the length of salt + + __C declaration:__ @salt_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@group_id@ /(input)/__]: specifies the shared SRP group + + __C declaration:__ @group_id@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@hash_id@ /(input)/__]: specifies a secure hash function + + __C declaration:__ @hash_id@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@verifier@ /(input)/__]: out buffer to store the SRP-6 verifier value + + __C declaration:__ @verifier@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@verifier_len@ /(input)/__]: SRP-6 verifier value length + + __C declaration:__ @verifier_len@ + -} + -> IO FC.CInt +botan_srp6_generate_verifier = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + HsBindgen.Runtime.IncompleteArray.withPtr x2 (\ptr8 -> + hs_bindgen_2925d593022349d9 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x3 x4 x5 x6 x7) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_srp6_client_agree@ +foreign import ccall unsafe "hs_bindgen_cc418ea8ca4aeee9" hs_bindgen_cc418ea8ca4aeee9 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Botan_rng_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_srp6_client_agree' +-} +botan_srp6_client_agree_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@username@ /(input)/__]: the username we are attempting login for + + __C declaration:__ @username@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@password@ /(input)/__]: the password we are attempting to use + + __C declaration:__ @password@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@group_id@ /(input)/__]: specifies the shared SRP group + + __C declaration:__ @group_id@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@hash_id@ /(input)/__]: specifies a secure hash function + + __C declaration:__ @hash_id@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@salt@ /(input)/__]: is the salt value sent by the server + + __C declaration:__ @salt@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@salt_len@ /(input)/__]: the length of salt + + __C declaration:__ @salt_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @b@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @b_len@ + -> Botan_rng_t + {- ^ + + [__@rng_obj@ /(input)/__]: is a random number generator object + + __C declaration:__ @rng_obj@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @a@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @a_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @k@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @k_len@ + -> IO FC.CInt +botan_srp6_client_agree_wrapper = + hs_bindgen_cc418ea8ca4aeee9 + +{-| SRP6a Client side + + [__@username@ /(input)/__]: the username we are attempting login for + + [__@password@ /(input)/__]: the password we are attempting to use + + [__@group_id@ /(input)/__]: specifies the shared SRP group + + [__@hash_id@ /(input)/__]: specifies a secure hash function + + [__@salt@ /(input)/__]: is the salt value sent by the server + + [__@salt_len@ /(input)/__]: the length of salt + + [__@B@ /(input)/__]: is the server's public value + + [__@B_len@ /(input)/__]: is the server's public value length + + [__@rng_obj@ /(input)/__]: is a random number generator object + + [__@A@ /(input)/__]: out buffer to store the SRP-6 A value + + [__@A_len@ /(input)/__]: SRP-6 A verifier value length + + [__@K@ /(input)/__]: out buffer to store the symmetric value + + [__@K_len@ /(input)/__]: symmetric key length + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_srp6_client_agree@ + +__defined at:__ @botan\/ffi.h:2129:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_srp6_client_agree :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@username@ /(input)/__]: the username we are attempting login for + + __C declaration:__ @username@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@password@ /(input)/__]: the password we are attempting to use + + __C declaration:__ @password@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@group_id@ /(input)/__]: specifies the shared SRP group + + __C declaration:__ @group_id@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@hash_id@ /(input)/__]: specifies a secure hash function + + __C declaration:__ @hash_id@ + -} + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@salt@ /(input)/__]: is the salt value sent by the server + + __C declaration:__ @salt@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@salt_len@ /(input)/__]: the length of salt + + __C declaration:__ @salt_len@ + -} + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @b@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @b_len@ + -> Botan_rng_t + {- ^ + + [__@rng_obj@ /(input)/__]: is a random number generator object + + __C declaration:__ @rng_obj@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @a@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @a_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @k@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @k_len@ + -> IO FC.CInt +botan_srp6_client_agree = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + \x8 -> + \x9 -> + \x10 -> + \x11 -> + \x12 -> + HsBindgen.Runtime.IncompleteArray.withPtr x6 (\ptr13 -> + HsBindgen.Runtime.IncompleteArray.withPtr x4 (\ptr14 -> + hs_bindgen_cc418ea8ca4aeee9 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr14) x5 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr13) x7 x8 x9 x10 x11 x12)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_srp6_group_size@ +foreign import ccall unsafe "hs_bindgen_d71edc913a88236e" hs_bindgen_d71edc913a88236e :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Return the size, in bytes, of the prime associated with group_id + +__C declaration:__ @botan_srp6_group_size@ + +__defined at:__ @botan\/ffi.h:2140:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_srp6_group_size :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @group_id@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @group_p_bytes@ + -> IO FC.CInt +botan_srp6_group_size = hs_bindgen_d71edc913a88236e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_zfec_encode@ +foreign import ccall unsafe "hs_bindgen_5f04a99f419f18cd" hs_bindgen_5f04a99f419f18cd :: + HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) + -> IO FC.CInt + +{-| Encode some bytes with certain ZFEC parameters. + + [__@K@ /(input)/__]: the number of shares needed for recovery + + [__@N@ /(input)/__]: the number of shares generated + + [__@input@ /(input)/__]: the data to FEC + + [__@size@ /(input)/__]: the length in bytes of input, which must be a multiple of K + + [__@outputs@ /(input)/__]: An out parameter pointing to a fully allocated array of size [N][size / K]. For all n in range, an encoded block will be written to the memory starting at outputs[n][0]. + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_zfec_encode@ + +__defined at:__ @botan\/ffi.h:2161:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_zfec_encode :: + HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @k@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @n@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@input@ /(input)/__]: the data to FEC + + __C declaration:__ @input@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@size@ /(input)/__]: the length in bytes of input, which must be a multiple of K + + __C declaration:__ @size@ + -} + -> Ptr.Ptr (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) + {- ^ + + [__@outputs@ /(input)/__]: An out parameter pointing to a fully allocated array of size [N][size / K]. For all n in range, an encoded block will be written to the memory starting at outputs[n][0]. + + __C declaration:__ @outputs@ + -} + -> IO FC.CInt +botan_zfec_encode = hs_bindgen_5f04a99f419f18cd + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_0_0_Unsafe_botan_zfec_decode@ +foreign import ccall unsafe "hs_bindgen_01b90dd6ba07d1f7" hs_bindgen_01b90dd6ba07d1f7 :: + HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) + -> IO FC.CInt + +{-| Decode some previously encoded shares using certain ZFEC parameters. + + [__@K@ /(input)/__]: the number of shares needed for recovery + + [__@N@ /(input)/__]: the total number of shares + + [__@indexes@ /(input)/__]: The index into the encoder's outputs for the corresponding element of the inputs array. Must be of length K. + + [__@inputs@ /(input)/__]: K previously encoded shares to decode + + [__@shareSize@ /(input)/__]: the length in bytes of each input + + [__@outputs@ /(input)/__]: An out parameter pointing to a fully allocated array of size [K][shareSize]. For all k in range, a decoded block will written to the memory starting at outputs[k][0]. + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_zfec_decode@ + +__defined at:__ @botan\/ffi.h:2185:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_zfec_decode :: + HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @k@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @n@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@indexes@ /(input)/__]: The index into the encoder's outputs for the corresponding element of the inputs array. Must be of length K. + + __C declaration:__ @indexes@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) + {- ^ + + [__@inputs@ /(input)/__]: K previously encoded shares to decode + + __C declaration:__ @inputs@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@shareSize@ /(input)/__]: the length in bytes of each input + + __C declaration:__ @shareSize@ + -} + -> Ptr.Ptr (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) + {- ^ + + [__@outputs@ /(input)/__]: An out parameter pointing to a fully allocated array of size [K][shareSize]. For all k in range, a decoded block will written to the memory starting at outputs[k][0]. + + __C declaration:__ @outputs@ + -} + -> IO FC.CInt +botan_zfec_decode = hs_bindgen_01b90dd6ba07d1f7 diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_10_0.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_10_0.hs new file mode 100644 index 0000000..f7718b5 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_10_0.hs @@ -0,0 +1,1717 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE DerivingStrategies #-} +{-# LANGUAGE DerivingVia #-} +{-# LANGUAGE EmptyDataDecls #-} +{-# LANGUAGE ExplicitForAll #-} +{-# LANGUAGE FlexibleContexts #-} +{-# LANGUAGE GeneralizedNewtypeDeriving #-} +{-# LANGUAGE MagicHash #-} +{-# LANGUAGE MultiParamTypeClasses #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE PatternSynonyms #-} +{-# LANGUAGE StandaloneDeriving #-} +{-# LANGUAGE TypeApplications #-} +{-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE TypeOperators #-} +{-# LANGUAGE UnboxedTuples #-} +{-# LANGUAGE UndecidableInstances #-} + +module Botan.Bindings.Generated.Botan_3_10_0 where + +import qualified C.Expr.HostPlatform as C +import qualified Data.List.NonEmpty +import qualified Data.Primitive.Types +import qualified Data.Proxy +import Data.Void (Void) +import qualified Foreign as F +import qualified Foreign.C as FC +import qualified GHC.Ptr as Ptr +import qualified GHC.Records +import qualified HsBindgen.Runtime.CEnum +import qualified HsBindgen.Runtime.ConstPtr +import qualified HsBindgen.Runtime.FunPtr +import qualified HsBindgen.Runtime.HasBaseForeignType +import qualified HsBindgen.Runtime.HasCField +import qualified HsBindgen.Runtime.Prelude +import HsBindgen.Runtime.TypeEquality (TyEq) +import Prelude (Eq, IO, Int, Ord, Read, Show, pure, showsPrec, (<*>)) +import qualified Text.Read + +{-| __C declaration:__ @BOTAN_FFI_API_VERSION@ + + __defined at:__ @botan\/ffi.h:72:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_FFI_API_VERSION :: FC.CInt +bOTAN_FFI_API_VERSION = (20250829 :: FC.CInt) + +{-| Error codes + + If you add a new value here be sure to also add it in botan_error_description + +__C declaration:__ @enum BOTAN_FFI_ERROR@ + +__defined at:__ @botan\/ffi.h:114:6@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype BOTAN_FFI_ERROR = BOTAN_FFI_ERROR + { un_BOTAN_FFI_ERROR :: FC.CInt + } + deriving stock (Eq, Ord) + deriving newtype (HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance F.Storable BOTAN_FFI_ERROR where + + sizeOf = \_ -> (4 :: Int) + + alignment = \_ -> (4 :: Int) + + peek = + \ptr0 -> + pure BOTAN_FFI_ERROR + <*> F.peekByteOff ptr0 (0 :: Int) + + poke = + \ptr0 -> + \s1 -> + case s1 of + BOTAN_FFI_ERROR un_BOTAN_FFI_ERROR2 -> + F.pokeByteOff ptr0 (0 :: Int) un_BOTAN_FFI_ERROR2 + +deriving via FC.CInt instance Data.Primitive.Types.Prim BOTAN_FFI_ERROR + +instance HsBindgen.Runtime.CEnum.CEnum BOTAN_FFI_ERROR where + + type CEnumZ BOTAN_FFI_ERROR = FC.CInt + + toCEnum = BOTAN_FFI_ERROR + + fromCEnum = un_BOTAN_FFI_ERROR + + declaredValues = + \_ -> + HsBindgen.Runtime.CEnum.declaredValuesFromList [ (-100, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_UNKNOWN_ERROR") + , (-78, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_TPM_ERROR") + , (-77, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_ROUGHTIME_ERROR") + , (-76, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_HTTP_ERROR") + , (-75, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_TLS_ERROR") + , (-50, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_INVALID_OBJECT") + , (-40, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_NOT_IMPLEMENTED") + , (-35, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_INVALID_OBJECT_STATE") + , (-34, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_INVALID_KEY_LENGTH") + , (-33, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_KEY_NOT_SET") + , (-32, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_BAD_PARAMETER") + , (-31, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_NULL_POINTER") + , (-30, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_BAD_FLAG") + , (-23, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_INTERNAL_ERROR") + , (-22, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_SYSTEM_ERROR") + , (-21, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_OUT_OF_MEMORY") + , (-20, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_EXCEPTION_THROWN") + , (-11, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_STRING_CONVERSION_ERROR") + , (-10, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_INSUFFICIENT_BUFFER_SPACE") + , (-3, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_NO_VALUE") + , (-2, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_BAD_MAC") + , (-1, Data.List.NonEmpty.singleton "BOTAN_FFI_ERROR_INVALID_INPUT") + , (0, Data.List.NonEmpty.singleton "BOTAN_FFI_SUCCESS") + , (1, Data.List.NonEmpty.singleton "BOTAN_FFI_INVALID_VERIFIER") + ] + + showsUndeclared = + HsBindgen.Runtime.CEnum.showsWrappedUndeclared "BOTAN_FFI_ERROR" + + readPrecUndeclared = + HsBindgen.Runtime.CEnum.readPrecWrappedUndeclared "BOTAN_FFI_ERROR" + +instance Show BOTAN_FFI_ERROR where + + showsPrec = HsBindgen.Runtime.CEnum.showsCEnum + +instance Read BOTAN_FFI_ERROR where + + readPrec = HsBindgen.Runtime.CEnum.readPrecCEnum + + readList = Text.Read.readListDefault + + readListPrec = Text.Read.readListPrecDefault + +{-| __C declaration:__ @BOTAN_FFI_SUCCESS@ + + __defined at:__ @botan\/ffi.h:115:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_SUCCESS :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_SUCCESS = BOTAN_FFI_ERROR 0 + +{-| __C declaration:__ @BOTAN_FFI_INVALID_VERIFIER@ + + __defined at:__ @botan\/ffi.h:117:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_INVALID_VERIFIER :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_INVALID_VERIFIER = BOTAN_FFI_ERROR 1 + +{-| __C declaration:__ @BOTAN_FFI_ERROR_INVALID_INPUT@ + + __defined at:__ @botan\/ffi.h:119:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_INVALID_INPUT :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_INVALID_INPUT = BOTAN_FFI_ERROR (-1) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_BAD_MAC@ + + __defined at:__ @botan\/ffi.h:120:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_BAD_MAC :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_BAD_MAC = BOTAN_FFI_ERROR (-2) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_NO_VALUE@ + + __defined at:__ @botan\/ffi.h:121:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_NO_VALUE :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_NO_VALUE = BOTAN_FFI_ERROR (-3) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_INSUFFICIENT_BUFFER_SPACE@ + + __defined at:__ @botan\/ffi.h:123:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_INSUFFICIENT_BUFFER_SPACE :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_INSUFFICIENT_BUFFER_SPACE = BOTAN_FFI_ERROR (-10) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_STRING_CONVERSION_ERROR@ + + __defined at:__ @botan\/ffi.h:124:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_STRING_CONVERSION_ERROR :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_STRING_CONVERSION_ERROR = BOTAN_FFI_ERROR (-11) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_EXCEPTION_THROWN@ + + __defined at:__ @botan\/ffi.h:126:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_EXCEPTION_THROWN :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_EXCEPTION_THROWN = BOTAN_FFI_ERROR (-20) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_OUT_OF_MEMORY@ + + __defined at:__ @botan\/ffi.h:127:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_OUT_OF_MEMORY :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_OUT_OF_MEMORY = BOTAN_FFI_ERROR (-21) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_SYSTEM_ERROR@ + + __defined at:__ @botan\/ffi.h:128:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_SYSTEM_ERROR :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_SYSTEM_ERROR = BOTAN_FFI_ERROR (-22) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_INTERNAL_ERROR@ + + __defined at:__ @botan\/ffi.h:129:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_INTERNAL_ERROR :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_INTERNAL_ERROR = BOTAN_FFI_ERROR (-23) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_BAD_FLAG@ + + __defined at:__ @botan\/ffi.h:131:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_BAD_FLAG :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_BAD_FLAG = BOTAN_FFI_ERROR (-30) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_NULL_POINTER@ + + __defined at:__ @botan\/ffi.h:132:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_NULL_POINTER :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_NULL_POINTER = BOTAN_FFI_ERROR (-31) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_BAD_PARAMETER@ + + __defined at:__ @botan\/ffi.h:133:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_BAD_PARAMETER :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_BAD_PARAMETER = BOTAN_FFI_ERROR (-32) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_KEY_NOT_SET@ + + __defined at:__ @botan\/ffi.h:134:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_KEY_NOT_SET :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_KEY_NOT_SET = BOTAN_FFI_ERROR (-33) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_INVALID_KEY_LENGTH@ + + __defined at:__ @botan\/ffi.h:135:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_INVALID_KEY_LENGTH :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_INVALID_KEY_LENGTH = BOTAN_FFI_ERROR (-34) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_INVALID_OBJECT_STATE@ + + __defined at:__ @botan\/ffi.h:136:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_INVALID_OBJECT_STATE :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_INVALID_OBJECT_STATE = BOTAN_FFI_ERROR (-35) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_NOT_IMPLEMENTED@ + + __defined at:__ @botan\/ffi.h:138:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_NOT_IMPLEMENTED :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_NOT_IMPLEMENTED = BOTAN_FFI_ERROR (-40) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_INVALID_OBJECT@ + + __defined at:__ @botan\/ffi.h:139:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_INVALID_OBJECT :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_INVALID_OBJECT = BOTAN_FFI_ERROR (-50) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_TLS_ERROR@ + + __defined at:__ @botan\/ffi.h:141:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_TLS_ERROR :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_TLS_ERROR = BOTAN_FFI_ERROR (-75) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_HTTP_ERROR@ + + __defined at:__ @botan\/ffi.h:142:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_HTTP_ERROR :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_HTTP_ERROR = BOTAN_FFI_ERROR (-76) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_ROUGHTIME_ERROR@ + + __defined at:__ @botan\/ffi.h:143:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_ROUGHTIME_ERROR :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_ROUGHTIME_ERROR = BOTAN_FFI_ERROR (-77) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_TPM_ERROR@ + + __defined at:__ @botan\/ffi.h:144:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_TPM_ERROR :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_TPM_ERROR = BOTAN_FFI_ERROR (-78) + +{-| __C declaration:__ @BOTAN_FFI_ERROR_UNKNOWN_ERROR@ + + __defined at:__ @botan\/ffi.h:146:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern BOTAN_FFI_ERROR_UNKNOWN_ERROR :: BOTAN_FFI_ERROR +pattern BOTAN_FFI_ERROR_UNKNOWN_ERROR = BOTAN_FFI_ERROR (-100) + +{-| The application provided context for a view function + +__C declaration:__ @botan_view_ctx@ + +__defined at:__ @botan\/ffi.h:152:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_ctx = Botan_view_ctx + { un_Botan_view_ctx :: Ptr.Ptr Void + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_ctx) "un_Botan_view_ctx") + ) => GHC.Records.HasField "un_Botan_view_ctx" (Ptr.Ptr Botan_view_ctx) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_ctx") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_ctx "un_Botan_view_ctx" where + + type CFieldType Botan_view_ctx "un_Botan_view_ctx" = + Ptr.Ptr Void + + offset# = \_ -> \_ -> 0 + +{-| Auxiliary type used by 'Botan_view_bin_fn' + +__C declaration:__ @botan_view_bin_fn@ + +__defined at:__ @botan\/ffi.h:161:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_bin_fn_Aux = Botan_view_bin_fn_Aux + { un_Botan_view_bin_fn_Aux :: Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt + } + deriving newtype (HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +-- __unique:__ @toBotan_view_bin_fn_Aux@ +foreign import ccall safe "wrapper" hs_bindgen_27b139e7e646bbb3 :: + Botan_view_bin_fn_Aux + -> IO (Ptr.FunPtr Botan_view_bin_fn_Aux) + +-- __unique:__ @fromBotan_view_bin_fn_Aux@ +foreign import ccall safe "dynamic" hs_bindgen_4fe374d6367faa00 :: + Ptr.FunPtr Botan_view_bin_fn_Aux + -> Botan_view_bin_fn_Aux + +instance HsBindgen.Runtime.FunPtr.ToFunPtr Botan_view_bin_fn_Aux where + + toFunPtr = hs_bindgen_27b139e7e646bbb3 + +instance HsBindgen.Runtime.FunPtr.FromFunPtr Botan_view_bin_fn_Aux where + + fromFunPtr = hs_bindgen_4fe374d6367faa00 + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_bin_fn_Aux) "un_Botan_view_bin_fn_Aux") + ) => GHC.Records.HasField "un_Botan_view_bin_fn_Aux" (Ptr.Ptr Botan_view_bin_fn_Aux) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_bin_fn_Aux") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_bin_fn_Aux "un_Botan_view_bin_fn_Aux" where + + type CFieldType Botan_view_bin_fn_Aux "un_Botan_view_bin_fn_Aux" = + Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt + + offset# = \_ -> \_ -> 0 + +{-| Viewer function for binary data + + [__@view_ctx@ /(input)/__]: some application context + + [__@data@ /(input)/__]: the binary data + + [__@len@ /(input)/__]: the length of data in bytes + +__C declaration:__ @botan_view_bin_fn@ + +__defined at:__ @botan\/ffi.h:161:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_bin_fn = Botan_view_bin_fn + { un_Botan_view_bin_fn :: Ptr.FunPtr Botan_view_bin_fn_Aux + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_bin_fn) "un_Botan_view_bin_fn") + ) => GHC.Records.HasField "un_Botan_view_bin_fn" (Ptr.Ptr Botan_view_bin_fn) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_bin_fn") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_bin_fn "un_Botan_view_bin_fn" where + + type CFieldType Botan_view_bin_fn "un_Botan_view_bin_fn" = + Ptr.FunPtr Botan_view_bin_fn_Aux + + offset# = \_ -> \_ -> 0 + +{-| Auxiliary type used by 'Botan_view_str_fn' + +__C declaration:__ @botan_view_str_fn@ + +__defined at:__ @botan\/ffi.h:170:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_str_fn_Aux = Botan_view_str_fn_Aux + { un_Botan_view_str_fn_Aux :: Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt + } + deriving newtype (HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +-- __unique:__ @toBotan_view_str_fn_Aux@ +foreign import ccall safe "wrapper" hs_bindgen_917299e3c75a35ba :: + Botan_view_str_fn_Aux + -> IO (Ptr.FunPtr Botan_view_str_fn_Aux) + +-- __unique:__ @fromBotan_view_str_fn_Aux@ +foreign import ccall safe "dynamic" hs_bindgen_396f3823702be56f :: + Ptr.FunPtr Botan_view_str_fn_Aux + -> Botan_view_str_fn_Aux + +instance HsBindgen.Runtime.FunPtr.ToFunPtr Botan_view_str_fn_Aux where + + toFunPtr = hs_bindgen_917299e3c75a35ba + +instance HsBindgen.Runtime.FunPtr.FromFunPtr Botan_view_str_fn_Aux where + + fromFunPtr = hs_bindgen_396f3823702be56f + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_str_fn_Aux) "un_Botan_view_str_fn_Aux") + ) => GHC.Records.HasField "un_Botan_view_str_fn_Aux" (Ptr.Ptr Botan_view_str_fn_Aux) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_str_fn_Aux") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_str_fn_Aux "un_Botan_view_str_fn_Aux" where + + type CFieldType Botan_view_str_fn_Aux "un_Botan_view_str_fn_Aux" = + Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt + + offset# = \_ -> \_ -> 0 + +{-| Viewer function for string data + + [__@view_ctx@ /(input)/__]: some application context + + [__@str@ /(input)/__]: the null terminated string + + [__@len@ /(input)/__]: the length of string *including* the null terminator + +__C declaration:__ @botan_view_str_fn@ + +__defined at:__ @botan\/ffi.h:170:15@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_view_str_fn = Botan_view_str_fn + { un_Botan_view_str_fn :: Ptr.FunPtr Botan_view_str_fn_Aux + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_view_str_fn) "un_Botan_view_str_fn") + ) => GHC.Records.HasField "un_Botan_view_str_fn" (Ptr.Ptr Botan_view_str_fn) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_view_str_fn") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_view_str_fn "un_Botan_view_str_fn" where + + type CFieldType Botan_view_str_fn "un_Botan_view_str_fn" = + Ptr.FunPtr Botan_view_str_fn_Aux + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @BOTAN_FFI_HEX_LOWER_CASE@ + + __defined at:__ @botan\/ffi.h:247:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_FFI_HEX_LOWER_CASE :: FC.CInt +bOTAN_FFI_HEX_LOWER_CASE = (1 :: FC.CInt) + +{-| __C declaration:__ @struct botan_rng_struct@ + + __defined at:__ @botan\/ffi.h:289:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_rng_struct + +{-| RNG type + +__C declaration:__ @botan_rng_t@ + +__defined at:__ @botan\/ffi.h:289:34@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_rng_t = Botan_rng_t + { un_Botan_rng_t :: Ptr.Ptr Botan_rng_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_rng_t) "un_Botan_rng_t") + ) => GHC.Records.HasField "un_Botan_rng_t" (Ptr.Ptr Botan_rng_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_rng_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_rng_t "un_Botan_rng_t" where + + type CFieldType Botan_rng_t "un_Botan_rng_t" = + Ptr.Ptr Botan_rng_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct botan_hash_struct@ + + __defined at:__ @botan\/ffi.h:381:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_hash_struct + +{-| __C declaration:__ @botan_hash_t@ + + __defined at:__ @botan\/ffi.h:381:35@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_hash_t = Botan_hash_t + { un_Botan_hash_t :: Ptr.Ptr Botan_hash_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_hash_t) "un_Botan_hash_t") + ) => GHC.Records.HasField "un_Botan_hash_t" (Ptr.Ptr Botan_hash_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_hash_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_hash_t "un_Botan_hash_t" where + + type CFieldType Botan_hash_t "un_Botan_hash_t" = + Ptr.Ptr Botan_hash_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct botan_mac_struct@ + + __defined at:__ @botan\/ffi.h:461:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_mac_struct + +{-| __C declaration:__ @botan_mac_t@ + + __defined at:__ @botan\/ffi.h:461:34@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_mac_t = Botan_mac_t + { un_Botan_mac_t :: Ptr.Ptr Botan_mac_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_mac_t) "un_Botan_mac_t") + ) => GHC.Records.HasField "un_Botan_mac_t" (Ptr.Ptr Botan_mac_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_mac_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_mac_t "un_Botan_mac_t" where + + type CFieldType Botan_mac_t "un_Botan_mac_t" = + Ptr.Ptr Botan_mac_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct botan_cipher_struct@ + + __defined at:__ @botan\/ffi.h:557:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_cipher_struct + +{-| __C declaration:__ @botan_cipher_t@ + + __defined at:__ @botan\/ffi.h:557:37@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_cipher_t = Botan_cipher_t + { un_Botan_cipher_t :: Ptr.Ptr Botan_cipher_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_cipher_t) "un_Botan_cipher_t") + ) => GHC.Records.HasField "un_Botan_cipher_t" (Ptr.Ptr Botan_cipher_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_cipher_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_cipher_t "un_Botan_cipher_t" where + + type CFieldType Botan_cipher_t "un_Botan_cipher_t" = + Ptr.Ptr Botan_cipher_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @BOTAN_CIPHER_INIT_FLAG_MASK_DIRECTION@ + + __defined at:__ @botan\/ffi.h:559:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_CIPHER_INIT_FLAG_MASK_DIRECTION :: FC.CInt +bOTAN_CIPHER_INIT_FLAG_MASK_DIRECTION = + (1 :: FC.CInt) + +{-| __C declaration:__ @BOTAN_CIPHER_INIT_FLAG_ENCRYPT@ + + __defined at:__ @botan\/ffi.h:560:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_CIPHER_INIT_FLAG_ENCRYPT :: FC.CInt +bOTAN_CIPHER_INIT_FLAG_ENCRYPT = (0 :: FC.CInt) + +{-| __C declaration:__ @BOTAN_CIPHER_INIT_FLAG_DECRYPT@ + + __defined at:__ @botan\/ffi.h:561:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_CIPHER_INIT_FLAG_DECRYPT :: FC.CInt +bOTAN_CIPHER_INIT_FLAG_DECRYPT = (1 :: FC.CInt) + +{-| __C declaration:__ @BOTAN_CIPHER_UPDATE_FLAG_FINAL@ + + __defined at:__ @botan\/ffi.h:654:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_CIPHER_UPDATE_FLAG_FINAL :: FC.CUInt +bOTAN_CIPHER_UPDATE_FLAG_FINAL = + (C.<<) (1 :: FC.CUInt) (0 :: FC.CInt) + +{-| __C declaration:__ @struct botan_block_cipher_struct@ + + __defined at:__ @botan\/ffi.h:855:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_block_cipher_struct + +{-| __C declaration:__ @botan_block_cipher_t@ + + __defined at:__ @botan\/ffi.h:855:43@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_block_cipher_t = Botan_block_cipher_t + { un_Botan_block_cipher_t :: Ptr.Ptr Botan_block_cipher_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_block_cipher_t) "un_Botan_block_cipher_t") + ) => GHC.Records.HasField "un_Botan_block_cipher_t" (Ptr.Ptr Botan_block_cipher_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_block_cipher_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_block_cipher_t "un_Botan_block_cipher_t" where + + type CFieldType Botan_block_cipher_t "un_Botan_block_cipher_t" = + Ptr.Ptr Botan_block_cipher_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct botan_mp_struct@ + + __defined at:__ @botan\/ffi.h:921:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_mp_struct + +{-| __C declaration:__ @botan_mp_t@ + + __defined at:__ @botan\/ffi.h:921:33@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_mp_t = Botan_mp_t + { un_Botan_mp_t :: Ptr.Ptr Botan_mp_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_mp_t) "un_Botan_mp_t") + ) => GHC.Records.HasField "un_Botan_mp_t" (Ptr.Ptr Botan_mp_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_mp_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_mp_t "un_Botan_mp_t" where + + type CFieldType Botan_mp_t "un_Botan_mp_t" = + Ptr.Ptr Botan_mp_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct botan_asn1_oid_struct@ + + __defined at:__ @botan\/ffi.h:1142:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_asn1_oid_struct + +{-| __C declaration:__ @botan_asn1_oid_t@ + + __defined at:__ @botan\/ffi.h:1142:39@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_asn1_oid_t = Botan_asn1_oid_t + { un_Botan_asn1_oid_t :: Ptr.Ptr Botan_asn1_oid_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_asn1_oid_t) "un_Botan_asn1_oid_t") + ) => GHC.Records.HasField "un_Botan_asn1_oid_t" (Ptr.Ptr Botan_asn1_oid_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_asn1_oid_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_asn1_oid_t "un_Botan_asn1_oid_t" where + + type CFieldType Botan_asn1_oid_t "un_Botan_asn1_oid_t" = + Ptr.Ptr Botan_asn1_oid_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct botan_ec_group_struct@ + + __defined at:__ @botan\/ffi.h:1191:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_ec_group_struct + +{-| __C declaration:__ @botan_ec_group_t@ + + __defined at:__ @botan\/ffi.h:1191:39@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_ec_group_t = Botan_ec_group_t + { un_Botan_ec_group_t :: Ptr.Ptr Botan_ec_group_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_ec_group_t) "un_Botan_ec_group_t") + ) => GHC.Records.HasField "un_Botan_ec_group_t" (Ptr.Ptr Botan_ec_group_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_ec_group_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_ec_group_t "un_Botan_ec_group_t" where + + type CFieldType Botan_ec_group_t "un_Botan_ec_group_t" = + Ptr.Ptr Botan_ec_group_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct botan_privkey_struct@ + + __defined at:__ @botan\/ffi.h:1325:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_privkey_struct + +{-| __C declaration:__ @botan_privkey_t@ + + __defined at:__ @botan\/ffi.h:1325:38@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_privkey_t = Botan_privkey_t + { un_Botan_privkey_t :: Ptr.Ptr Botan_privkey_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_privkey_t) "un_Botan_privkey_t") + ) => GHC.Records.HasField "un_Botan_privkey_t" (Ptr.Ptr Botan_privkey_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_privkey_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_privkey_t "un_Botan_privkey_t" where + + type CFieldType Botan_privkey_t "un_Botan_privkey_t" = + Ptr.Ptr Botan_privkey_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @BOTAN_CHECK_KEY_EXPENSIVE_TESTS@ + + __defined at:__ @botan\/ffi.h:1348:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_CHECK_KEY_EXPENSIVE_TESTS :: FC.CInt +bOTAN_CHECK_KEY_EXPENSIVE_TESTS = (1 :: FC.CInt) + +{-| __C declaration:__ @BOTAN_PRIVKEY_EXPORT_FLAG_DER@ + + __defined at:__ @botan\/ffi.h:1418:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_PRIVKEY_EXPORT_FLAG_DER :: FC.CInt +bOTAN_PRIVKEY_EXPORT_FLAG_DER = (0 :: FC.CInt) + +{-| __C declaration:__ @BOTAN_PRIVKEY_EXPORT_FLAG_PEM@ + + __defined at:__ @botan\/ffi.h:1419:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_PRIVKEY_EXPORT_FLAG_PEM :: FC.CInt +bOTAN_PRIVKEY_EXPORT_FLAG_PEM = (1 :: FC.CInt) + +{-| __C declaration:__ @BOTAN_PRIVKEY_EXPORT_FLAG_RAW@ + + __defined at:__ @botan\/ffi.h:1420:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_PRIVKEY_EXPORT_FLAG_RAW :: FC.CInt +bOTAN_PRIVKEY_EXPORT_FLAG_RAW = (2 :: FC.CInt) + +{-| __C declaration:__ @struct botan_pubkey_struct@ + + __defined at:__ @botan\/ffi.h:1558:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pubkey_struct + +{-| __C declaration:__ @botan_pubkey_t@ + + __defined at:__ @botan\/ffi.h:1558:37@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_pubkey_t = Botan_pubkey_t + { un_Botan_pubkey_t :: Ptr.Ptr Botan_pubkey_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_pubkey_t) "un_Botan_pubkey_t") + ) => GHC.Records.HasField "un_Botan_pubkey_t" (Ptr.Ptr Botan_pubkey_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_pubkey_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_pubkey_t "un_Botan_pubkey_t" where + + type CFieldType Botan_pubkey_t "un_Botan_pubkey_t" = + Ptr.Ptr Botan_pubkey_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct botan_pk_op_encrypt_struct@ + + __defined at:__ @botan\/ffi.h:1928:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_encrypt_struct + +{-| __C declaration:__ @botan_pk_op_encrypt_t@ + + __defined at:__ @botan\/ffi.h:1928:44@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_pk_op_encrypt_t = Botan_pk_op_encrypt_t + { un_Botan_pk_op_encrypt_t :: Ptr.Ptr Botan_pk_op_encrypt_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_pk_op_encrypt_t) "un_Botan_pk_op_encrypt_t") + ) => GHC.Records.HasField "un_Botan_pk_op_encrypt_t" (Ptr.Ptr Botan_pk_op_encrypt_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_pk_op_encrypt_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_pk_op_encrypt_t "un_Botan_pk_op_encrypt_t" where + + type CFieldType Botan_pk_op_encrypt_t "un_Botan_pk_op_encrypt_t" = + Ptr.Ptr Botan_pk_op_encrypt_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct botan_pk_op_decrypt_struct@ + + __defined at:__ @botan\/ffi.h:1952:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_decrypt_struct + +{-| __C declaration:__ @botan_pk_op_decrypt_t@ + + __defined at:__ @botan\/ffi.h:1952:44@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_pk_op_decrypt_t = Botan_pk_op_decrypt_t + { un_Botan_pk_op_decrypt_t :: Ptr.Ptr Botan_pk_op_decrypt_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_pk_op_decrypt_t) "un_Botan_pk_op_decrypt_t") + ) => GHC.Records.HasField "un_Botan_pk_op_decrypt_t" (Ptr.Ptr Botan_pk_op_decrypt_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_pk_op_decrypt_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_pk_op_decrypt_t "un_Botan_pk_op_decrypt_t" where + + type CFieldType Botan_pk_op_decrypt_t "un_Botan_pk_op_decrypt_t" = + Ptr.Ptr Botan_pk_op_decrypt_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @BOTAN_PUBKEY_DER_FORMAT_SIGNATURE@ + + __defined at:__ @botan\/ffi.h:1973:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_PUBKEY_DER_FORMAT_SIGNATURE :: FC.CInt +bOTAN_PUBKEY_DER_FORMAT_SIGNATURE = (1 :: FC.CInt) + +{-| __C declaration:__ @struct botan_pk_op_sign_struct@ + + __defined at:__ @botan\/ffi.h:1975:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_sign_struct + +{-| __C declaration:__ @botan_pk_op_sign_t@ + + __defined at:__ @botan\/ffi.h:1975:41@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_pk_op_sign_t = Botan_pk_op_sign_t + { un_Botan_pk_op_sign_t :: Ptr.Ptr Botan_pk_op_sign_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_pk_op_sign_t) "un_Botan_pk_op_sign_t") + ) => GHC.Records.HasField "un_Botan_pk_op_sign_t" (Ptr.Ptr Botan_pk_op_sign_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_pk_op_sign_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_pk_op_sign_t "un_Botan_pk_op_sign_t" where + + type CFieldType Botan_pk_op_sign_t "un_Botan_pk_op_sign_t" = + Ptr.Ptr Botan_pk_op_sign_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct botan_pk_op_verify_struct@ + + __defined at:__ @botan\/ffi.h:1995:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_verify_struct + +{-| __C declaration:__ @botan_pk_op_verify_t@ + + __defined at:__ @botan\/ffi.h:1995:43@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_pk_op_verify_t = Botan_pk_op_verify_t + { un_Botan_pk_op_verify_t :: Ptr.Ptr Botan_pk_op_verify_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_pk_op_verify_t) "un_Botan_pk_op_verify_t") + ) => GHC.Records.HasField "un_Botan_pk_op_verify_t" (Ptr.Ptr Botan_pk_op_verify_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_pk_op_verify_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_pk_op_verify_t "un_Botan_pk_op_verify_t" where + + type CFieldType Botan_pk_op_verify_t "un_Botan_pk_op_verify_t" = + Ptr.Ptr Botan_pk_op_verify_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct botan_pk_op_ka_struct@ + + __defined at:__ @botan\/ffi.h:2014:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_ka_struct + +{-| __C declaration:__ @botan_pk_op_ka_t@ + + __defined at:__ @botan\/ffi.h:2014:39@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_pk_op_ka_t = Botan_pk_op_ka_t + { un_Botan_pk_op_ka_t :: Ptr.Ptr Botan_pk_op_ka_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_pk_op_ka_t) "un_Botan_pk_op_ka_t") + ) => GHC.Records.HasField "un_Botan_pk_op_ka_t" (Ptr.Ptr Botan_pk_op_ka_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_pk_op_ka_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_pk_op_ka_t "un_Botan_pk_op_ka_t" where + + type CFieldType Botan_pk_op_ka_t "un_Botan_pk_op_ka_t" = + Ptr.Ptr Botan_pk_op_ka_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct botan_pk_op_kem_encrypt_struct@ + + __defined at:__ @botan\/ffi.h:2043:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_kem_encrypt_struct + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_t@ + + __defined at:__ @botan\/ffi.h:2043:48@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_pk_op_kem_encrypt_t = Botan_pk_op_kem_encrypt_t + { un_Botan_pk_op_kem_encrypt_t :: Ptr.Ptr Botan_pk_op_kem_encrypt_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_pk_op_kem_encrypt_t) "un_Botan_pk_op_kem_encrypt_t") + ) => GHC.Records.HasField "un_Botan_pk_op_kem_encrypt_t" (Ptr.Ptr Botan_pk_op_kem_encrypt_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_pk_op_kem_encrypt_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_pk_op_kem_encrypt_t "un_Botan_pk_op_kem_encrypt_t" where + + type CFieldType Botan_pk_op_kem_encrypt_t "un_Botan_pk_op_kem_encrypt_t" = + Ptr.Ptr Botan_pk_op_kem_encrypt_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct botan_pk_op_kem_decrypt_struct@ + + __defined at:__ @botan\/ffi.h:2073:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_pk_op_kem_decrypt_struct + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_t@ + + __defined at:__ @botan\/ffi.h:2073:48@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_pk_op_kem_decrypt_t = Botan_pk_op_kem_decrypt_t + { un_Botan_pk_op_kem_decrypt_t :: Ptr.Ptr Botan_pk_op_kem_decrypt_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_pk_op_kem_decrypt_t) "un_Botan_pk_op_kem_decrypt_t") + ) => GHC.Records.HasField "un_Botan_pk_op_kem_decrypt_t" (Ptr.Ptr Botan_pk_op_kem_decrypt_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_pk_op_kem_decrypt_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_pk_op_kem_decrypt_t "un_Botan_pk_op_kem_decrypt_t" where + + type CFieldType Botan_pk_op_kem_decrypt_t "un_Botan_pk_op_kem_decrypt_t" = + Ptr.Ptr Botan_pk_op_kem_decrypt_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct botan_x509_cert_struct@ + + __defined at:__ @botan\/ffi.h:2137:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_x509_cert_struct + +{-| __C declaration:__ @botan_x509_cert_t@ + + __defined at:__ @botan\/ffi.h:2137:40@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_x509_cert_t = Botan_x509_cert_t + { un_Botan_x509_cert_t :: Ptr.Ptr Botan_x509_cert_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_x509_cert_t) "un_Botan_x509_cert_t") + ) => GHC.Records.HasField "un_Botan_x509_cert_t" (Ptr.Ptr Botan_x509_cert_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_x509_cert_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_x509_cert_t "un_Botan_x509_cert_t" where + + type CFieldType Botan_x509_cert_t "un_Botan_x509_cert_t" = + Ptr.Ptr Botan_x509_cert_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @enum botan_x509_cert_key_constraints@ + + __defined at:__ @botan\/ffi.h:2187:6@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_x509_cert_key_constraints = Botan_x509_cert_key_constraints + { un_Botan_x509_cert_key_constraints :: FC.CUInt + } + deriving stock (Eq, Ord) + deriving newtype (HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance F.Storable Botan_x509_cert_key_constraints where + + sizeOf = \_ -> (4 :: Int) + + alignment = \_ -> (4 :: Int) + + peek = + \ptr0 -> + pure Botan_x509_cert_key_constraints + <*> F.peekByteOff ptr0 (0 :: Int) + + poke = + \ptr0 -> + \s1 -> + case s1 of + Botan_x509_cert_key_constraints un_Botan_x509_cert_key_constraints2 -> + F.pokeByteOff ptr0 (0 :: Int) un_Botan_x509_cert_key_constraints2 + +deriving via FC.CUInt instance Data.Primitive.Types.Prim Botan_x509_cert_key_constraints + +instance HsBindgen.Runtime.CEnum.CEnum Botan_x509_cert_key_constraints where + + type CEnumZ Botan_x509_cert_key_constraints = + FC.CUInt + + toCEnum = Botan_x509_cert_key_constraints + + fromCEnum = un_Botan_x509_cert_key_constraints + + declaredValues = + \_ -> + HsBindgen.Runtime.CEnum.declaredValuesFromList [ (0, Data.List.NonEmpty.singleton "NO_CONSTRAINTS") + , (128, Data.List.NonEmpty.singleton "DECIPHER_ONLY") + , (256, Data.List.NonEmpty.singleton "ENCIPHER_ONLY") + , (512, Data.List.NonEmpty.singleton "CRL_SIGN") + , (1024, Data.List.NonEmpty.singleton "KEY_CERT_SIGN") + , (2048, Data.List.NonEmpty.singleton "KEY_AGREEMENT") + , (4096, Data.List.NonEmpty.singleton "DATA_ENCIPHERMENT") + , (8192, Data.List.NonEmpty.singleton "KEY_ENCIPHERMENT") + , (16384, Data.List.NonEmpty.singleton "NON_REPUDIATION") + , (32768, Data.List.NonEmpty.singleton "DIGITAL_SIGNATURE") + ] + + showsUndeclared = + HsBindgen.Runtime.CEnum.showsWrappedUndeclared "Botan_x509_cert_key_constraints" + + readPrecUndeclared = + HsBindgen.Runtime.CEnum.readPrecWrappedUndeclared "Botan_x509_cert_key_constraints" + +instance Show Botan_x509_cert_key_constraints where + + showsPrec = HsBindgen.Runtime.CEnum.showsCEnum + +instance Read Botan_x509_cert_key_constraints where + + readPrec = HsBindgen.Runtime.CEnum.readPrecCEnum + + readList = Text.Read.readListDefault + + readListPrec = Text.Read.readListPrecDefault + +{-| __C declaration:__ @NO_CONSTRAINTS@ + + __defined at:__ @botan\/ffi.h:2188:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern NO_CONSTRAINTS :: Botan_x509_cert_key_constraints +pattern NO_CONSTRAINTS = Botan_x509_cert_key_constraints 0 + +{-| __C declaration:__ @DIGITAL_SIGNATURE@ + + __defined at:__ @botan\/ffi.h:2189:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern DIGITAL_SIGNATURE :: Botan_x509_cert_key_constraints +pattern DIGITAL_SIGNATURE = Botan_x509_cert_key_constraints 32768 + +{-| __C declaration:__ @NON_REPUDIATION@ + + __defined at:__ @botan\/ffi.h:2190:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern NON_REPUDIATION :: Botan_x509_cert_key_constraints +pattern NON_REPUDIATION = Botan_x509_cert_key_constraints 16384 + +{-| __C declaration:__ @KEY_ENCIPHERMENT@ + + __defined at:__ @botan\/ffi.h:2191:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern KEY_ENCIPHERMENT :: Botan_x509_cert_key_constraints +pattern KEY_ENCIPHERMENT = Botan_x509_cert_key_constraints 8192 + +{-| __C declaration:__ @DATA_ENCIPHERMENT@ + + __defined at:__ @botan\/ffi.h:2192:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern DATA_ENCIPHERMENT :: Botan_x509_cert_key_constraints +pattern DATA_ENCIPHERMENT = Botan_x509_cert_key_constraints 4096 + +{-| __C declaration:__ @KEY_AGREEMENT@ + + __defined at:__ @botan\/ffi.h:2193:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern KEY_AGREEMENT :: Botan_x509_cert_key_constraints +pattern KEY_AGREEMENT = Botan_x509_cert_key_constraints 2048 + +{-| __C declaration:__ @KEY_CERT_SIGN@ + + __defined at:__ @botan\/ffi.h:2194:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern KEY_CERT_SIGN :: Botan_x509_cert_key_constraints +pattern KEY_CERT_SIGN = Botan_x509_cert_key_constraints 1024 + +{-| __C declaration:__ @CRL_SIGN@ + + __defined at:__ @botan\/ffi.h:2195:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern CRL_SIGN :: Botan_x509_cert_key_constraints +pattern CRL_SIGN = Botan_x509_cert_key_constraints 512 + +{-| __C declaration:__ @ENCIPHER_ONLY@ + + __defined at:__ @botan\/ffi.h:2196:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern ENCIPHER_ONLY :: Botan_x509_cert_key_constraints +pattern ENCIPHER_ONLY = Botan_x509_cert_key_constraints 256 + +{-| __C declaration:__ @DECIPHER_ONLY@ + + __defined at:__ @botan\/ffi.h:2197:4@ + + __exported by:__ @botan\/ffi.h@ +-} +pattern DECIPHER_ONLY :: Botan_x509_cert_key_constraints +pattern DECIPHER_ONLY = Botan_x509_cert_key_constraints 128 + +{-| __C declaration:__ @struct botan_x509_crl_struct@ + + __defined at:__ @botan\/ffi.h:2238:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_x509_crl_struct + +{-| __C declaration:__ @botan_x509_crl_t@ + + __defined at:__ @botan\/ffi.h:2238:39@ + + __exported by:__ @botan\/ffi.h@ +-} +newtype Botan_x509_crl_t = Botan_x509_crl_t + { un_Botan_x509_crl_t :: Ptr.Ptr Botan_x509_crl_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_x509_crl_t) "un_Botan_x509_crl_t") + ) => GHC.Records.HasField "un_Botan_x509_crl_t" (Ptr.Ptr Botan_x509_crl_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_x509_crl_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_x509_crl_t "un_Botan_x509_crl_t" where + + type CFieldType Botan_x509_crl_t "un_Botan_x509_crl_t" = + Ptr.Ptr Botan_x509_crl_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct botan_hotp_struct@ + + __defined at:__ @botan\/ffi.h:2315:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_hotp_struct + +{-| HOTP + +__C declaration:__ @botan_hotp_t@ + +__defined at:__ @botan\/ffi.h:2315:35@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_hotp_t = Botan_hotp_t + { un_Botan_hotp_t :: Ptr.Ptr Botan_hotp_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_hotp_t) "un_Botan_hotp_t") + ) => GHC.Records.HasField "un_Botan_hotp_t" (Ptr.Ptr Botan_hotp_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_hotp_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_hotp_t "un_Botan_hotp_t" where + + type CFieldType Botan_hotp_t "un_Botan_hotp_t" = + Ptr.Ptr Botan_hotp_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct botan_totp_struct@ + + __defined at:__ @botan\/ffi.h:2347:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_totp_struct + +{-| TOTP + +__C declaration:__ @botan_totp_t@ + +__defined at:__ @botan\/ffi.h:2347:35@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_totp_t = Botan_totp_t + { un_Botan_totp_t :: Ptr.Ptr Botan_totp_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_totp_t) "un_Botan_totp_t") + ) => GHC.Records.HasField "un_Botan_totp_t" (Ptr.Ptr Botan_totp_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_totp_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_totp_t "un_Botan_totp_t" where + + type CFieldType Botan_totp_t "un_Botan_totp_t" = + Ptr.Ptr Botan_totp_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct botan_fpe_struct@ + + __defined at:__ @botan\/ffi.h:2387:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_fpe_struct + +{-| Format Preserving Encryption + +__C declaration:__ @botan_fpe_t@ + +__defined at:__ @botan\/ffi.h:2387:34@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_fpe_t = Botan_fpe_t + { un_Botan_fpe_t :: Ptr.Ptr Botan_fpe_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_fpe_t) "un_Botan_fpe_t") + ) => GHC.Records.HasField "un_Botan_fpe_t" (Ptr.Ptr Botan_fpe_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_fpe_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_fpe_t "un_Botan_fpe_t" where + + type CFieldType Botan_fpe_t "un_Botan_fpe_t" = + Ptr.Ptr Botan_fpe_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @BOTAN_FPE_FLAG_FE1_COMPAT_MODE@ + + __defined at:__ @botan\/ffi.h:2389:9@ + + __exported by:__ @botan\/ffi.h@ +-} +bOTAN_FPE_FLAG_FE1_COMPAT_MODE :: FC.CInt +bOTAN_FPE_FLAG_FE1_COMPAT_MODE = (1 :: FC.CInt) + +{-| __C declaration:__ @struct botan_srp6_server_session_struct@ + + __defined at:__ @botan\/ffi.h:2410:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_srp6_server_session_struct + +{-| SRP-6 Server Session type + +__C declaration:__ @botan_srp6_server_session_t@ + +__defined at:__ @botan\/ffi.h:2410:50@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_srp6_server_session_t = Botan_srp6_server_session_t + { un_Botan_srp6_server_session_t :: Ptr.Ptr Botan_srp6_server_session_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_srp6_server_session_t) "un_Botan_srp6_server_session_t") + ) => GHC.Records.HasField "un_Botan_srp6_server_session_t" (Ptr.Ptr Botan_srp6_server_session_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_srp6_server_session_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_srp6_server_session_t "un_Botan_srp6_server_session_t" where + + type CFieldType Botan_srp6_server_session_t "un_Botan_srp6_server_session_t" = + Ptr.Ptr Botan_srp6_server_session_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct botan_tpm2_ctx_struct@ + + __defined at:__ @botan\/ffi.h:2568:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_tpm2_ctx_struct + +{-| TPM2 context + +__C declaration:__ @botan_tpm2_ctx_t@ + +__defined at:__ @botan\/ffi.h:2568:39@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_tpm2_ctx_t = Botan_tpm2_ctx_t + { un_Botan_tpm2_ctx_t :: Ptr.Ptr Botan_tpm2_ctx_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_tpm2_ctx_t) "un_Botan_tpm2_ctx_t") + ) => GHC.Records.HasField "un_Botan_tpm2_ctx_t" (Ptr.Ptr Botan_tpm2_ctx_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_tpm2_ctx_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_tpm2_ctx_t "un_Botan_tpm2_ctx_t" where + + type CFieldType Botan_tpm2_ctx_t "un_Botan_tpm2_ctx_t" = + Ptr.Ptr Botan_tpm2_ctx_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct botan_tpm2_session_struct@ + + __defined at:__ @botan\/ffi.h:2573:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_tpm2_session_struct + +{-| TPM2 session + +__C declaration:__ @botan_tpm2_session_t@ + +__defined at:__ @botan\/ffi.h:2573:43@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_tpm2_session_t = Botan_tpm2_session_t + { un_Botan_tpm2_session_t :: Ptr.Ptr Botan_tpm2_session_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_tpm2_session_t) "un_Botan_tpm2_session_t") + ) => GHC.Records.HasField "un_Botan_tpm2_session_t" (Ptr.Ptr Botan_tpm2_session_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_tpm2_session_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_tpm2_session_t "un_Botan_tpm2_session_t" where + + type CFieldType Botan_tpm2_session_t "un_Botan_tpm2_session_t" = + Ptr.Ptr Botan_tpm2_session_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct botan_tpm2_crypto_backend_state_struct@ + + __defined at:__ @botan\/ffi.h:2578:16@ + + __exported by:__ @botan\/ffi.h@ +-} +data Botan_tpm2_crypto_backend_state_struct + +{-| TPM2 crypto backend state object + +__C declaration:__ @botan_tpm2_crypto_backend_state_t@ + +__defined at:__ @botan\/ffi.h:2578:56@ + +__exported by:__ @botan\/ffi.h@ +-} +newtype Botan_tpm2_crypto_backend_state_t = Botan_tpm2_crypto_backend_state_t + { un_Botan_tpm2_crypto_backend_state_t :: Ptr.Ptr Botan_tpm2_crypto_backend_state_struct + } + deriving stock (Eq, Ord, Show) + deriving newtype (F.Storable, HsBindgen.Runtime.HasBaseForeignType.HasBaseForeignType) + +instance ( TyEq ty ((HsBindgen.Runtime.HasCField.CFieldType Botan_tpm2_crypto_backend_state_t) "un_Botan_tpm2_crypto_backend_state_t") + ) => GHC.Records.HasField "un_Botan_tpm2_crypto_backend_state_t" (Ptr.Ptr Botan_tpm2_crypto_backend_state_t) (Ptr.Ptr ty) where + + getField = + HsBindgen.Runtime.HasCField.ptrToCField (Data.Proxy.Proxy @"un_Botan_tpm2_crypto_backend_state_t") + +instance HsBindgen.Runtime.HasCField.HasCField Botan_tpm2_crypto_backend_state_t "un_Botan_tpm2_crypto_backend_state_t" where + + type CFieldType Botan_tpm2_crypto_backend_state_t "un_Botan_tpm2_crypto_backend_state_t" = + Ptr.Ptr Botan_tpm2_crypto_backend_state_struct + + offset# = \_ -> \_ -> 0 + +{-| __C declaration:__ @struct ESYS_CONTEXT@ + + __defined at:__ @botan\/ffi.h:2580:8@ + + __exported by:__ @botan\/ffi.h@ +-} +data ESYS_CONTEXT + +-- __unique:__ @instance ToFunPtr (Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)@ +foreign import ccall safe "wrapper" hs_bindgen_84c12dcae5dbfa89 :: + (Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) + -> IO (Ptr.FunPtr (Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +-- __unique:__ @instance FromFunPtr (Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)@ +foreign import ccall safe "dynamic" hs_bindgen_77773c3700f750af :: + Ptr.FunPtr (Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) + -> Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt + +instance HsBindgen.Runtime.FunPtr.ToFunPtr (Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) where + + toFunPtr = hs_bindgen_84c12dcae5dbfa89 + +instance HsBindgen.Runtime.FunPtr.FromFunPtr (Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) where + + fromFunPtr = hs_bindgen_77773c3700f750af + +-- __unique:__ @instance ToFunPtr (Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)@ +foreign import ccall safe "wrapper" hs_bindgen_452085eb661a56c6 :: + (Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) + -> IO (Ptr.FunPtr (Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +-- __unique:__ @instance FromFunPtr (Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)@ +foreign import ccall safe "dynamic" hs_bindgen_aa01a8a48d88978e :: + Ptr.FunPtr (Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) + -> Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt + +instance HsBindgen.Runtime.FunPtr.ToFunPtr (Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) where + + toFunPtr = hs_bindgen_452085eb661a56c6 + +instance HsBindgen.Runtime.FunPtr.FromFunPtr (Botan_view_ctx -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) where + + fromFunPtr = hs_bindgen_aa01a8a48d88978e diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_10_0/FunPtr.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_10_0/FunPtr.hs new file mode 100644 index 0000000..b1a0407 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_10_0/FunPtr.hs @@ -0,0 +1,9998 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_10_0.FunPtr where + +import Botan.Bindings.Generated.Botan_3_10_0 +import Data.Void (Void) +import qualified Foreign.C as FC +import qualified GHC.IO.Unsafe +import qualified GHC.Ptr as Ptr +import qualified HsBindgen.Runtime.ConstantArray +import qualified HsBindgen.Runtime.ConstPtr +import qualified HsBindgen.Runtime.IncompleteArray +import qualified HsBindgen.Runtime.Prelude +import Prelude (IO) + +$(HsBindgen.Runtime.Prelude.addCSource (HsBindgen.Runtime.Prelude.unlines + [ "#include " + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_error_description */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_86326c8a89d7bede (void)) (" + , " signed int arg1" + , ")" + , "{" + , " return &botan_error_description;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_error_last_exception_message */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_c52cdcf6a3c1ccab (void)) (void)" + , "{" + , " return &botan_error_last_exception_message;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ffi_api_version */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_73e3f430cc7c07ea (void)) (void)" + , "{" + , " return &botan_ffi_api_version;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ffi_supports_api */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cf9eb38124eb021f (void)) (" + , " uint32_t arg1" + , ")" + , "{" + , " return &botan_ffi_supports_api;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_version_string */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_058094c9a6e7c758 (void)) (void)" + , "{" + , " return &botan_version_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_version_major */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_af4a7355db75be77 (void)) (void)" + , "{" + , " return &botan_version_major;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_version_minor */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_24e2f36f93085dab (void)) (void)" + , "{" + , " return &botan_version_minor;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_version_patch */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_81f2ff74614ba5da (void)) (void)" + , "{" + , " return &botan_version_patch;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_version_datestamp */" + , "__attribute__ ((const))" + , "uint32_t (*hs_bindgen_034cefb1dd8fa8e0 (void)) (void)" + , "{" + , " return &botan_version_datestamp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_constant_time_compare */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2f57ec4d39b3b43e (void)) (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_constant_time_compare;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_same_mem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8229595c16546ec4 (void)) (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_same_mem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_scrub_mem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6f4a1f81124aaa9d (void)) (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_scrub_mem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_hex_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_674eb8e8e18c36d6 (void)) (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_hex_encode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_hex_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_330889973cc14912 (void)) (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_hex_decode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_base64_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c8eeca2d9f400e5b (void)) (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_base64_encode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_base64_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_408bdbdfbdff48a5 (void)) (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_base64_decode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_rng_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b703d65e4de45c55 (void)) (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_rng_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_rng_init_custom */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3c5cb8c799207e5c (void)) (" + , " botan_rng_t *arg1," + , " char const *arg2," + , " void *arg3," + , " signed int (*arg4) (" + , " void *arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")," + , " signed int (*arg5) (" + , " void *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")," + , " void (*arg6) (" + , " void *arg1" + , ")" + , ")" + , "{" + , " return &botan_rng_init_custom;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_rng_get */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9d8d3dc2f07ebf94 (void)) (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_get;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_system_rng_get */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_393fdaf443827ff6 (void)) (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_system_rng_get;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_rng_reseed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3c3a4fef46972910 (void)) (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_rng_reseed;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_rng_reseed_from_rng */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c70f6b90c62e7bc6 (void)) (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_reseed_from_rng;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_rng_add_entropy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b3f071309df4f446 (void)) (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_rng_add_entropy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_rng_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9abb3b1cad7fbdc7 (void)) (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return &botan_rng_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_hash_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_851d87be9895ef20 (void)) (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_hash_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_hash_copy_state */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fa8dc9f9d8aed786 (void)) (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return &botan_hash_copy_state;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_hash_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_38872d4ea304bed3 (void)) (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_hash_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_hash_block_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3ca8cd3d355430de (void)) (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_hash_block_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_hash_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f959c2b735736dd8 (void)) (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_hash_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_hash_final */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ef52b9f26003d083 (void)) (" + , " botan_hash_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_hash_final;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_hash_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_607ef9b637759237 (void)) (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return &botan_hash_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_hash_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a781b063741cfff3 (void)) (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return &botan_hash_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_hash_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bccd041cf69d4636 (void)) (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_hash_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mac_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_02685d76d493c6ef (void)) (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mac_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mac_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d492ac9043c2a872 (void)) (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mac_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mac_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c21cb5dbff44f7e7 (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_set_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mac_set_nonce */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b7a75f9366917fb6 (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_set_nonce;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mac_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8ec104557dac56c7 (void)) (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mac_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mac_final */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_860f68157df8fbeb (void)) (" + , " botan_mac_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_mac_final;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mac_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_65676c09756e152f (void)) (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return &botan_mac_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mac_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7bde021d1f655721 (void)) (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_mac_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mac_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_69afaa1d9d4d549e (void)) (" + , " botan_mac_t arg1," + , " size_t *arg2," + , " size_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_mac_get_keyspec;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mac_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c222807d449fb085 (void)) (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return &botan_mac_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4fead1b3f8e2044a (void)) (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_cipher_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d72229ec9582e5b8 (void)) (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e3c57ff875355541 (void)) (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_valid_nonce_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_031f9070e0c418ad (void)) (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_cipher_valid_nonce_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_get_tag_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_73e5636fa537d967 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_tag_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_is_authenticated */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2d2bc56090f156c0 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_is_authenticated;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_requires_entire_message */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1796628cbe496875 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_requires_entire_message;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_get_default_nonce_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_72af846620781ede (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_default_nonce_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_get_update_granularity */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_74de2ccfe72be522 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_update_granularity;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_get_ideal_update_granularity */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0f41c6804fee1ba3 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_cipher_get_ideal_update_granularity;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_query_keylen */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_515ab88c146d9362 (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_cipher_query_keylen;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8ded925f07ab1a5f (void)) (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_cipher_get_keyspec;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e729201d2c3de03c (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_set_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_reset */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8d1272940987cb77 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_reset;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_set_associated_data */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_41a90d0369235c9e (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_set_associated_data;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_start */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_336b22d9cb8b6818 (void)) (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_cipher_start;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_740611b5db96a08b (void)) (" + , " botan_cipher_t arg1," + , " uint32_t arg2," + , " uint8_t arg3[]," + , " size_t arg4," + , " size_t *arg5," + , " uint8_t const arg6[]," + , " size_t arg7," + , " size_t *arg8" + , ")" + , "{" + , " return &botan_cipher_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dc0f8c22034a5833 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_96fe201c76964655 (void)) (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return &botan_cipher_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pbkdf */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9e415c6de52504b9 (void)) (" + , " char const *arg1," + , " uint8_t arg2[]," + , " size_t arg3," + , " char const *arg4," + , " uint8_t const arg5[]," + , " size_t arg6," + , " size_t arg7" + , ")" + , "{" + , " return &botan_pbkdf;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pbkdf_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2e3766aa29e0dde7 (void)) (" + , " char const *arg1," + , " uint8_t arg2[]," + , " size_t arg3," + , " char const *arg4," + , " uint8_t const arg5[]," + , " size_t arg6," + , " size_t arg7," + , " size_t *arg8" + , ")" + , "{" + , " return &botan_pbkdf_timed;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pwdhash */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c6841ba8bd1960d3 (void)) (" + , " char const *arg1," + , " size_t arg2," + , " size_t arg3," + , " size_t arg4," + , " uint8_t arg5[]," + , " size_t arg6," + , " char const *arg7," + , " size_t arg8," + , " uint8_t const arg9[]," + , " size_t arg10" + , ")" + , "{" + , " return &botan_pwdhash;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pwdhash_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_365a1434b68976c5 (void)) (" + , " char const *arg1," + , " uint32_t arg2," + , " size_t *arg3," + , " size_t *arg4," + , " size_t *arg5," + , " uint8_t arg6[]," + , " size_t arg7," + , " char const *arg8," + , " size_t arg9," + , " uint8_t const arg10[]," + , " size_t arg11" + , ")" + , "{" + , " return &botan_pwdhash_timed;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_scrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e2bfd4286a1af5a3 (void)) (" + , " uint8_t arg1[]," + , " size_t arg2," + , " char const *arg3," + , " uint8_t const arg4[]," + , " size_t arg5," + , " size_t arg6," + , " size_t arg7," + , " size_t arg8" + , ")" + , "{" + , " return &botan_scrypt;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_kdf */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9f7ef64c55703aad (void)) (" + , " char const *arg1," + , " uint8_t arg2[]," + , " size_t arg3," + , " uint8_t const arg4[]," + , " size_t arg5," + , " uint8_t const arg6[]," + , " size_t arg7," + , " uint8_t const arg8[]," + , " size_t arg9" + , ")" + , "{" + , " return &botan_kdf;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_block_cipher_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d026d64a520f377d (void)) (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_block_cipher_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_block_cipher_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f93633cd8b02f7b9 (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_block_cipher_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_652a553f56f0be97 (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_block_cipher_set_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ea4c5d02a60c5c48 (void)) (" + , " botan_block_cipher_t arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_block_cipher_set_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_block_cipher_block_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2fd420e70755738f (void)) (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return &botan_block_cipher_block_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_block_cipher_encrypt_blocks */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_06d19c85043ff598 (void)) (" + , " botan_block_cipher_t arg1," + , " uint8_t const arg2[]," + , " uint8_t arg3[]," + , " size_t arg4" + , ")" + , "{" + , " return &botan_block_cipher_encrypt_blocks;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_block_cipher_decrypt_blocks */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_be74dea7187a8d12 (void)) (" + , " botan_block_cipher_t arg1," + , " uint8_t const arg2[]," + , " uint8_t arg3[]," + , " size_t arg4" + , ")" + , "{" + , " return &botan_block_cipher_decrypt_blocks;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_block_cipher_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6e2da01d53296720 (void)) (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_block_cipher_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_block_cipher_get_keyspec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_abbd1b03fd22eed4 (void)) (" + , " botan_block_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_block_cipher_get_keyspec;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_577c4f6067150e23 (void)) (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return &botan_mp_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_457c361447c2acab (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_to_hex */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_da1ca0b0c470bf61 (void)) (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return &botan_mp_to_hex;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_view_hex */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_68247a95b3b75b4a (void)) (" + , " botan_mp_t arg1," + , " botan_view_ctx arg2," + , " botan_view_str_fn arg3" + , ")" + , "{" + , " return &botan_mp_view_hex;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_to_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5549b03b3ce13c9a (void)) (" + , " botan_mp_t arg1," + , " uint8_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_mp_to_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_view_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8d2e11ba701c86ee (void)) (" + , " botan_mp_t arg1," + , " uint8_t arg2," + , " botan_view_ctx arg3," + , " botan_view_str_fn arg4" + , ")" + , "{" + , " return &botan_mp_view_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_clear */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4a2f2f261de83462 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_clear;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_set_from_int */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c0945ac7f73b71c0 (void)) (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return &botan_mp_set_from_int;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_set_from_mp */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_73fd06d2ce89fad2 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_set_from_mp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_set_from_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e3bdfaca1b7e387e (void)) (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_mp_set_from_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_set_from_radix_str */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f0f08d1fadfd07a5 (void)) (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_set_from_radix_str;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_num_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e9e83a517123cd47 (void)) (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mp_num_bits;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_num_bytes */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c7e0f07c0ef56c74 (void)) (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_mp_num_bytes;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_to_bin */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a9a2668d4f397ea1 (void)) (" + , " botan_mp_t arg1," + , " uint8_t arg2[]" + , ")" + , "{" + , " return &botan_mp_to_bin;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_view_bin */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1c092ddb2a245910 (void)) (" + , " botan_mp_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return &botan_mp_view_bin;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_from_bin */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a341c234623930b8 (void)) (" + , " botan_mp_t arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_from_bin;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_to_uint32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_677c2778524b0d07 (void)) (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return &botan_mp_to_uint32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_is_positive */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cb538ab2222735e2 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_positive;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_is_negative */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1b7c4297aa4273dc (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_negative;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_flip_sign */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_70fed8b0210c915f (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_flip_sign;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_is_zero */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fd67095b712d030c (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_zero;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_is_odd */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8764b49f0f6d0c11 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_odd;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_is_even */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_488335e646053fa9 (void)) (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return &botan_mp_is_even;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_add_u32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_aa89ffd0abed2b78 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mp_add_u32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_sub_u32 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8023236b9ee60625 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_mp_sub_u32;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_add */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_444ed599c155cf7b (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_add;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_sub */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b60a5d97ca4638f5 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_sub;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_mul */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_36257f319618c8af (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_mul;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_div */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_60dedbf9103741ed (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return &botan_mp_div;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_mod_mul */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c558bab74faf8338 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return &botan_mp_mod_mul;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_equal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b5ebfeb880dc4d8b (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_equal;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_cmp */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_012a1bb06790c5e0 (void)) (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_cmp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_swap */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bffb2b9a0b383e6d (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return &botan_mp_swap;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_powmod */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3df13dac2e0aefb8 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return &botan_mp_powmod;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_lshift */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8bf8815a17008a0c (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_lshift;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_rshift */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a0768d808ed1a907 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_rshift;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_mod_inverse */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6dbedf98bd0c5ebc (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_mod_inverse;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_rand_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_676dd03a769a62e3 (void)) (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_rand_bits;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_rand_range */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_94683a2037e5c657 (void)) (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return &botan_mp_rand_range;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_gcd */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8fc100fdec481073 (void)) (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_mp_gcd;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_is_prime */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9d525c6ed21dfa75 (void)) (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_mp_is_prime;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_get_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_83acbae5365408a6 (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_get_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_set_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ae14e3ae293bcc22 (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_set_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_clear_bit */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_141ffdddde386621 (void)) (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return &botan_mp_clear_bit;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_bcrypt_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_56b5878fee6580be (void)) (" + , " uint8_t *arg1," + , " size_t *arg2," + , " char const *arg3," + , " botan_rng_t arg4," + , " size_t arg5," + , " uint32_t arg6" + , ")" + , "{" + , " return &botan_bcrypt_generate;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_bcrypt_is_valid */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c0a8d5cc72fa3a9e (void)) (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_bcrypt_is_valid;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_oid_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_df487821a04f2db4 (void)) (" + , " botan_asn1_oid_t arg1" + , ")" + , "{" + , " return &botan_oid_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_oid_from_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0d2708ab668a332b (void)) (" + , " botan_asn1_oid_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_oid_from_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_oid_register */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5a6b530c0c628435 (void)) (" + , " botan_asn1_oid_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_oid_register;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_oid_view_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4b1fff1d8682e5b0 (void)) (" + , " botan_asn1_oid_t arg1," + , " botan_view_ctx arg2," + , " botan_view_str_fn arg3" + , ")" + , "{" + , " return &botan_oid_view_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_oid_view_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f43b424d2e900e4b (void)) (" + , " botan_asn1_oid_t arg1," + , " botan_view_ctx arg2," + , " botan_view_str_fn arg3" + , ")" + , "{" + , " return &botan_oid_view_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_oid_equal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_412a6c0cacd963a1 (void)) (" + , " botan_asn1_oid_t arg1," + , " botan_asn1_oid_t arg2" + , ")" + , "{" + , " return &botan_oid_equal;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_oid_cmp */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_32581f3fc78bc58e (void)) (" + , " signed int *arg1," + , " botan_asn1_oid_t arg2," + , " botan_asn1_oid_t arg3" + , ")" + , "{" + , " return &botan_oid_cmp;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_336784264b425ca1 (void)) (" + , " botan_ec_group_t arg1" + , ")" + , "{" + , " return &botan_ec_group_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_supports_application_specific_group */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0e056cb21f48c8eb (void)) (" + , " signed int *arg1" + , ")" + , "{" + , " return &botan_ec_group_supports_application_specific_group;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_supports_named_group */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_95f9b7507a1ca163 (void)) (" + , " char const *arg1," + , " signed int *arg2" + , ")" + , "{" + , " return &botan_ec_group_supports_named_group;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_from_params */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_97d801fc2ac6d592 (void)) (" + , " botan_ec_group_t *arg1," + , " botan_asn1_oid_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4," + , " botan_mp_t arg5," + , " botan_mp_t arg6," + , " botan_mp_t arg7," + , " botan_mp_t arg8" + , ")" + , "{" + , " return &botan_ec_group_from_params;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_from_ber */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9ea806bc2148912c (void)) (" + , " botan_ec_group_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_ec_group_from_ber;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_from_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f267ce6be6f20b3c (void)) (" + , " botan_ec_group_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_ec_group_from_pem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_from_oid */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3d76df63518591f7 (void)) (" + , " botan_ec_group_t *arg1," + , " botan_asn1_oid_t arg2" + , ")" + , "{" + , " return &botan_ec_group_from_oid;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_from_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cbd05419c824c6a8 (void)) (" + , " botan_ec_group_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_ec_group_from_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_view_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2ebad975fbeb48f7 (void)) (" + , " botan_ec_group_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return &botan_ec_group_view_der;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_view_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bba8ac78278fcd17 (void)) (" + , " botan_ec_group_t arg1," + , " botan_view_ctx arg2," + , " botan_view_str_fn arg3" + , ")" + , "{" + , " return &botan_ec_group_view_pem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_get_curve_oid */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_79d68f6d02e8ab06 (void)) (" + , " botan_asn1_oid_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return &botan_ec_group_get_curve_oid;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_get_p */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0e6c71247bdc838b (void)) (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return &botan_ec_group_get_p;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_get_a */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_aea4f770a6bb76af (void)) (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return &botan_ec_group_get_a;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_get_b */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7cbcbf0e5b0590a2 (void)) (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return &botan_ec_group_get_b;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_get_g_x */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e1d8c6b190346ad1 (void)) (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return &botan_ec_group_get_g_x;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_get_g_y */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d00cf7dab89ecd2a (void)) (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return &botan_ec_group_get_g_y;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_get_order */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_098a8a1c2ad8d295 (void)) (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return &botan_ec_group_get_order;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_equal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_38b48aa61a0725bc (void)) (" + , " botan_ec_group_t arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return &botan_ec_group_equal;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0345f6c2fc9d9a5f (void)) (" + , " botan_privkey_t *arg1," + , " char const *arg2," + , " char const *arg3," + , " botan_rng_t arg4" + , ")" + , "{" + , " return &botan_privkey_create;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_privkey_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_489c3dee8b596e26 (void)) (" + , " botan_privkey_t *arg1," + , " char const *arg2," + , " botan_ec_group_t arg3," + , " botan_rng_t arg4" + , ")" + , "{" + , " return &botan_ec_privkey_create;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_check_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7873cec8cd3e817e (void)) (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_privkey_check_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_create_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cd6a4edbce589060 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_create_rsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_create_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1b0b06e18492d25c (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_ecdsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_create_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7391c77fd7a938f1 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_ecdh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_create_mceliece */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1b639c7603beb50a (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return &botan_privkey_create_mceliece;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_create_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_492b0800df7677b0 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_create_dh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_create_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5c4ee5a4c3eb7146 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return &botan_privkey_create_dsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_create_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_523c6165f8fa7a58 (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return &botan_privkey_create_elgamal;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f5f3f9048c839d6f (void)) (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " uint8_t const arg3[]," + , " size_t arg4," + , " char const *arg5" + , ")" + , "{" + , " return &botan_privkey_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c387802293c63d54 (void)) (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return &botan_privkey_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_export */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f12a62bc30cc898c (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_privkey_export;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_view_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f77602b940593839 (void)) (" + , " botan_privkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return &botan_privkey_view_der;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_view_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9dc7478b30218fe8 (void)) (" + , " botan_privkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_str_fn arg3" + , ")" + , "{" + , " return &botan_privkey_view_pem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_view_raw */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b320028ca893f710 (void)) (" + , " botan_privkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return &botan_privkey_view_raw;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_algo_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_781119e3e5130386 (void)) (" + , " botan_privkey_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_privkey_algo_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_export_encrypted */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d98298dbf6038c82 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " botan_rng_t arg4," + , " char const *arg5," + , " char const *arg6," + , " uint32_t arg7" + , ")" + , "{" + , " return &botan_privkey_export_encrypted;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_export_encrypted_pbkdf_msec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b1c13ccc4342706c (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " botan_rng_t arg4," + , " char const *arg5," + , " uint32_t arg6," + , " size_t *arg7," + , " char const *arg8," + , " char const *arg9," + , " uint32_t arg10" + , ")" + , "{" + , " return &botan_privkey_export_encrypted_pbkdf_msec;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_export_encrypted_pbkdf_iter */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fd5f85594516c122 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " botan_rng_t arg4," + , " char const *arg5," + , " size_t arg6," + , " char const *arg7," + , " char const *arg8," + , " uint32_t arg9" + , ")" + , "{" + , " return &botan_privkey_export_encrypted_pbkdf_iter;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_view_encrypted_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_61a83b1f0ea9e4a2 (void)) (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " char const *arg3," + , " char const *arg4," + , " char const *arg5," + , " size_t arg6," + , " botan_view_ctx arg7," + , " botan_view_bin_fn arg8" + , ")" + , "{" + , " return &botan_privkey_view_encrypted_der;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_view_encrypted_der_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5d3e6da1e4e2ed92 (void)) (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " char const *arg3," + , " char const *arg4," + , " char const *arg5," + , " size_t arg6," + , " botan_view_ctx arg7," + , " botan_view_bin_fn arg8" + , ")" + , "{" + , " return &botan_privkey_view_encrypted_der_timed;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_view_encrypted_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ff37fb469bf108be (void)) (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " char const *arg3," + , " char const *arg4," + , " char const *arg5," + , " size_t arg6," + , " botan_view_ctx arg7," + , " botan_view_str_fn arg8" + , ")" + , "{" + , " return &botan_privkey_view_encrypted_pem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_view_encrypted_pem_timed */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1373f20e058aafb9 (void)) (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " char const *arg3," + , " char const *arg4," + , " char const *arg5," + , " size_t arg6," + , " botan_view_ctx arg7," + , " botan_view_str_fn arg8" + , ")" + , "{" + , " return &botan_privkey_view_encrypted_pem_timed;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5323a5c08ef4d8c9 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_export_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c0c53e679f477da4 (void)) (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_export_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_export */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0a578be0f50f0b4a (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_pubkey_export;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_view_der */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_53e35915ca3d8b05 (void)) (" + , " botan_pubkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return &botan_pubkey_view_der;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_view_pem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ccc56d078d9a61e5 (void)) (" + , " botan_pubkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_str_fn arg3" + , ")" + , "{" + , " return &botan_pubkey_view_pem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_view_raw */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_980170171fc4ab98 (void)) (" + , " botan_pubkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return &botan_pubkey_view_raw;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_algo_name */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1912efc064de4745 (void)) (" + , " botan_pubkey_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pubkey_algo_name;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_check_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_30cdfde61a669ea1 (void)) (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return &botan_pubkey_check_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_estimated_strength */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9ef8d03e24a4ae7d (void)) (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pubkey_estimated_strength;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_fingerprint */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9c3b19f664a7253e (void)) (" + , " botan_pubkey_t arg1," + , " char const *arg2," + , " uint8_t arg3[]," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_pubkey_fingerprint;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c89e2a80a90d86b8 (void)) (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return &botan_pubkey_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_get_field */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b08a104228c24a7b (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_pubkey_get_field;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_get_field */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_18d063b05d770ae1 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_get_field;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_oid */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5162ef00a380bca8 (void)) (" + , " botan_asn1_oid_t *arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_oid;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_oid */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9c577b40b076764f (void)) (" + , " botan_asn1_oid_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_oid;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_stateful_operation */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0e46e1159b61dd83 (void)) (" + , " botan_privkey_t arg1," + , " signed int *arg2" + , ")" + , "{" + , " return &botan_privkey_stateful_operation;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_remaining_operations */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_96e716f2c2b49bcf (void)) (" + , " botan_privkey_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return &botan_privkey_remaining_operations;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_258054c69a65b7d2 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return &botan_privkey_load_rsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_rsa_pkcs1 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_219f39326912a22a (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_load_rsa_pkcs1;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_rsa_get_p */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_04548ddeffcd29fb (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_p;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_rsa_get_q */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ec2873a5da0deb09 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_q;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_rsa_get_d */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6d0e06f83feab996 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_d;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_rsa_get_n */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0faca0e1912fe6ba (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_n;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_rsa_get_e */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cbab1a8e116af396 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_rsa_get_e;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_rsa_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6753834da473b3b3 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_privkey_rsa_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_rsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_973e7a796ace4b10 (void)) (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load_rsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_rsa_get_e */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c28d2a9497274541 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_rsa_get_e;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_rsa_get_n */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f020b3810a48cc4d (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_rsa_get_n;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_06455948f7d6baeb (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4," + , " botan_mp_t arg5" + , ")" + , "{" + , " return &botan_privkey_load_dsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_eb44240702164229 (void)) (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4," + , " botan_mp_t arg5" + , ")" + , "{" + , " return &botan_pubkey_load_dsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_dsa_get_x */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b8b2b717be35cce5 (void)) (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return &botan_privkey_dsa_get_x;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_dsa_get_p */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_82e90ef3b1646c0b (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_p;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_dsa_get_q */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f86f498ed41e67ac (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_q;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_dsa_get_g */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_12c400d97acb87fe (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_g;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_dsa_get_y */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fc5e08402001a654 (void)) (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return &botan_pubkey_dsa_get_y;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ad77fd6c905b1a5c (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return &botan_privkey_load_dh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_dh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dc336e59acaa2492 (void)) (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return &botan_pubkey_load_dh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ee6b4d7e0a0b188f (void)) (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return &botan_pubkey_load_elgamal;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_elgamal */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d0285558becbe7a3 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return &botan_privkey_load_elgamal;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_ed25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1ab62c425873f74e (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_privkey_load_ed25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_ed25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d554d3d0ad7106f4 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_load_ed25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_ed25519_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_09a51c9a19f75ce1 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[64]" + , ")" + , "{" + , " return &botan_privkey_ed25519_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_ed25519_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_015047f9ef28182b (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_ed25519_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_ed448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_77ffd90ce668d608 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[57]" + , ")" + , "{" + , " return &botan_privkey_load_ed448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_ed448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c730eac162f3fc2e (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[57]" + , ")" + , "{" + , " return &botan_pubkey_load_ed448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_ed448_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f288e4fa7bd0cff2 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[57]" + , ")" + , "{" + , " return &botan_privkey_ed448_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_ed448_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5120dcc50461543a (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[57]" + , ")" + , "{" + , " return &botan_pubkey_ed448_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_x25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e0213136f1d439e4 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_privkey_load_x25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_x25519 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ffa77f9db0011e59 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_load_x25519;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_x25519_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7f97f5b07a69fd67 (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_privkey_x25519_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_x25519_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_992a227969dbbe4e (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[32]" + , ")" + , "{" + , " return &botan_pubkey_x25519_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_x448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b435689d2330cfda (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[56]" + , ")" + , "{" + , " return &botan_privkey_load_x448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_x448 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_10a5d199a3f6cf7c (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[56]" + , ")" + , "{" + , " return &botan_pubkey_load_x448;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_x448_get_privkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b1e922a50085807e (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[56]" + , ")" + , "{" + , " return &botan_privkey_x448_get_privkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_x448_get_pubkey */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1cbcb5aa3b063bc2 (void)) (" + , " botan_pubkey_t arg1," + , " uint8_t arg2[56]" + , ")" + , "{" + , " return &botan_pubkey_x448_get_pubkey;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_ml_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0af3294214910400 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return &botan_privkey_load_ml_dsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_ml_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1af987a0d0b45c9f (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return &botan_pubkey_load_ml_dsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_kyber */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_86ea444fe3bf662e (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_privkey_load_kyber;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_kyber */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0370617fccfe811b (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_pubkey_load_kyber;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_view_kyber_raw_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e4f0939ca42ad72d (void)) (" + , " botan_privkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return &botan_privkey_view_kyber_raw_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_view_kyber_raw_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_24514d574fdb7ae0 (void)) (" + , " botan_pubkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return &botan_pubkey_view_kyber_raw_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_frodokem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f0beb69851124952 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return &botan_privkey_load_frodokem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_frodokem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_12867f5d54e8c2c3 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return &botan_pubkey_load_frodokem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_classic_mceliece */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cfd4e98340b7d720 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return &botan_privkey_load_classic_mceliece;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_classic_mceliece */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c9ff9513b2b20fc1 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return &botan_pubkey_load_classic_mceliece;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_ml_kem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cf5b20813d2c32ab (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return &botan_privkey_load_ml_kem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_ml_kem */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_04b806ccb475bdf5 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return &botan_pubkey_load_ml_kem;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_slh_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9107ff1e590e80b2 (void)) (" + , " botan_privkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return &botan_privkey_load_slh_dsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_slh_dsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ef9ccf780300c79f (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return &botan_pubkey_load_slh_dsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_ecc_key_used_explicit_encoding */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_923a049beeeb8f2c (void)) (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return &botan_pubkey_ecc_key_used_explicit_encoding;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_55dceb036014f8a4 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_ecdsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_ecdsa */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_399bba5201ba33ef (void)) (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return &botan_pubkey_load_ecdsa;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_ecdsa_sec1 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a14ba7296bf8cb6f (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return &botan_pubkey_load_ecdsa_sec1;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9041aeb372d5b41d (void)) (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return &botan_pubkey_load_ecdh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_ecdh_sec1 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9a84028de4de9280 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return &botan_pubkey_load_ecdh_sec1;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_ecdh */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a7cb37e677a46f5c (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_ecdh;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_sm2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_362e621f413ae38c (void)) (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return &botan_pubkey_load_sm2;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_sm2_sec1 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8075bfa3cfd97522 (void)) (" + , " botan_pubkey_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return &botan_pubkey_load_sm2_sec1;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_sm2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8d9b5afb31ed04c5 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_sm2;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_sm2_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2e62eee1ba69eead (void)) (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return &botan_pubkey_load_sm2_enc;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_sm2_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e1a0859d7e8bf472 (void)) (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_privkey_load_sm2_enc;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_sm2_compute_za */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dc758e9b46b5b49c (void)) (" + , " uint8_t arg1[]," + , " size_t *arg2," + , " char const *arg3," + , " char const *arg4," + , " botan_pubkey_t arg5" + , ")" + , "{" + , " return &botan_pubkey_sm2_compute_za;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_view_ec_public_point */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_508fa08a3ffc3d47 (void)) (" + , " botan_pubkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return &botan_pubkey_view_ec_public_point;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_encrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_452dfea13ec76430 (void)) (" + , " botan_pk_op_encrypt_t *arg1," + , " botan_pubkey_t arg2," + , " char const *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_pk_op_encrypt_create;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_encrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5f0c6187573af262 (void)) (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_encrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_encrypt_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_76c4d3eace157e03 (void)) (" + , " botan_pk_op_encrypt_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pk_op_encrypt_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_fcfe1e00a36e4c62 (void)) (" + , " botan_pk_op_encrypt_t arg1," + , " botan_rng_t arg2," + , " uint8_t arg3[]," + , " size_t *arg4," + , " uint8_t const arg5[]," + , " size_t arg6" + , ")" + , "{" + , " return &botan_pk_op_encrypt;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_decrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e029a2d12ffa012c (void)) (" + , " botan_pk_op_decrypt_t *arg1," + , " botan_privkey_t arg2," + , " char const *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_pk_op_decrypt_create;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_decrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_402cb43c7e3f047c (void)) (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_decrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_decrypt_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_49e534b78a6e1db0 (void)) (" + , " botan_pk_op_decrypt_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pk_op_decrypt_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_7f48d20a70cde81a (void)) (" + , " botan_pk_op_decrypt_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint8_t const arg4[]," + , " size_t arg5" + , ")" + , "{" + , " return &botan_pk_op_decrypt;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_sign_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_90a0476632b27799 (void)) (" + , " botan_pk_op_sign_t *arg1," + , " botan_privkey_t arg2," + , " char const *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_pk_op_sign_create;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_sign_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2ff7e9a719f9503d (void)) (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return &botan_pk_op_sign_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_sign_output_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_193cade433b92cb1 (void)) (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pk_op_sign_output_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_sign_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_9b3e3afdff79b117 (void)) (" + , " botan_pk_op_sign_t arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_pk_op_sign_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_sign_finish */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1868cc56df0cf25f (void)) (" + , " botan_pk_op_sign_t arg1," + , " botan_rng_t arg2," + , " uint8_t arg3[]," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_pk_op_sign_finish;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_verify_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1757cd01887c1354 (void)) (" + , " botan_pk_op_verify_t *arg1," + , " botan_pubkey_t arg2," + , " char const *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_pk_op_verify_create;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_verify_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f50806c7e6129331 (void)) (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return &botan_pk_op_verify_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_verify_update */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_04adf6e168739264 (void)) (" + , " botan_pk_op_verify_t arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_pk_op_verify_update;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_verify_finish */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6ffccb7aaa93e1ed (void)) (" + , " botan_pk_op_verify_t arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_pk_op_verify_finish;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_key_agreement_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_03bfd87207403d56 (void)) (" + , " botan_pk_op_ka_t *arg1," + , " botan_privkey_t arg2," + , " char const *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_create;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_key_agreement_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c013c9f1c8bc61a3 (void)) (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_key_agreement_export_public */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a540bd6936f0454a (void)) (" + , " botan_privkey_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_export_public;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_key_agreement_view_public */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_05ed81244394c4ef (void)) (" + , " botan_privkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_view_public;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_key_agreement_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_46ffaf28b3c6001f (void)) (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pk_op_key_agreement_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_key_agreement */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_572e2f07c92c8c9a (void)) (" + , " botan_pk_op_ka_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3," + , " uint8_t const arg4[]," + , " size_t arg5," + , " uint8_t const arg6[]," + , " size_t arg7" + , ")" + , "{" + , " return &botan_pk_op_key_agreement;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_kem_encrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a7c7d09a78c15f88 (void)) (" + , " botan_pk_op_kem_encrypt_t *arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_pk_op_kem_encrypt_create;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_kem_encrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_339b633117d71578 (void)) (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_kem_encrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_kem_encrypt_shared_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1ee345bb291ea896 (void)) (" + , " botan_pk_op_kem_encrypt_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pk_op_kem_encrypt_shared_key_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_kem_encrypt_encapsulated_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_76e74b3cba8b8abc (void)) (" + , " botan_pk_op_kem_encrypt_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_pk_op_kem_encrypt_encapsulated_key_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_kem_encrypt_create_shared_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_180e3841f0e84d47 (void)) (" + , " botan_pk_op_kem_encrypt_t arg1," + , " botan_rng_t arg2," + , " uint8_t const arg3[]," + , " size_t arg4," + , " size_t arg5," + , " uint8_t arg6[]," + , " size_t *arg7," + , " uint8_t arg8[]," + , " size_t *arg9" + , ")" + , "{" + , " return &botan_pk_op_kem_encrypt_create_shared_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_kem_decrypt_create */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e35cde16dae81ce7 (void)) (" + , " botan_pk_op_kem_decrypt_t *arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_pk_op_kem_decrypt_create;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_kem_decrypt_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_55cb104ed643c5ad (void)) (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return &botan_pk_op_kem_decrypt_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_kem_decrypt_shared_key_length */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_669e16a4cc558909 (void)) (" + , " botan_pk_op_kem_decrypt_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pk_op_kem_decrypt_shared_key_length;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_kem_decrypt_shared_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4a6e9d10f3a8d9ce (void)) (" + , " botan_pk_op_kem_decrypt_t arg1," + , " uint8_t const arg2[]," + , " size_t arg3," + , " uint8_t const arg4[]," + , " size_t arg5," + , " size_t arg6," + , " uint8_t arg7[]," + , " size_t *arg8" + , ")" + , "{" + , " return &botan_pk_op_kem_decrypt_shared_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pkcs_hash_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c730a2502e9617ec (void)) (" + , " char const *arg1," + , " uint8_t arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_pkcs_hash_id;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mceies_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ad56a88e093aa71a (void)) (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " char const *arg3," + , " uint8_t const arg4[]," + , " size_t arg5," + , " uint8_t const arg6[]," + , " size_t arg7," + , " uint8_t arg8[]," + , " size_t *arg9" + , ")" + , "{" + , " return &botan_mceies_encrypt;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mceies_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a2af1895dfa311c0 (void)) (" + , " botan_privkey_t arg1," + , " char const *arg2," + , " uint8_t const arg3[]," + , " size_t arg4," + , " uint8_t const arg5[]," + , " size_t arg6," + , " uint8_t arg7[]," + , " size_t *arg8" + , ")" + , "{" + , " return &botan_mceies_decrypt;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_90b5bd94f82a2f5c (void)) (" + , " botan_x509_cert_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_x509_cert_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_load_file */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_65bc088cae2fc6bd (void)) (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_cert_load_file;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d4e57cc964bce224 (void)) (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return &botan_x509_cert_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_dup */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_93c17181643e11dc (void)) (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return &botan_x509_cert_dup;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_get_time_starts */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e824f19f7372702c (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_time_starts;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_get_time_expires */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5f7855c1abe287cf (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_time_expires;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_not_before */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_939a179d3c38b5d9 (void)) (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_not_before;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_not_after */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0188e8d184185a74 (void)) (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_not_after;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_get_fingerprint */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e9e3d18a9a741c08 (void)) (" + , " botan_x509_cert_t arg1," + , " char const *arg2," + , " uint8_t arg3[]," + , " size_t *arg4" + , ")" + , "{" + , " return &botan_x509_cert_get_fingerprint;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_get_serial_number */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_450a79ba02db15ea (void)) (" + , " botan_x509_cert_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_serial_number;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_get_authority_key_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_eaf836400afdab30 (void)) (" + , " botan_x509_cert_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_authority_key_id;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_get_subject_key_id */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_70a56fc82dc6e800 (void)) (" + , " botan_x509_cert_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_subject_key_id;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_get_public_key_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_97cd49a61d81e9f7 (void)) (" + , " botan_x509_cert_t arg1," + , " uint8_t arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_get_public_key_bits;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_view_public_key_bits */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_328970478465ff7a (void)) (" + , " botan_x509_cert_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return &botan_x509_cert_view_public_key_bits;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_get_public_key */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bc0cf71118bc46b1 (void)) (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return &botan_x509_cert_get_public_key;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_get_issuer_dn */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_90a9ae6e4d751f24 (void)) (" + , " botan_x509_cert_t arg1," + , " char const *arg2," + , " size_t arg3," + , " uint8_t arg4[]," + , " size_t *arg5" + , ")" + , "{" + , " return &botan_x509_cert_get_issuer_dn;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_get_subject_dn */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6ec710a33e1b291c (void)) (" + , " botan_x509_cert_t arg1," + , " char const *arg2," + , " size_t arg3," + , " uint8_t arg4[]," + , " size_t *arg5" + , ")" + , "{" + , " return &botan_x509_cert_get_subject_dn;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_to_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4ac1233e2898431e (void)) (" + , " botan_x509_cert_t arg1," + , " char arg2[]," + , " size_t *arg3" + , ")" + , "{" + , " return &botan_x509_cert_to_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_view_as_string */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_bf603a8f7c5a89e4 (void)) (" + , " botan_x509_cert_t arg1," + , " botan_view_ctx arg2," + , " botan_view_str_fn arg3" + , ")" + , "{" + , " return &botan_x509_cert_view_as_string;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_allowed_usage */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_57884a5ec41821b3 (void)) (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return &botan_x509_cert_allowed_usage;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_hostname_match */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_dbfa554b1a5383f4 (void)) (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_cert_hostname_match;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_verify */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_da95152583276b76 (void)) (" + , " signed int *arg1," + , " botan_x509_cert_t arg2," + , " botan_x509_cert_t const *arg3," + , " size_t arg4," + , " botan_x509_cert_t const *arg5," + , " size_t arg6," + , " char const *arg7," + , " size_t arg8," + , " char const *arg9," + , " uint64_t arg10" + , ")" + , "{" + , " return &botan_x509_cert_verify;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_validation_status */" + , "__attribute__ ((const))" + , "char const *(*hs_bindgen_148af65d4487ec87 (void)) (" + , " signed int arg1" + , ")" + , "{" + , " return &botan_x509_cert_validation_status;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_crl_load_file */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b6f98f6a4b3cfd2d (void)) (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_x509_crl_load_file;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_crl_load */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6bf65f61b856c504 (void)) (" + , " botan_x509_crl_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")" + , "{" + , " return &botan_x509_crl_load;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_crl_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_3c2c8c0c2a8833d6 (void)) (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return &botan_x509_crl_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_is_revoked */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6c34bc2cf5d2eed3 (void)) (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return &botan_x509_is_revoked;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_verify_with_crl */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f2be10a2c2ac745d (void)) (" + , " signed int *arg1," + , " botan_x509_cert_t arg2," + , " botan_x509_cert_t const *arg3," + , " size_t arg4," + , " botan_x509_cert_t const *arg5," + , " size_t arg6," + , " botan_x509_crl_t const *arg7," + , " size_t arg8," + , " char const *arg9," + , " size_t arg10," + , " char const *arg11," + , " uint64_t arg12" + , ")" + , "{" + , " return &botan_x509_cert_verify_with_crl;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_key_wrap3394 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_725ec8a238172824 (void)) (" + , " uint8_t const arg1[]," + , " size_t arg2," + , " uint8_t const arg3[]," + , " size_t arg4," + , " uint8_t arg5[]," + , " size_t *arg6" + , ")" + , "{" + , " return &botan_key_wrap3394;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_key_unwrap3394 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_1e70b087cb0f31a0 (void)) (" + , " uint8_t const arg1[]," + , " size_t arg2," + , " uint8_t const arg3[]," + , " size_t arg4," + , " uint8_t arg5[]," + , " size_t *arg6" + , ")" + , "{" + , " return &botan_key_unwrap3394;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_nist_kw_enc */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5bc731b094387ec1 (void)) (" + , " char const *arg1," + , " signed int arg2," + , " uint8_t const arg3[]," + , " size_t arg4," + , " uint8_t const arg5[]," + , " size_t arg6," + , " uint8_t arg7[]," + , " size_t *arg8" + , ")" + , "{" + , " return &botan_nist_kw_enc;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_nist_kw_dec */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_2a651c18df5cbf36 (void)) (" + , " char const *arg1," + , " signed int arg2," + , " uint8_t const arg3[]," + , " size_t arg4," + , " uint8_t const arg5[]," + , " size_t arg6," + , " uint8_t arg7[]," + , " size_t *arg8" + , ")" + , "{" + , " return &botan_nist_kw_dec;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_hotp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_255b4816589a1a3a (void)) (" + , " botan_hotp_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3," + , " char const *arg4," + , " size_t arg5" + , ")" + , "{" + , " return &botan_hotp_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_hotp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_15c24af2c7ebd682 (void)) (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return &botan_hotp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_hotp_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_93005e59379181bd (void)) (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return &botan_hotp_generate;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_hotp_check */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5091c0251d013055 (void)) (" + , " botan_hotp_t arg1," + , " uint64_t *arg2," + , " uint32_t arg3," + , " uint64_t arg4," + , " size_t arg5" + , ")" + , "{" + , " return &botan_hotp_check;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_totp_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e33f4fce1ba2dad6 (void)) (" + , " botan_totp_t *arg1," + , " uint8_t const arg2[]," + , " size_t arg3," + , " char const *arg4," + , " size_t arg5," + , " size_t arg6" + , ")" + , "{" + , " return &botan_totp_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_totp_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_a3fc04f39d9d2667 (void)) (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return &botan_totp_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_totp_generate */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_4ece7d58da3e0513 (void)) (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return &botan_totp_generate;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_totp_check */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_39aa9ff55a3f8c2a (void)) (" + , " botan_totp_t arg1," + , " uint32_t arg2," + , " uint64_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return &botan_totp_check;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_fpe_fe1_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_33169960837b229f (void)) (" + , " botan_fpe_t *arg1," + , " botan_mp_t arg2," + , " uint8_t const arg3[]," + , " size_t arg4," + , " size_t arg5," + , " uint32_t arg6" + , ")" + , "{" + , " return &botan_fpe_fe1_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_fpe_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_788618f5ea6e026f (void)) (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return &botan_fpe_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_fpe_encrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_6f135e0855c9732a (void)) (" + , " botan_fpe_t arg1," + , " botan_mp_t arg2," + , " uint8_t const arg3[]," + , " size_t arg4" + , ")" + , "{" + , " return &botan_fpe_encrypt;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_fpe_decrypt */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_5f8669fc88e60d08 (void)) (" + , " botan_fpe_t arg1," + , " botan_mp_t arg2," + , " uint8_t const arg3[]," + , " size_t arg4" + , ")" + , "{" + , " return &botan_fpe_decrypt;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_srp6_server_session_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_402d3c45d024c542 (void)) (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return &botan_srp6_server_session_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_srp6_server_session_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_98f22da826ed2a46 (void)) (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return &botan_srp6_server_session_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_srp6_server_session_step1 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ac3cf36add9e261f (void)) (" + , " botan_srp6_server_session_t arg1," + , " uint8_t const arg2[]," + , " size_t arg3," + , " char const *arg4," + , " char const *arg5," + , " botan_rng_t arg6," + , " uint8_t arg7[]," + , " size_t *arg8" + , ")" + , "{" + , " return &botan_srp6_server_session_step1;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_srp6_server_session_step2 */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d6dce8f96b54dfab (void)) (" + , " botan_srp6_server_session_t arg1," + , " uint8_t const arg2[]," + , " size_t arg3," + , " uint8_t arg4[]," + , " size_t *arg5" + , ")" + , "{" + , " return &botan_srp6_server_session_step2;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_srp6_generate_verifier */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_b4d734a990fc8e30 (void)) (" + , " char const *arg1," + , " char const *arg2," + , " uint8_t const arg3[]," + , " size_t arg4," + , " char const *arg5," + , " char const *arg6," + , " uint8_t arg7[]," + , " size_t *arg8" + , ")" + , "{" + , " return &botan_srp6_generate_verifier;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_srp6_client_agree */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_0de98bfbb47eb1e0 (void)) (" + , " char const *arg1," + , " char const *arg2," + , " char const *arg3," + , " char const *arg4," + , " uint8_t const arg5[]," + , " size_t arg6," + , " uint8_t const arg7[]," + , " size_t arg8," + , " botan_rng_t arg9," + , " uint8_t arg10[]," + , " size_t *arg11," + , " uint8_t arg12[]," + , " size_t *arg13" + , ")" + , "{" + , " return &botan_srp6_client_agree;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_srp6_group_size */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e4da6a77552e4c97 (void)) (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return &botan_srp6_group_size;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_zfec_encode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_8b41059bd8566012 (void)) (" + , " size_t arg1," + , " size_t arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " uint8_t **arg5" + , ")" + , "{" + , " return &botan_zfec_encode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_zfec_decode */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_d24d81ad9bae341e (void)) (" + , " size_t arg1," + , " size_t arg2," + , " size_t const *arg3," + , " uint8_t *const *arg4," + , " size_t arg5," + , " uint8_t **arg6" + , ")" + , "{" + , " return &botan_zfec_decode;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_tpm2_supports_crypto_backend */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_ceb7e3637775844f (void)) (void)" + , "{" + , " return &botan_tpm2_supports_crypto_backend;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_tpm2_ctx_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cdac01065f5e8ff7 (void)) (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return &botan_tpm2_ctx_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_tpm2_ctx_init_ex */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f76a9ee39200405b (void)) (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2," + , " char const *arg3" + , ")" + , "{" + , " return &botan_tpm2_ctx_init_ex;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_tpm2_ctx_from_esys */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_895e134f71d8e859 (void)) (" + , " botan_tpm2_ctx_t *arg1," + , " struct ESYS_CONTEXT *arg2" + , ")" + , "{" + , " return &botan_tpm2_ctx_from_esys;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_tpm2_ctx_enable_crypto_backend */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_25d7938cd8bdfb49 (void)) (" + , " botan_tpm2_ctx_t arg1," + , " botan_rng_t arg2" + , ")" + , "{" + , " return &botan_tpm2_ctx_enable_crypto_backend;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_tpm2_ctx_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_f822c75b8be3c657 (void)) (" + , " botan_tpm2_ctx_t arg1" + , ")" + , "{" + , " return &botan_tpm2_ctx_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_tpm2_enable_crypto_backend */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_c654cb837f606f61 (void)) (" + , " botan_tpm2_crypto_backend_state_t *arg1," + , " struct ESYS_CONTEXT *arg2," + , " botan_rng_t arg3" + , ")" + , "{" + , " return &botan_tpm2_enable_crypto_backend;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_tpm2_crypto_backend_state_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_006409ec43e3d201 (void)) (" + , " botan_tpm2_crypto_backend_state_t arg1" + , ")" + , "{" + , " return &botan_tpm2_crypto_backend_state_destroy;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_tpm2_rng_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_41fef8a1febfc817 (void)) (" + , " botan_rng_t *arg1," + , " botan_tpm2_ctx_t arg2," + , " botan_tpm2_session_t arg3," + , " botan_tpm2_session_t arg4," + , " botan_tpm2_session_t arg5" + , ")" + , "{" + , " return &botan_tpm2_rng_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_tpm2_unauthenticated_session_init */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_e535b3e61b00c96e (void)) (" + , " botan_tpm2_session_t *arg1," + , " botan_tpm2_ctx_t arg2" + , ")" + , "{" + , " return &botan_tpm2_unauthenticated_session_init;" + , "}" + , "/* botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_tpm2_session_destroy */" + , "__attribute__ ((const))" + , "signed int (*hs_bindgen_cece6c071f8cb644 (void)) (" + , " botan_tpm2_session_t arg1" + , ")" + , "{" + , " return &botan_tpm2_session_destroy;" + , "}" + ])) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_error_description@ +foreign import ccall unsafe "hs_bindgen_86326c8a89d7bede" hs_bindgen_86326c8a89d7bede :: + IO (Ptr.FunPtr (FC.CInt -> IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar))) + +{-# NOINLINE botan_error_description #-} +{-| Convert an error code into a string. Returns "Unknown error" if the error code is not a known one. + +__C declaration:__ @botan_error_description@ + +__defined at:__ @botan\/ffi.h:176:36@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_error_description :: Ptr.FunPtr (FC.CInt -> IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar)) +botan_error_description = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_86326c8a89d7bede + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_error_last_exception_message@ +foreign import ccall unsafe "hs_bindgen_c52cdcf6a3c1ccab" hs_bindgen_c52cdcf6a3c1ccab :: + IO (Ptr.FunPtr (IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar))) + +{-# NOINLINE botan_error_last_exception_message #-} +{-| Return the message of the last exception caught in this thread. + + This pointer can/will be reallocated or overwritten the next time this thread calls any other Botan FFI function and must be copied to persistent storage first. + +__C declaration:__ @botan_error_last_exception_message@ + +__defined at:__ @botan\/ffi.h:185:36@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_error_last_exception_message :: Ptr.FunPtr (IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar)) +botan_error_last_exception_message = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_c52cdcf6a3c1ccab + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ffi_api_version@ +foreign import ccall unsafe "hs_bindgen_73e3f430cc7c07ea" hs_bindgen_73e3f430cc7c07ea :: + IO (Ptr.FunPtr (IO HsBindgen.Runtime.Prelude.Word32)) + +{-# NOINLINE botan_ffi_api_version #-} +{-| Return the version of the currently supported FFI API. This is expressed in the form YYYYMMDD of the release date of this version of the API. + +__C declaration:__ @botan_ffi_api_version@ + +__defined at:__ @botan\/ffi.h:192:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_api_version :: Ptr.FunPtr (IO HsBindgen.Runtime.Prelude.Word32) +botan_ffi_api_version = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_73e3f430cc7c07ea + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ffi_supports_api@ +foreign import ccall unsafe "hs_bindgen_cf9eb38124eb021f" hs_bindgen_cf9eb38124eb021f :: + IO (Ptr.FunPtr (HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_ffi_supports_api #-} +{-| Return 0 (ok) if the version given is one this library supports. botan_ffi_supports_api(botan_ffi_api_version()) will always return 0. + +__C declaration:__ @botan_ffi_supports_api@ + +__defined at:__ @botan\/ffi.h:198:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_supports_api :: Ptr.FunPtr (HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_ffi_supports_api = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_cf9eb38124eb021f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_version_string@ +foreign import ccall unsafe "hs_bindgen_058094c9a6e7c758" hs_bindgen_058094c9a6e7c758 :: + IO (Ptr.FunPtr (IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar))) + +{-# NOINLINE botan_version_string #-} +{-| Return a free-form version string, e.g., 2.0.0 + +__C declaration:__ @botan_version_string@ + +__defined at:__ @botan\/ffi.h:203:36@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_string :: Ptr.FunPtr (IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar)) +botan_version_string = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_058094c9a6e7c758 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_version_major@ +foreign import ccall unsafe "hs_bindgen_af4a7355db75be77" hs_bindgen_af4a7355db75be77 :: + IO (Ptr.FunPtr (IO HsBindgen.Runtime.Prelude.Word32)) + +{-# NOINLINE botan_version_major #-} +{-| Return the major version of the library + +__C declaration:__ @botan_version_major@ + +__defined at:__ @botan\/ffi.h:208:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_major :: Ptr.FunPtr (IO HsBindgen.Runtime.Prelude.Word32) +botan_version_major = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_af4a7355db75be77 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_version_minor@ +foreign import ccall unsafe "hs_bindgen_24e2f36f93085dab" hs_bindgen_24e2f36f93085dab :: + IO (Ptr.FunPtr (IO HsBindgen.Runtime.Prelude.Word32)) + +{-# NOINLINE botan_version_minor #-} +{-| Return the minor version of the library + +__C declaration:__ @botan_version_minor@ + +__defined at:__ @botan\/ffi.h:213:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_minor :: Ptr.FunPtr (IO HsBindgen.Runtime.Prelude.Word32) +botan_version_minor = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_24e2f36f93085dab + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_version_patch@ +foreign import ccall unsafe "hs_bindgen_81f2ff74614ba5da" hs_bindgen_81f2ff74614ba5da :: + IO (Ptr.FunPtr (IO HsBindgen.Runtime.Prelude.Word32)) + +{-# NOINLINE botan_version_patch #-} +{-| Return the patch version of the library + +__C declaration:__ @botan_version_patch@ + +__defined at:__ @botan\/ffi.h:218:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_patch :: Ptr.FunPtr (IO HsBindgen.Runtime.Prelude.Word32) +botan_version_patch = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_81f2ff74614ba5da + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_version_datestamp@ +foreign import ccall unsafe "hs_bindgen_034cefb1dd8fa8e0" hs_bindgen_034cefb1dd8fa8e0 :: + IO (Ptr.FunPtr (IO HsBindgen.Runtime.Prelude.Word32)) + +{-# NOINLINE botan_version_datestamp #-} +{-| Return the date this version was released as an integer. + + Returns 0 if the library was not built from an official release + +__C declaration:__ @botan_version_datestamp@ + +__defined at:__ @botan\/ffi.h:225:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_datestamp :: Ptr.FunPtr (IO HsBindgen.Runtime.Prelude.Word32) +botan_version_datestamp = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_034cefb1dd8fa8e0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_constant_time_compare@ +foreign import ccall unsafe "hs_bindgen_2f57ec4d39b3b43e" hs_bindgen_2f57ec4d39b3b43e :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_constant_time_compare #-} +{-| Returns 0 if x[0..len] == y[0..len], or otherwise -1 + +__C declaration:__ @botan_constant_time_compare@ + +__defined at:__ @botan\/ffi.h:230:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_constant_time_compare :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_constant_time_compare = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_2f57ec4d39b3b43e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_same_mem@ +foreign import ccall unsafe "hs_bindgen_8229595c16546ec4" hs_bindgen_8229595c16546ec4 :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_same_mem #-} +{-| Deprecated equivalent to botan_constant_time_compare + +__C declaration:__ @botan_same_mem@ + +__defined at:__ @botan\/ffi.h:236:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_same_mem :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_same_mem = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_8229595c16546ec4 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_scrub_mem@ +foreign import ccall unsafe "hs_bindgen_6f4a1f81124aaa9d" hs_bindgen_6f4a1f81124aaa9d :: + IO (Ptr.FunPtr ((Ptr.Ptr Void) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_scrub_mem #-} +{-| Clear out memory using a system specific approach to bypass elision by the compiler (currently using RtlSecureZeroMemory or tricks with volatile pointers). + +__C declaration:__ @botan_scrub_mem@ + +__defined at:__ @botan\/ffi.h:242:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_scrub_mem :: Ptr.FunPtr ((Ptr.Ptr Void) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_scrub_mem = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_6f4a1f81124aaa9d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_hex_encode@ +foreign import ccall unsafe "hs_bindgen_674eb8e8e18c36d6" hs_bindgen_674eb8e8e18c36d6 :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_hex_encode #-} +{-| Perform hex encoding + + [__@x@ /(input)/__]: is some binary data + + [__@len@ /(input)/__]: length of x in bytes + + [__@out@ /(input)/__]: an array of at least x*2 bytes + + [__@flags@ /(input)/__]: flags out be upper or lower case? + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hex_encode@ + +__defined at:__ @botan\/ffi.h:257:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hex_encode :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_hex_encode = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_674eb8e8e18c36d6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_hex_decode@ +foreign import ccall unsafe "hs_bindgen_330889973cc14912" hs_bindgen_330889973cc14912 :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_hex_decode #-} +{-| Perform hex decoding + + [__@hex_str@ /(input)/__]: a string of hex chars (whitespace is ignored) + + [__@in_len@ /(input)/__]: the length of hex_str + + [__@out@ /(input)/__]: the output buffer should be at least strlen(hex_str)/2 bytes + + [__@out_len@ /(input)/__]: the size of the output buffer on input, set to the number of bytes written + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hex_decode@ + +__defined at:__ @botan\/ffi.h:267:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hex_decode :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_hex_decode = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_330889973cc14912 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_base64_encode@ +foreign import ccall unsafe "hs_bindgen_c8eeca2d9f400e5b" hs_bindgen_c8eeca2d9f400e5b :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_base64_encode #-} +{-| Perform base64 encoding + + [__@x@ /(input)/__]: the input data + + [__@len@ /(input)/__]: the length of x + + [__@out@ /(input)/__]: the output buffer + + [__@out_len@ /(input)/__]: the size of the output buffer on input, set to the number of bytes written + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_base64_encode@ + +__defined at:__ @botan\/ffi.h:279:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_base64_encode :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_base64_encode = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_c8eeca2d9f400e5b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_base64_decode@ +foreign import ccall unsafe "hs_bindgen_408bdbdfbdff48a5" hs_bindgen_408bdbdfbdff48a5 :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_base64_decode #-} +{-| Perform base64 decoding + +__C declaration:__ @botan_base64_decode@ + +__defined at:__ @botan\/ffi.h:284:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_base64_decode :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_base64_decode = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_408bdbdfbdff48a5 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_rng_init@ +foreign import ccall unsafe "hs_bindgen_b703d65e4de45c55" hs_bindgen_b703d65e4de45c55 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_rng_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_rng_init #-} +{-| Initialize a random number generator object + + [__@rng@ /(input)/__]: rng object + + [__@rng_type@ /(input)/__]: type of the rng, possible values: "system": system RNG "esdm-full": ESDM RNG (fully seeded) "esdm-pr": ESDM RNG (w. prediction resistance) "user": userspace RNG "user-threadsafe": userspace RNG, with internal locking "rdrand": directly read RDRAND Set rng_type to null to let the library choose some default. + +__C declaration:__ @botan_rng_init@ + +__defined at:__ @botan\/ffi.h:303:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_init :: Ptr.FunPtr ((Ptr.Ptr Botan_rng_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_rng_init = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_b703d65e4de45c55 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_rng_init_custom@ +foreign import ccall unsafe "hs_bindgen_3c5cb8c799207e5c" hs_bindgen_3c5cb8c799207e5c :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_rng_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (Ptr.Ptr Void) -> (Ptr.FunPtr ((Ptr.Ptr Void) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) -> (Ptr.FunPtr ((Ptr.Ptr Void) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) -> (Ptr.FunPtr ((Ptr.Ptr Void) -> IO ())) -> IO FC.CInt)) + +{-# NOINLINE botan_rng_init_custom #-} +{-| Initialize a custom random number generator from a set of callback functions + + [__@rng_out@ /(input)/__]: rng object to create + + [__@rng_name@ /(input)/__]: name of the rng + + [__@context@ /(input)/__]: An application-specific context passed to the callback functions + + [__@get_cb@ /(input)/__]: Callback for getting random bytes from the rng, return 0 for success + + [__@add_entropy_cb@ /(input)/__]: Callback for adding entropy to the rng, return 0 for success, may be NULL + + [__@destroy_cb@ /(input)/__]: Callback called when rng is destroyed, may be NULL + +__C declaration:__ @botan_rng_init_custom@ + +__defined at:__ @botan\/ffi.h:315:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_init_custom :: Ptr.FunPtr ((Ptr.Ptr Botan_rng_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (Ptr.Ptr Void) -> (Ptr.FunPtr ((Ptr.Ptr Void) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) -> (Ptr.FunPtr ((Ptr.Ptr Void) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) -> (Ptr.FunPtr ((Ptr.Ptr Void) -> IO ())) -> IO FC.CInt) +botan_rng_init_custom = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_3c5cb8c799207e5c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_rng_get@ +foreign import ccall unsafe "hs_bindgen_9d8d3dc2f07ebf94" hs_bindgen_9d8d3dc2f07ebf94 :: + IO (Ptr.FunPtr (Botan_rng_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_rng_get #-} +{-| Get random bytes from a random number generator + + [__@rng@ /(input)/__]: rng object + + [__@out@ /(input)/__]: output buffer of size out_len + + [__@out_len@ /(input)/__]: number of requested bytes + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_rng_get@ + +__defined at:__ @botan\/ffi.h:330:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_get :: Ptr.FunPtr (Botan_rng_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_rng_get = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_9d8d3dc2f07ebf94 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_system_rng_get@ +foreign import ccall unsafe "hs_bindgen_393fdaf443827ff6" hs_bindgen_393fdaf443827ff6 :: + IO (Ptr.FunPtr ((Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_system_rng_get #-} +{-| Get random bytes from system random number generator + + [__@out@ /(input)/__]: output buffer of size out_len + + [__@out_len@ /(input)/__]: number of requested bytes + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_system_rng_get@ + +__defined at:__ @botan\/ffi.h:339:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_system_rng_get :: Ptr.FunPtr ((Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_system_rng_get = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_393fdaf443827ff6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_rng_reseed@ +foreign import ccall unsafe "hs_bindgen_3c3a4fef46972910" hs_bindgen_3c3a4fef46972910 :: + IO (Ptr.FunPtr (Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_rng_reseed #-} +{-| Reseed a random number generator Uses the System_RNG as a seed generator. + + [__@rng@ /(input)/__]: rng object + + [__@bits@ /(input)/__]: number of bits to reseed with + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_rng_reseed@ + +__defined at:__ @botan\/ffi.h:349:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_reseed :: Ptr.FunPtr (Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_rng_reseed = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_3c3a4fef46972910 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_rng_reseed_from_rng@ +foreign import ccall unsafe "hs_bindgen_c70f6b90c62e7bc6" hs_bindgen_c70f6b90c62e7bc6 :: + IO (Ptr.FunPtr (Botan_rng_t -> Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_rng_reseed_from_rng #-} +{-| Reseed a random number generator + + [__@rng@ /(input)/__]: rng object + + [__@source_rng@ /(input)/__]: the rng that will be read from + + [__@bits@ /(input)/__]: number of bits to reseed with + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_rng_reseed_from_rng@ + +__defined at:__ @botan\/ffi.h:359:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_reseed_from_rng :: Ptr.FunPtr (Botan_rng_t -> Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_rng_reseed_from_rng = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_c70f6b90c62e7bc6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_rng_add_entropy@ +foreign import ccall unsafe "hs_bindgen_b3f071309df4f446" hs_bindgen_b3f071309df4f446 :: + IO (Ptr.FunPtr (Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_rng_add_entropy #-} +{-| Add some seed material to a random number generator + + [__@rng@ /(input)/__]: rng object + + [__@entropy@ /(input)/__]: the data to add + + [__@entropy_len@ /(input)/__]: length of entropy buffer + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_rng_add_entropy@ + +__defined at:__ @botan\/ffi.h:369:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_add_entropy :: Ptr.FunPtr (Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_rng_add_entropy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_b3f071309df4f446 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_rng_destroy@ +foreign import ccall unsafe "hs_bindgen_9abb3b1cad7fbdc7" hs_bindgen_9abb3b1cad7fbdc7 :: + IO (Ptr.FunPtr (Botan_rng_t -> IO FC.CInt)) + +{-# NOINLINE botan_rng_destroy #-} +{-| Frees all resources of the random number generator object + + [__@rng@ /(input)/__]: rng object + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_rng_destroy@ + +__defined at:__ @botan\/ffi.h:376:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_destroy :: Ptr.FunPtr (Botan_rng_t -> IO FC.CInt) +botan_rng_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_9abb3b1cad7fbdc7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_hash_init@ +foreign import ccall unsafe "hs_bindgen_851d87be9895ef20" hs_bindgen_851d87be9895ef20 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_hash_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_hash_init #-} +{-| Initialize a hash function object + + [__@hash@ /(input)/__]: hash object + + [__@hash_name@ /(input)/__]: name of the hash function, e.g., "SHA-384" + + [__@flags@ /(input)/__]: should be 0 in current API revision, all other uses are reserved and return BOTAN_FFI_ERROR_BAD_FLAG + +__C declaration:__ @botan_hash_init@ + +__defined at:__ @botan\/ffi.h:390:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_init :: Ptr.FunPtr ((Ptr.Ptr Botan_hash_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_hash_init = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_851d87be9895ef20 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_hash_copy_state@ +foreign import ccall unsafe "hs_bindgen_fa8dc9f9d8aed786" hs_bindgen_fa8dc9f9d8aed786 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_hash_t) -> Botan_hash_t -> IO FC.CInt)) + +{-# NOINLINE botan_hash_copy_state #-} +{-| Copy the state of a hash function object + + [__@dest@ /(input)/__]: destination hash object + + [__@source@ /(input)/__]: source hash object + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_copy_state@ + +__defined at:__ @botan\/ffi.h:398:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_copy_state :: Ptr.FunPtr ((Ptr.Ptr Botan_hash_t) -> Botan_hash_t -> IO FC.CInt) +botan_hash_copy_state = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_fa8dc9f9d8aed786 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_hash_output_length@ +foreign import ccall unsafe "hs_bindgen_38872d4ea304bed3" hs_bindgen_38872d4ea304bed3 :: + IO (Ptr.FunPtr (Botan_hash_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_hash_output_length #-} +{-| Writes the output length of the hash function to *output_length + + [__@hash@ /(input)/__]: hash object + + [__@output_length@ /(input)/__]: output buffer to hold the hash function output length + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_output_length@ + +__defined at:__ @botan\/ffi.h:406:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_output_length :: Ptr.FunPtr (Botan_hash_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_hash_output_length = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_38872d4ea304bed3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_hash_block_size@ +foreign import ccall unsafe "hs_bindgen_3ca8cd3d355430de" hs_bindgen_3ca8cd3d355430de :: + IO (Ptr.FunPtr (Botan_hash_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_hash_block_size #-} +{-| Writes the block size of the hash function to *block_size + + [__@hash@ /(input)/__]: hash object + + [__@block_size@ /(input)/__]: output buffer to hold the hash function output length + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_block_size@ + +__defined at:__ @botan\/ffi.h:414:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_block_size :: Ptr.FunPtr (Botan_hash_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_hash_block_size = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_3ca8cd3d355430de + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_hash_update@ +foreign import ccall unsafe "hs_bindgen_f959c2b735736dd8" hs_bindgen_f959c2b735736dd8 :: + IO (Ptr.FunPtr (Botan_hash_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_hash_update #-} +{-| Send more input to the hash function + + [__@hash@ /(input)/__]: hash object + + [__@in@ /(input)/__]: input buffer + + [__@in_len@ /(input)/__]: number of bytes to read from the input buffer + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_update@ + +__defined at:__ @botan\/ffi.h:423:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_update :: Ptr.FunPtr (Botan_hash_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_hash_update = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_f959c2b735736dd8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_hash_final@ +foreign import ccall unsafe "hs_bindgen_ef52b9f26003d083" hs_bindgen_ef52b9f26003d083 :: + IO (Ptr.FunPtr (Botan_hash_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt)) + +{-# NOINLINE botan_hash_final #-} +{-| Finalizes the hash computation and writes the output to out[0:botan_hash_output_length()] then reinitializes for computing another digest as if botan_hash_clear had been called. + + [__@hash@ /(input)/__]: hash object + + [__@out@ /(input)/__]: output buffer + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_final@ + +__defined at:__ @botan\/ffi.h:433:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_final :: Ptr.FunPtr (Botan_hash_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt) +botan_hash_final = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_ef52b9f26003d083 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_hash_clear@ +foreign import ccall unsafe "hs_bindgen_607ef9b637759237" hs_bindgen_607ef9b637759237 :: + IO (Ptr.FunPtr (Botan_hash_t -> IO FC.CInt)) + +{-# NOINLINE botan_hash_clear #-} +{-| Reinitializes the state of the hash computation. A hash can be computed (with update/final) immediately. + + [__@hash@ /(input)/__]: hash object + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_clear@ + +__defined at:__ @botan\/ffi.h:441:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_clear :: Ptr.FunPtr (Botan_hash_t -> IO FC.CInt) +botan_hash_clear = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_607ef9b637759237 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_hash_destroy@ +foreign import ccall unsafe "hs_bindgen_a781b063741cfff3" hs_bindgen_a781b063741cfff3 :: + IO (Ptr.FunPtr (Botan_hash_t -> IO FC.CInt)) + +{-# NOINLINE botan_hash_destroy #-} +{-| Frees all resources of the hash object + + [__@hash@ /(input)/__]: hash object + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_hash_destroy@ + +__defined at:__ @botan\/ffi.h:448:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_destroy :: Ptr.FunPtr (Botan_hash_t -> IO FC.CInt) +botan_hash_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_a781b063741cfff3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_hash_name@ +foreign import ccall unsafe "hs_bindgen_bccd041cf69d4636" hs_bindgen_bccd041cf69d4636 :: + IO (Ptr.FunPtr (Botan_hash_t -> (Ptr.Ptr FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_hash_name #-} +{-| Get the name of this hash function + + [__@hash@ /(input)/__]: the object to read + + [__@name@ /(input)/__]: output buffer + + [__@name_len@ /(input)/__]: on input, the length of buffer, on success the number of bytes written + +__C declaration:__ @botan_hash_name@ + +__defined at:__ @botan\/ffi.h:456:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_name :: Ptr.FunPtr (Botan_hash_t -> (Ptr.Ptr FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_hash_name = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_bccd041cf69d4636 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mac_init@ +foreign import ccall unsafe "hs_bindgen_02685d76d493c6ef" hs_bindgen_02685d76d493c6ef :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_mac_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_mac_init #-} +{-| Initialize a message authentication code object + + [__@mac@ /(input)/__]: mac object + + [__@mac_name@ /(input)/__]: name of the hash function, e.g., "HMAC(SHA-384)" + + [__@flags@ /(input)/__]: should be 0 in current API revision, all other uses are reserved and return a negative value (error code) + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_init@ + +__defined at:__ @botan\/ffi.h:471:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_init :: Ptr.FunPtr ((Ptr.Ptr Botan_mac_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_mac_init = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_02685d76d493c6ef + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mac_output_length@ +foreign import ccall unsafe "hs_bindgen_d492ac9043c2a872" hs_bindgen_d492ac9043c2a872 :: + IO (Ptr.FunPtr (Botan_mac_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_mac_output_length #-} +{-| Writes the output length of the message authentication code to *output_length + + [__@mac@ /(input)/__]: mac object + + [__@output_length@ /(input)/__]: output buffer to hold the MAC output length + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_output_length@ + +__defined at:__ @botan\/ffi.h:479:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_output_length :: Ptr.FunPtr (Botan_mac_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_mac_output_length = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_d492ac9043c2a872 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mac_set_key@ +foreign import ccall unsafe "hs_bindgen_c21cb5dbff44f7e7" hs_bindgen_c21cb5dbff44f7e7 :: + IO (Ptr.FunPtr (Botan_mac_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_mac_set_key #-} +{-| Sets the key on the MAC + + [__@mac@ /(input)/__]: mac object + + [__@key@ /(input)/__]: buffer holding the key + + [__@key_len@ /(input)/__]: size of the key buffer in bytes + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_set_key@ + +__defined at:__ @botan\/ffi.h:488:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_set_key :: Ptr.FunPtr (Botan_mac_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_mac_set_key = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_c21cb5dbff44f7e7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mac_set_nonce@ +foreign import ccall unsafe "hs_bindgen_b7a75f9366917fb6" hs_bindgen_b7a75f9366917fb6 :: + IO (Ptr.FunPtr (Botan_mac_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_mac_set_nonce #-} +{-| Sets the nonce on the MAC + + [__@mac@ /(input)/__]: mac object + + [__@nonce@ /(input)/__]: buffer holding the key + + [__@nonce_len@ /(input)/__]: size of the key buffer in bytes + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_set_nonce@ + +__defined at:__ @botan\/ffi.h:497:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_set_nonce :: Ptr.FunPtr (Botan_mac_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_mac_set_nonce = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_b7a75f9366917fb6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mac_update@ +foreign import ccall unsafe "hs_bindgen_8ec104557dac56c7" hs_bindgen_8ec104557dac56c7 :: + IO (Ptr.FunPtr (Botan_mac_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_mac_update #-} +{-| Send more input to the message authentication code + + [__@mac@ /(input)/__]: mac object + + [__@buf@ /(input)/__]: input buffer + + [__@len@ /(input)/__]: number of bytes to read from the input buffer + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_update@ + +__defined at:__ @botan\/ffi.h:506:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_update :: Ptr.FunPtr (Botan_mac_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_mac_update = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_8ec104557dac56c7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mac_final@ +foreign import ccall unsafe "hs_bindgen_860f68157df8fbeb" hs_bindgen_860f68157df8fbeb :: + IO (Ptr.FunPtr (Botan_mac_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt)) + +{-# NOINLINE botan_mac_final #-} +{-| Finalizes the MAC computation and writes the output to out[0:botan_mac_output_length()] then reinitializes for computing another MAC as if botan_mac_clear had been called. + + [__@mac@ /(input)/__]: mac object + + [__@out@ /(input)/__]: output buffer + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_final@ + +__defined at:__ @botan\/ffi.h:516:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_final :: Ptr.FunPtr (Botan_mac_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt) +botan_mac_final = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_860f68157df8fbeb + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mac_clear@ +foreign import ccall unsafe "hs_bindgen_65676c09756e152f" hs_bindgen_65676c09756e152f :: + IO (Ptr.FunPtr (Botan_mac_t -> IO FC.CInt)) + +{-# NOINLINE botan_mac_clear #-} +{-| Reinitializes the state of the MAC computation. A MAC can be computed (with update/final) immediately. + + [__@mac@ /(input)/__]: mac object + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_clear@ + +__defined at:__ @botan\/ffi.h:524:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_clear :: Ptr.FunPtr (Botan_mac_t -> IO FC.CInt) +botan_mac_clear = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_65676c09756e152f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mac_name@ +foreign import ccall unsafe "hs_bindgen_7bde021d1f655721" hs_bindgen_7bde021d1f655721 :: + IO (Ptr.FunPtr (Botan_mac_t -> (Ptr.Ptr FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_mac_name #-} +{-| Get the name of this MAC + + [__@mac@ /(input)/__]: the object to read + + [__@name@ /(input)/__]: output buffer + + [__@name_len@ /(input)/__]: on input, the length of buffer, on success the number of bytes written + +__C declaration:__ @botan_mac_name@ + +__defined at:__ @botan\/ffi.h:532:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_name :: Ptr.FunPtr (Botan_mac_t -> (Ptr.Ptr FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_mac_name = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_7bde021d1f655721 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mac_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_69afaa1d9d4d549e" hs_bindgen_69afaa1d9d4d549e :: + IO (Ptr.FunPtr (Botan_mac_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_mac_get_keyspec #-} +{-| Get the key length limits of this auth code + + [__@mac@ /(input)/__]: the object to read + + [__@out_minimum_keylength@ /(input)/__]: if non-NULL, will be set to minimum keylength of MAC + + [__@out_maximum_keylength@ /(input)/__]: if non-NULL, will be set to maximum keylength of MAC + + [__@out_keylength_modulo@ /(input)/__]: if non-NULL will be set to byte multiple of valid keys + +__C declaration:__ @botan_mac_get_keyspec@ + +__defined at:__ @botan\/ffi.h:542:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_get_keyspec :: Ptr.FunPtr (Botan_mac_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_mac_get_keyspec = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_69afaa1d9d4d549e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mac_destroy@ +foreign import ccall unsafe "hs_bindgen_c222807d449fb085" hs_bindgen_c222807d449fb085 :: + IO (Ptr.FunPtr (Botan_mac_t -> IO FC.CInt)) + +{-# NOINLINE botan_mac_destroy #-} +{-| Frees all resources of the MAC object + + [__@mac@ /(input)/__]: mac object + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_mac_destroy@ + +__defined at:__ @botan\/ffi.h:552:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_destroy :: Ptr.FunPtr (Botan_mac_t -> IO FC.CInt) +botan_mac_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_c222807d449fb085 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_init@ +foreign import ccall unsafe "hs_bindgen_4fead1b3f8e2044a" hs_bindgen_4fead1b3f8e2044a :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_cipher_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_init #-} +{-| Initialize a cipher object + +__C declaration:__ @botan_cipher_init@ + +__defined at:__ @botan\/ffi.h:566:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_init :: Ptr.FunPtr ((Ptr.Ptr Botan_cipher_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_cipher_init = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_4fead1b3f8e2044a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_name@ +foreign import ccall unsafe "hs_bindgen_d72229ec9582e5b8" hs_bindgen_d72229ec9582e5b8 :: + IO (Ptr.FunPtr (Botan_cipher_t -> (Ptr.Ptr FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_name #-} +{-| Return the name of the cipher object + +__C declaration:__ @botan_cipher_name@ + +__defined at:__ @botan\/ffi.h:571:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_name :: Ptr.FunPtr (Botan_cipher_t -> (Ptr.Ptr FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_cipher_name = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_d72229ec9582e5b8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_output_length@ +foreign import ccall unsafe "hs_bindgen_e3c57ff875355541" hs_bindgen_e3c57ff875355541 :: + IO (Ptr.FunPtr (Botan_cipher_t -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_output_length #-} +{-| Return the output length of this cipher, for a particular input length. + +__C declaration:__ @botan_cipher_output_length@ + +__defined at:__ @botan\/ffi.h:576:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_output_length :: Ptr.FunPtr (Botan_cipher_t -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_cipher_output_length = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_e3c57ff875355541 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_valid_nonce_length@ +foreign import ccall unsafe "hs_bindgen_031f9070e0c418ad" hs_bindgen_031f9070e0c418ad :: + IO (Ptr.FunPtr (Botan_cipher_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_valid_nonce_length #-} +{-| Return if the specified nonce length is valid for this cipher + +__C declaration:__ @botan_cipher_valid_nonce_length@ + +__defined at:__ @botan\/ffi.h:581:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_valid_nonce_length :: Ptr.FunPtr (Botan_cipher_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_cipher_valid_nonce_length = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_031f9070e0c418ad + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_get_tag_length@ +foreign import ccall unsafe "hs_bindgen_73e5636fa537d967" hs_bindgen_73e5636fa537d967 :: + IO (Ptr.FunPtr (Botan_cipher_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_get_tag_length #-} +{-| Get the tag length of the cipher (0 for non-AEAD modes) + +__C declaration:__ @botan_cipher_get_tag_length@ + +__defined at:__ @botan\/ffi.h:586:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_get_tag_length :: Ptr.FunPtr (Botan_cipher_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_cipher_get_tag_length = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_73e5636fa537d967 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_is_authenticated@ +foreign import ccall unsafe "hs_bindgen_2d2bc56090f156c0" hs_bindgen_2d2bc56090f156c0 :: + IO (Ptr.FunPtr (Botan_cipher_t -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_is_authenticated #-} +{-| Returns 1 iff the cipher provides authentication as well as confidentiality. + +__C declaration:__ @botan_cipher_is_authenticated@ + +__defined at:__ @botan\/ffi.h:591:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_is_authenticated :: Ptr.FunPtr (Botan_cipher_t -> IO FC.CInt) +botan_cipher_is_authenticated = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_2d2bc56090f156c0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_requires_entire_message@ +foreign import ccall unsafe "hs_bindgen_1796628cbe496875" hs_bindgen_1796628cbe496875 :: + IO (Ptr.FunPtr (Botan_cipher_t -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_requires_entire_message #-} +{-| Returns 1 iff the cipher requires the entire message before any encryption or decryption can be performed. No output data will be produced in botan_cipher_update() until the final flag is set. + +__C declaration:__ @botan_cipher_requires_entire_message@ + +__defined at:__ @botan\/ffi.h:598:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_requires_entire_message :: Ptr.FunPtr (Botan_cipher_t -> IO FC.CInt) +botan_cipher_requires_entire_message = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_1796628cbe496875 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_get_default_nonce_length@ +foreign import ccall unsafe "hs_bindgen_72af846620781ede" hs_bindgen_72af846620781ede :: + IO (Ptr.FunPtr (Botan_cipher_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_get_default_nonce_length #-} +{-| Get the default nonce length of this cipher + +__C declaration:__ @botan_cipher_get_default_nonce_length@ + +__defined at:__ @botan\/ffi.h:603:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_get_default_nonce_length :: Ptr.FunPtr (Botan_cipher_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_cipher_get_default_nonce_length = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_72af846620781ede + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_get_update_granularity@ +foreign import ccall unsafe "hs_bindgen_74de2ccfe72be522" hs_bindgen_74de2ccfe72be522 :: + IO (Ptr.FunPtr (Botan_cipher_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_get_update_granularity #-} +{-| Return the update granularity of the cipher; botan_cipher_update must be called with blocks of this size, except for the final. + +__C declaration:__ @botan_cipher_get_update_granularity@ + +__defined at:__ @botan\/ffi.h:609:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_get_update_granularity :: Ptr.FunPtr (Botan_cipher_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_cipher_get_update_granularity = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_74de2ccfe72be522 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_get_ideal_update_granularity@ +foreign import ccall unsafe "hs_bindgen_0f41c6804fee1ba3" hs_bindgen_0f41c6804fee1ba3 :: + IO (Ptr.FunPtr (Botan_cipher_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_get_ideal_update_granularity #-} +{-| Return the ideal update granularity of the cipher. This is some multiple of the update granularity, reflecting possibilities for optimization. + +__C declaration:__ @botan_cipher_get_ideal_update_granularity@ + +__defined at:__ @botan\/ffi.h:615:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_get_ideal_update_granularity :: Ptr.FunPtr (Botan_cipher_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_cipher_get_ideal_update_granularity = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_0f41c6804fee1ba3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_query_keylen@ +foreign import ccall unsafe "hs_bindgen_515ab88c146d9362" hs_bindgen_515ab88c146d9362 :: + IO (Ptr.FunPtr (Botan_cipher_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_query_keylen #-} +{-| Get information about the key lengths. Prefer botan_cipher_get_keyspec + +__C declaration:__ @botan_cipher_query_keylen@ + +__defined at:__ @botan\/ffi.h:621:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_query_keylen :: Ptr.FunPtr (Botan_cipher_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_cipher_query_keylen = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_515ab88c146d9362 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_8ded925f07ab1a5f" hs_bindgen_8ded925f07ab1a5f :: + IO (Ptr.FunPtr (Botan_cipher_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_get_keyspec #-} +{-| Get information about the supported key lengths. + +__C declaration:__ @botan_cipher_get_keyspec@ + +__defined at:__ @botan\/ffi.h:627:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_get_keyspec :: Ptr.FunPtr (Botan_cipher_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_cipher_get_keyspec = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_8ded925f07ab1a5f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_e729201d2c3de03c" hs_bindgen_e729201d2c3de03c :: + IO (Ptr.FunPtr (Botan_cipher_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_set_key #-} +{-| Set the key for this cipher object + +__C declaration:__ @botan_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:632:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_set_key :: Ptr.FunPtr (Botan_cipher_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_cipher_set_key = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_e729201d2c3de03c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_reset@ +foreign import ccall unsafe "hs_bindgen_8d1272940987cb77" hs_bindgen_8d1272940987cb77 :: + IO (Ptr.FunPtr (Botan_cipher_t -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_reset #-} +{-| Reset the message specific state for this cipher. Without resetting the keys, this resets the nonce, and any state associated with any message bits that have been processed so far. + + It is conceptually equivalent to calling botan_cipher_clear followed by botan_cipher_set_key with the original key. + +__C declaration:__ @botan_cipher_reset@ + +__defined at:__ @botan\/ffi.h:642:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_reset :: Ptr.FunPtr (Botan_cipher_t -> IO FC.CInt) +botan_cipher_reset = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_8d1272940987cb77 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_set_associated_data@ +foreign import ccall unsafe "hs_bindgen_41a90d0369235c9e" hs_bindgen_41a90d0369235c9e :: + IO (Ptr.FunPtr (Botan_cipher_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_set_associated_data #-} +{-| Set the associated data. Will fail if cipher is not an AEAD + +__C declaration:__ @botan_cipher_set_associated_data@ + +__defined at:__ @botan\/ffi.h:647:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_set_associated_data :: Ptr.FunPtr (Botan_cipher_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_cipher_set_associated_data = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_41a90d0369235c9e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_start@ +foreign import ccall unsafe "hs_bindgen_336b22d9cb8b6818" hs_bindgen_336b22d9cb8b6818 :: + IO (Ptr.FunPtr (Botan_cipher_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_start #-} +{-| Begin processing a new message using the provided nonce + +__C declaration:__ @botan_cipher_start@ + +__defined at:__ @botan\/ffi.h:652:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_start :: Ptr.FunPtr (Botan_cipher_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_cipher_start = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_336b22d9cb8b6818 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_update@ +foreign import ccall unsafe "hs_bindgen_740611b5db96a08b" hs_bindgen_740611b5db96a08b :: + IO (Ptr.FunPtr (Botan_cipher_t -> HsBindgen.Runtime.Prelude.Word32 -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_update #-} +{-| + + Encrypt/Decrypt some data and/or finalize the encryption/decryption + + This encrypts as many bytes from @input_bytes@ into @output_bytes@ as possible. Unless ``BOTAN_CIPHER_UPDATE_FLAG_FINAL`` is set, this function will consume bytes in multiples of botan_cipher_get_update_granularity(). @input_consumed@ and @output_written@ will be set accordingly and it is the caller's responsibility to adapt their buffers accordingly before calling this function again. Note that, unless ``BOTAN_CIPHER_UPDATE_FLAG_FINAL`` is set, the cipher will at most generate @input_size@ output bytes. + + Eventually, the caller must set the ``BOTAN_CIPHER_UPDATE_FLAG_FINAL`` flag to indicate that no more input will be provided. This will cause the cipher to consume all given input bytes and produce the final output; or return a ``BOTAN_FFI_ERROR_INSUFFICIENT_BUFFER_SPACE`` error if the given output buffer was too small. In the latter case, @output_written@ will be set to the required buffer size. Calling again with ``BOTAN_CIPHER_UPDATE_FLAG_FINAL``, a big enough buffer and no further input will then produce the final output. + + Note that some ciphers require the entire message to be provided before any output is produced. + + __see:__ botan_cipher_requires_entire_message(). + +__C declaration:__ @botan_cipher_update@ + +__defined at:__ @botan\/ffi.h:679:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_update :: Ptr.FunPtr (Botan_cipher_t -> HsBindgen.Runtime.Prelude.Word32 -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_cipher_update = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_740611b5db96a08b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_dc0f8c22034a5833" hs_bindgen_dc0f8c22034a5833 :: + IO (Ptr.FunPtr (Botan_cipher_t -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_clear #-} +{-| Reset the key, nonce, AD and all other state on this cipher object + +__C declaration:__ @botan_cipher_clear@ + +__defined at:__ @botan\/ffi.h:691:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_clear :: Ptr.FunPtr (Botan_cipher_t -> IO FC.CInt) +botan_cipher_clear = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_dc0f8c22034a5833 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_96fe201c76964655" hs_bindgen_96fe201c76964655 :: + IO (Ptr.FunPtr (Botan_cipher_t -> IO FC.CInt)) + +{-# NOINLINE botan_cipher_destroy #-} +{-| Destroy the cipher object + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_cipher_destroy@ + +__defined at:__ @botan\/ffi.h:697:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_destroy :: Ptr.FunPtr (Botan_cipher_t -> IO FC.CInt) +botan_cipher_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_96fe201c76964655 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pbkdf@ +foreign import ccall unsafe "hs_bindgen_9e415c6de52504b9" hs_bindgen_9e415c6de52504b9 :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_pbkdf #-} +{-| __C declaration:__ @botan_pbkdf@ + + __defined at:__ @botan\/ffi.h:716:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pbkdf :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_pbkdf = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_9e415c6de52504b9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pbkdf_timed@ +foreign import ccall unsafe "hs_bindgen_2e3766aa29e0dde7" hs_bindgen_2e3766aa29e0dde7 :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_pbkdf_timed #-} +{-| Derive a key from a passphrase, running until msec time has elapsed. + + [__@pbkdf_algo@ /(input)/__]: PBKDF algorithm, e.g., "PBKDF2(SHA-256)" + + [__@out@ /(input)/__]: buffer to store the derived key, must be of out_len bytes + + [__@out_len@ /(input)/__]: the desired length of the key to produce + + [__@passphrase@ /(input)/__]: the password to derive the key from + + [__@salt@ /(input)/__]: a randomly chosen salt + + [__@salt_len@ /(input)/__]: length of salt in bytes + + [__@milliseconds_to_run@ /(input)/__]: if iterations is zero, then instead the PBKDF is run until milliseconds_to_run milliseconds has passed + + [__@out_iterations_used@ /(input)/__]: set to the number iterations executed + + __returns:__ 0 on success, a negative value on failure + + Deprecated: use + + botan_pwdhash_timed(pbkdf_algo, static_cast (ms_to_run), iterations_used, nullptr, nullptr, out, out_len, password, 0, salt, salt_len); + +__C declaration:__ @botan_pbkdf_timed@ + +__defined at:__ @botan\/ffi.h:749:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pbkdf_timed :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_pbkdf_timed = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_2e3766aa29e0dde7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pwdhash@ +foreign import ccall unsafe "hs_bindgen_c6841ba8bd1960d3" hs_bindgen_c6841ba8bd1960d3 :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_pwdhash #-} +{-| __C declaration:__ @botan_pwdhash@ + + __defined at:__ @botan\/ffi.h:773:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pwdhash :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_pwdhash = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_c6841ba8bd1960d3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pwdhash_timed@ +foreign import ccall unsafe "hs_bindgen_365a1434b68976c5" hs_bindgen_365a1434b68976c5 :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_pwdhash_timed #-} +{-| __C declaration:__ @botan_pwdhash_timed@ + + __defined at:__ @botan\/ffi.h:800:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pwdhash_timed :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_pwdhash_timed = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_365a1434b68976c5 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_scrypt@ +foreign import ccall unsafe "hs_bindgen_e2bfd4286a1af5a3" hs_bindgen_e2bfd4286a1af5a3 :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_scrypt #-} +{-| Derive a key using scrypt Deprecated; use botan_pwdhash("Scrypt", N, r, p, out, out_len, password, 0, salt, salt_len); + +__C declaration:__ @botan_scrypt@ + +__defined at:__ @botan\/ffi.h:819:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_scrypt :: Ptr.FunPtr ((HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_scrypt = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_e2bfd4286a1af5a3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_kdf@ +foreign import ccall unsafe "hs_bindgen_9f7ef64c55703aad" hs_bindgen_9f7ef64c55703aad :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_kdf #-} +{-| Derive a key + + [__@kdf_algo@ /(input)/__]: KDF algorithm, e.g., "SP800-56C" + + [__@out@ /(input)/__]: buffer holding the derived key, must be of length out_len + + [__@out_len@ /(input)/__]: the desired output length in bytes + + [__@secret@ /(input)/__]: the secret input + + [__@secret_len@ /(input)/__]: size of secret in bytes + + [__@salt@ /(input)/__]: a diversifier + + [__@salt_len@ /(input)/__]: size of salt in bytes + + [__@label@ /(input)/__]: purpose for the derived keying material + + [__@label_len@ /(input)/__]: size of label in bytes + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_kdf@ + +__defined at:__ @botan\/ffi.h:842:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_kdf :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_kdf = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_9f7ef64c55703aad + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_block_cipher_init@ +foreign import ccall unsafe "hs_bindgen_d026d64a520f377d" hs_bindgen_d026d64a520f377d :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_block_cipher_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_block_cipher_init #-} +{-| Initialize a block cipher object + +__C declaration:__ @botan_block_cipher_init@ + +__defined at:__ @botan\/ffi.h:860:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_init :: Ptr.FunPtr ((Ptr.Ptr Botan_block_cipher_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_block_cipher_init = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_d026d64a520f377d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_block_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_f93633cd8b02f7b9" hs_bindgen_f93633cd8b02f7b9 :: + IO (Ptr.FunPtr (Botan_block_cipher_t -> IO FC.CInt)) + +{-# NOINLINE botan_block_cipher_destroy #-} +{-| Destroy a block cipher object + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_block_cipher_destroy@ + +__defined at:__ @botan\/ffi.h:866:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_destroy :: Ptr.FunPtr (Botan_block_cipher_t -> IO FC.CInt) +botan_block_cipher_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_f93633cd8b02f7b9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_block_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_652a553f56f0be97" hs_bindgen_652a553f56f0be97 :: + IO (Ptr.FunPtr (Botan_block_cipher_t -> IO FC.CInt)) + +{-# NOINLINE botan_block_cipher_clear #-} +{-| Reinitializes the block cipher + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_block_cipher_clear@ + +__defined at:__ @botan\/ffi.h:872:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_clear :: Ptr.FunPtr (Botan_block_cipher_t -> IO FC.CInt) +botan_block_cipher_clear = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_652a553f56f0be97 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_block_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_ea4c5d02a60c5c48" hs_bindgen_ea4c5d02a60c5c48 :: + IO (Ptr.FunPtr (Botan_block_cipher_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_block_cipher_set_key #-} +{-| Set the key for a block cipher instance + +__C declaration:__ @botan_block_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:877:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_set_key :: Ptr.FunPtr (Botan_block_cipher_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_block_cipher_set_key = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_ea4c5d02a60c5c48 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_block_cipher_block_size@ +foreign import ccall unsafe "hs_bindgen_2fd420e70755738f" hs_bindgen_2fd420e70755738f :: + IO (Ptr.FunPtr (Botan_block_cipher_t -> IO FC.CInt)) + +{-# NOINLINE botan_block_cipher_block_size #-} +{-| Return the positive block size of this block cipher, or negative to indicate an error + +__C declaration:__ @botan_block_cipher_block_size@ + +__defined at:__ @botan\/ffi.h:883:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_block_size :: Ptr.FunPtr (Botan_block_cipher_t -> IO FC.CInt) +botan_block_cipher_block_size = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_2fd420e70755738f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_block_cipher_encrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_06d19c85043ff598" hs_bindgen_06d19c85043ff598 :: + IO (Ptr.FunPtr (Botan_block_cipher_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_block_cipher_encrypt_blocks #-} +{-| Encrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_encrypt_blocks@ + +__defined at:__ @botan\/ffi.h:889:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_encrypt_blocks :: Ptr.FunPtr (Botan_block_cipher_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_block_cipher_encrypt_blocks = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_06d19c85043ff598 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_block_cipher_decrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_be74dea7187a8d12" hs_bindgen_be74dea7187a8d12 :: + IO (Ptr.FunPtr (Botan_block_cipher_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_block_cipher_decrypt_blocks #-} +{-| Decrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_decrypt_blocks@ + +__defined at:__ @botan\/ffi.h:895:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_decrypt_blocks :: Ptr.FunPtr (Botan_block_cipher_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_block_cipher_decrypt_blocks = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_be74dea7187a8d12 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_block_cipher_name@ +foreign import ccall unsafe "hs_bindgen_6e2da01d53296720" hs_bindgen_6e2da01d53296720 :: + IO (Ptr.FunPtr (Botan_block_cipher_t -> (Ptr.Ptr FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_block_cipher_name #-} +{-| Get the name of this block cipher + + [__@cipher@ /(input)/__]: the object to read + + [__@name@ /(input)/__]: output buffer + + [__@name_len@ /(input)/__]: on input, the length of buffer, on success the number of bytes written + +__C declaration:__ @botan_block_cipher_name@ + +__defined at:__ @botan\/ffi.h:903:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_name :: Ptr.FunPtr (Botan_block_cipher_t -> (Ptr.Ptr FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_block_cipher_name = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_6e2da01d53296720 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_block_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_abbd1b03fd22eed4" hs_bindgen_abbd1b03fd22eed4 :: + IO (Ptr.FunPtr (Botan_block_cipher_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_block_cipher_get_keyspec #-} +{-| Get the key length limits of this block cipher + + [__@cipher@ /(input)/__]: the object to read + + [__@out_minimum_keylength@ /(input)/__]: if non-NULL, will be set to minimum keylength of cipher + + [__@out_maximum_keylength@ /(input)/__]: if non-NULL, will be set to maximum keylength of cipher + + [__@out_keylength_modulo@ /(input)/__]: if non-NULL will be set to byte multiple of valid keys + +__C declaration:__ @botan_block_cipher_get_keyspec@ + +__defined at:__ @botan\/ffi.h:913:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_get_keyspec :: Ptr.FunPtr (Botan_block_cipher_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_block_cipher_get_keyspec = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_abbd1b03fd22eed4 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_init@ +foreign import ccall unsafe "hs_bindgen_577c4f6067150e23" hs_bindgen_577c4f6067150e23 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_mp_t) -> IO FC.CInt)) + +{-# NOINLINE botan_mp_init #-} +{-| Initialize an MPI + +__C declaration:__ @botan_mp_init@ + +__defined at:__ @botan\/ffi.h:926:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_init :: Ptr.FunPtr ((Ptr.Ptr Botan_mp_t) -> IO FC.CInt) +botan_mp_init = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_577c4f6067150e23 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_destroy@ +foreign import ccall unsafe "hs_bindgen_457c361447c2acab" hs_bindgen_457c361447c2acab :: + IO (Ptr.FunPtr (Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_destroy #-} +{-| Destroy (deallocate) an MPI + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_mp_destroy@ + +__defined at:__ @botan\/ffi.h:932:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_destroy :: Ptr.FunPtr (Botan_mp_t -> IO FC.CInt) +botan_mp_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_457c361447c2acab + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_to_hex@ +foreign import ccall unsafe "hs_bindgen_da1ca0b0c470bf61" hs_bindgen_da1ca0b0c470bf61 :: + IO (Ptr.FunPtr (Botan_mp_t -> (Ptr.Ptr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_mp_to_hex #-} +{-| Convert the MPI to a hex string. Writes up to botan_mp_num_bytes(mp)*2 + 5 bytes + + Prefer botan_mp_view_hex + +__C declaration:__ @botan_mp_to_hex@ + +__defined at:__ @botan\/ffi.h:939:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_to_hex :: Ptr.FunPtr (Botan_mp_t -> (Ptr.Ptr FC.CChar) -> IO FC.CInt) +botan_mp_to_hex = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_da1ca0b0c470bf61 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_view_hex@ +foreign import ccall unsafe "hs_bindgen_68247a95b3b75b4a" hs_bindgen_68247a95b3b75b4a :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_view_ctx -> Botan_view_str_fn -> IO FC.CInt)) + +{-# NOINLINE botan_mp_view_hex #-} +{-| View the hex string encoding of the MPI. + +__C declaration:__ @botan_mp_view_hex@ + +__defined at:__ @botan\/ffi.h:944:29@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_view_hex :: Ptr.FunPtr (Botan_mp_t -> Botan_view_ctx -> Botan_view_str_fn -> IO FC.CInt) +botan_mp_view_hex = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_68247a95b3b75b4a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_to_str@ +foreign import ccall unsafe "hs_bindgen_5549b03b3ce13c9a" hs_bindgen_5549b03b3ce13c9a :: + IO (Ptr.FunPtr (Botan_mp_t -> HsBindgen.Runtime.Prelude.Word8 -> (Ptr.Ptr FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_mp_to_str #-} +{-| Convert the MPI to a string. Currently radix == 10 and radix == 16 are supported. + +__C declaration:__ @botan_mp_to_str@ + +__defined at:__ @botan\/ffi.h:949:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_to_str :: Ptr.FunPtr (Botan_mp_t -> HsBindgen.Runtime.Prelude.Word8 -> (Ptr.Ptr FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_mp_to_str = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_5549b03b3ce13c9a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_view_str@ +foreign import ccall unsafe "hs_bindgen_8d2e11ba701c86ee" hs_bindgen_8d2e11ba701c86ee :: + IO (Ptr.FunPtr (Botan_mp_t -> HsBindgen.Runtime.Prelude.Word8 -> Botan_view_ctx -> Botan_view_str_fn -> IO FC.CInt)) + +{-# NOINLINE botan_mp_view_str #-} +{-| View the MPI as a radix-N integer. Currently only radix 10 and radix 16 are supported + +__C declaration:__ @botan_mp_view_str@ + +__defined at:__ @botan\/ffi.h:954:29@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_view_str :: Ptr.FunPtr (Botan_mp_t -> HsBindgen.Runtime.Prelude.Word8 -> Botan_view_ctx -> Botan_view_str_fn -> IO FC.CInt) +botan_mp_view_str = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_8d2e11ba701c86ee + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_clear@ +foreign import ccall unsafe "hs_bindgen_4a2f2f261de83462" hs_bindgen_4a2f2f261de83462 :: + IO (Ptr.FunPtr (Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_clear #-} +{-| Set the MPI to zero + +__C declaration:__ @botan_mp_clear@ + +__defined at:__ @botan\/ffi.h:959:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear :: Ptr.FunPtr (Botan_mp_t -> IO FC.CInt) +botan_mp_clear = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_4a2f2f261de83462 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_set_from_int@ +foreign import ccall unsafe "hs_bindgen_c0945ac7f73b71c0" hs_bindgen_c0945ac7f73b71c0 :: + IO (Ptr.FunPtr (Botan_mp_t -> FC.CInt -> IO FC.CInt)) + +{-# NOINLINE botan_mp_set_from_int #-} +{-| Set the MPI value from an int + +__C declaration:__ @botan_mp_set_from_int@ + +__defined at:__ @botan\/ffi.h:964:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_set_from_int :: Ptr.FunPtr (Botan_mp_t -> FC.CInt -> IO FC.CInt) +botan_mp_set_from_int = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_c0945ac7f73b71c0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_set_from_mp@ +foreign import ccall unsafe "hs_bindgen_73fd06d2ce89fad2" hs_bindgen_73fd06d2ce89fad2 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_set_from_mp #-} +{-| Set the MPI value from another MP object + +__C declaration:__ @botan_mp_set_from_mp@ + +__defined at:__ @botan\/ffi.h:969:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_set_from_mp :: Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_mp_set_from_mp = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_73fd06d2ce89fad2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_set_from_str@ +foreign import ccall unsafe "hs_bindgen_e3bdfaca1b7e387e" hs_bindgen_e3bdfaca1b7e387e :: + IO (Ptr.FunPtr (Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_mp_set_from_str #-} +{-| Set the MPI value from a string + +__C declaration:__ @botan_mp_set_from_str@ + +__defined at:__ @botan\/ffi.h:974:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_set_from_str :: Ptr.FunPtr (Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_mp_set_from_str = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_e3bdfaca1b7e387e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_set_from_radix_str@ +foreign import ccall unsafe "hs_bindgen_f0f08d1fadfd07a5" hs_bindgen_f0f08d1fadfd07a5 :: + IO (Ptr.FunPtr (Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_mp_set_from_radix_str #-} +{-| Set the MPI value from a string with arbitrary radix. For arbitrary being 10 or 16. + +__C declaration:__ @botan_mp_set_from_radix_str@ + +__defined at:__ @botan\/ffi.h:980:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_set_from_radix_str :: Ptr.FunPtr (Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_mp_set_from_radix_str = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_f0f08d1fadfd07a5 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_num_bits@ +foreign import ccall unsafe "hs_bindgen_e9e83a517123cd47" hs_bindgen_e9e83a517123cd47 :: + IO (Ptr.FunPtr (Botan_mp_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_mp_num_bits #-} +{-| Return the number of significant bits in the MPI + +__C declaration:__ @botan_mp_num_bits@ + +__defined at:__ @botan\/ffi.h:985:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_num_bits :: Ptr.FunPtr (Botan_mp_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_mp_num_bits = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_e9e83a517123cd47 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_num_bytes@ +foreign import ccall unsafe "hs_bindgen_c7e0f07c0ef56c74" hs_bindgen_c7e0f07c0ef56c74 :: + IO (Ptr.FunPtr (Botan_mp_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_mp_num_bytes #-} +{-| Return the number of significant bytes in the MPI + +__C declaration:__ @botan_mp_num_bytes@ + +__defined at:__ @botan\/ffi.h:990:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_num_bytes :: Ptr.FunPtr (Botan_mp_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_mp_num_bytes = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_c7e0f07c0ef56c74 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_to_bin@ +foreign import ccall unsafe "hs_bindgen_a9a2668d4f397ea1" hs_bindgen_a9a2668d4f397ea1 :: + IO (Ptr.FunPtr (Botan_mp_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt)) + +{-# NOINLINE botan_mp_to_bin #-} +{-| __C declaration:__ @botan_mp_to_bin@ + + __defined at:__ @botan\/ffi.h:997:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_to_bin :: Ptr.FunPtr (Botan_mp_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt) +botan_mp_to_bin = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_a9a2668d4f397ea1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_view_bin@ +foreign import ccall unsafe "hs_bindgen_1c092ddb2a245910" hs_bindgen_1c092ddb2a245910 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt)) + +{-# NOINLINE botan_mp_view_bin #-} +{-| __C declaration:__ @botan_mp_view_bin@ + + __defined at:__ @botan\/ffi.h:1004:29@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_view_bin :: Ptr.FunPtr (Botan_mp_t -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt) +botan_mp_view_bin = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_1c092ddb2a245910 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_from_bin@ +foreign import ccall unsafe "hs_bindgen_a341c234623930b8" hs_bindgen_a341c234623930b8 :: + IO (Ptr.FunPtr (Botan_mp_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_mp_from_bin #-} +{-| __C declaration:__ @botan_mp_from_bin@ + + __defined at:__ @botan\/ffi.h:1009:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_from_bin :: Ptr.FunPtr (Botan_mp_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_mp_from_bin = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_a341c234623930b8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_to_uint32@ +foreign import ccall unsafe "hs_bindgen_677c2778524b0d07" hs_bindgen_677c2778524b0d07 :: + IO (Ptr.FunPtr (Botan_mp_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word32) -> IO FC.CInt)) + +{-# NOINLINE botan_mp_to_uint32 #-} +{-| __C declaration:__ @botan_mp_to_uint32@ + + __defined at:__ @botan\/ffi.h:1014:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_to_uint32 :: Ptr.FunPtr (Botan_mp_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word32) -> IO FC.CInt) +botan_mp_to_uint32 = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_677c2778524b0d07 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_is_positive@ +foreign import ccall unsafe "hs_bindgen_cb538ab2222735e2" hs_bindgen_cb538ab2222735e2 :: + IO (Ptr.FunPtr (Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_is_positive #-} +{-| This function should have been named mp_is_non_negative. Returns 1 iff mp is greater than *or equal to* zero. Use botan_mp_is_negative to detect negative numbers, botan_mp_is_zero to check for zero. + +__C declaration:__ @botan_mp_is_positive@ + +__defined at:__ @botan\/ffi.h:1021:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_positive :: Ptr.FunPtr (Botan_mp_t -> IO FC.CInt) +botan_mp_is_positive = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_cb538ab2222735e2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_is_negative@ +foreign import ccall unsafe "hs_bindgen_1b7c4297aa4273dc" hs_bindgen_1b7c4297aa4273dc :: + IO (Ptr.FunPtr (Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_is_negative #-} +{-| Return 1 iff mp is less than 0 + +__C declaration:__ @botan_mp_is_negative@ + +__defined at:__ @botan\/ffi.h:1026:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_negative :: Ptr.FunPtr (Botan_mp_t -> IO FC.CInt) +botan_mp_is_negative = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_1b7c4297aa4273dc + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_flip_sign@ +foreign import ccall unsafe "hs_bindgen_70fed8b0210c915f" hs_bindgen_70fed8b0210c915f :: + IO (Ptr.FunPtr (Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_flip_sign #-} +{-| __C declaration:__ @botan_mp_flip_sign@ + + __defined at:__ @botan\/ffi.h:1028:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_flip_sign :: Ptr.FunPtr (Botan_mp_t -> IO FC.CInt) +botan_mp_flip_sign = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_70fed8b0210c915f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_is_zero@ +foreign import ccall unsafe "hs_bindgen_fd67095b712d030c" hs_bindgen_fd67095b712d030c :: + IO (Ptr.FunPtr (Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_is_zero #-} +{-| __C declaration:__ @botan_mp_is_zero@ + + __defined at:__ @botan\/ffi.h:1030:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_zero :: Ptr.FunPtr (Botan_mp_t -> IO FC.CInt) +botan_mp_is_zero = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_fd67095b712d030c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_is_odd@ +foreign import ccall unsafe "hs_bindgen_8764b49f0f6d0c11" hs_bindgen_8764b49f0f6d0c11 :: + IO (Ptr.FunPtr (Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_is_odd #-} +{-| __C declaration:__ @botan_mp_is_odd@ + + __defined at:__ @botan\/ffi.h:1032:76@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_odd :: Ptr.FunPtr (Botan_mp_t -> IO FC.CInt) +botan_mp_is_odd = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_8764b49f0f6d0c11 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_is_even@ +foreign import ccall unsafe "hs_bindgen_488335e646053fa9" hs_bindgen_488335e646053fa9 :: + IO (Ptr.FunPtr (Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_is_even #-} +{-| __C declaration:__ @botan_mp_is_even@ + + __defined at:__ @botan\/ffi.h:1033:76@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_even :: Ptr.FunPtr (Botan_mp_t -> IO FC.CInt) +botan_mp_is_even = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_488335e646053fa9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_add_u32@ +foreign import ccall unsafe "hs_bindgen_aa89ffd0abed2b78" hs_bindgen_aa89ffd0abed2b78 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_mp_add_u32 #-} +{-| __C declaration:__ @botan_mp_add_u32@ + + __defined at:__ @botan\/ffi.h:1035:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_add_u32 :: Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_mp_add_u32 = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_aa89ffd0abed2b78 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_sub_u32@ +foreign import ccall unsafe "hs_bindgen_8023236b9ee60625" hs_bindgen_8023236b9ee60625 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_mp_sub_u32 #-} +{-| __C declaration:__ @botan_mp_sub_u32@ + + __defined at:__ @botan\/ffi.h:1036:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_sub_u32 :: Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_mp_sub_u32 = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_8023236b9ee60625 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_add@ +foreign import ccall unsafe "hs_bindgen_444ed599c155cf7b" hs_bindgen_444ed599c155cf7b :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_add #-} +{-| __C declaration:__ @botan_mp_add@ + + __defined at:__ @botan\/ffi.h:1038:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_add :: Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_mp_add = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_444ed599c155cf7b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_sub@ +foreign import ccall unsafe "hs_bindgen_b60a5d97ca4638f5" hs_bindgen_b60a5d97ca4638f5 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_sub #-} +{-| __C declaration:__ @botan_mp_sub@ + + __defined at:__ @botan\/ffi.h:1039:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_sub :: Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_mp_sub = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_b60a5d97ca4638f5 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_mul@ +foreign import ccall unsafe "hs_bindgen_36257f319618c8af" hs_bindgen_36257f319618c8af :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_mul #-} +{-| __C declaration:__ @botan_mp_mul@ + + __defined at:__ @botan\/ffi.h:1040:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_mul :: Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_mp_mul = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_36257f319618c8af + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_div@ +foreign import ccall unsafe "hs_bindgen_60dedbf9103741ed" hs_bindgen_60dedbf9103741ed :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_div #-} +{-| __C declaration:__ @botan_mp_div@ + + __defined at:__ @botan\/ffi.h:1043:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_div :: Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_mp_div = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_60dedbf9103741ed + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_mod_mul@ +foreign import ccall unsafe "hs_bindgen_c558bab74faf8338" hs_bindgen_c558bab74faf8338 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_mod_mul #-} +{-| __C declaration:__ @botan_mp_mod_mul@ + + __defined at:__ @botan\/ffi.h:1046:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_mod_mul :: Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_mp_mod_mul = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_c558bab74faf8338 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_equal@ +foreign import ccall unsafe "hs_bindgen_b5ebfeb880dc4d8b" hs_bindgen_b5ebfeb880dc4d8b :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_equal #-} +{-| __C declaration:__ @botan_mp_equal@ + + __defined at:__ @botan\/ffi.h:1053:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_equal :: Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_mp_equal = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_b5ebfeb880dc4d8b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_cmp@ +foreign import ccall unsafe "hs_bindgen_012a1bb06790c5e0" hs_bindgen_012a1bb06790c5e0 :: + IO (Ptr.FunPtr ((Ptr.Ptr FC.CInt) -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_cmp #-} +{-| __C declaration:__ @botan_mp_cmp@ + + __defined at:__ @botan\/ffi.h:1060:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_cmp :: Ptr.FunPtr ((Ptr.Ptr FC.CInt) -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_mp_cmp = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_012a1bb06790c5e0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_swap@ +foreign import ccall unsafe "hs_bindgen_bffb2b9a0b383e6d" hs_bindgen_bffb2b9a0b383e6d :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_swap #-} +{-| __C declaration:__ @botan_mp_swap@ + + __defined at:__ @botan\/ffi.h:1065:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_swap :: Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_mp_swap = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_bffb2b9a0b383e6d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_powmod@ +foreign import ccall unsafe "hs_bindgen_3df13dac2e0aefb8" hs_bindgen_3df13dac2e0aefb8 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_powmod #-} +{-| __C declaration:__ @botan_mp_powmod@ + + __defined at:__ @botan\/ffi.h:1069:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_powmod :: Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_mp_powmod = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_3df13dac2e0aefb8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_lshift@ +foreign import ccall unsafe "hs_bindgen_8bf8815a17008a0c" hs_bindgen_8bf8815a17008a0c :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_mp_lshift #-} +{-| __C declaration:__ @botan_mp_lshift@ + + __defined at:__ @botan\/ffi.h:1071:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_lshift :: Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_mp_lshift = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_8bf8815a17008a0c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_rshift@ +foreign import ccall unsafe "hs_bindgen_a0768d808ed1a907" hs_bindgen_a0768d808ed1a907 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_mp_rshift #-} +{-| __C declaration:__ @botan_mp_rshift@ + + __defined at:__ @botan\/ffi.h:1072:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_rshift :: Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_mp_rshift = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_a0768d808ed1a907 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_mod_inverse@ +foreign import ccall unsafe "hs_bindgen_6dbedf98bd0c5ebc" hs_bindgen_6dbedf98bd0c5ebc :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_mod_inverse #-} +{-| __C declaration:__ @botan_mp_mod_inverse@ + + __defined at:__ @botan\/ffi.h:1074:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_mod_inverse :: Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_mp_mod_inverse = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_6dbedf98bd0c5ebc + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_rand_bits@ +foreign import ccall unsafe "hs_bindgen_676dd03a769a62e3" hs_bindgen_676dd03a769a62e3 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_mp_rand_bits #-} +{-| __C declaration:__ @botan_mp_rand_bits@ + + __defined at:__ @botan\/ffi.h:1076:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_rand_bits :: Ptr.FunPtr (Botan_mp_t -> Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_mp_rand_bits = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_676dd03a769a62e3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_rand_range@ +foreign import ccall unsafe "hs_bindgen_94683a2037e5c657" hs_bindgen_94683a2037e5c657 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_rng_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_rand_range #-} +{-| __C declaration:__ @botan_mp_rand_range@ + + __defined at:__ @botan\/ffi.h:1079:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_rand_range :: Ptr.FunPtr (Botan_mp_t -> Botan_rng_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_mp_rand_range = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_94683a2037e5c657 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_gcd@ +foreign import ccall unsafe "hs_bindgen_8fc100fdec481073" hs_bindgen_8fc100fdec481073 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_mp_gcd #-} +{-| __C declaration:__ @botan_mp_gcd@ + + __defined at:__ @botan\/ffi.h:1081:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_gcd :: Ptr.FunPtr (Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_mp_gcd = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_8fc100fdec481073 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_is_prime@ +foreign import ccall unsafe "hs_bindgen_9d525c6ed21dfa75" hs_bindgen_9d525c6ed21dfa75 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_mp_is_prime #-} +{-| Returns 0 if n is not prime Returns 1 if n is prime Returns negative number on error + +__C declaration:__ @botan_mp_is_prime@ + +__defined at:__ @botan\/ffi.h:1088:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_prime :: Ptr.FunPtr (Botan_mp_t -> Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_mp_is_prime = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_9d525c6ed21dfa75 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_get_bit@ +foreign import ccall unsafe "hs_bindgen_83acbae5365408a6" hs_bindgen_83acbae5365408a6 :: + IO (Ptr.FunPtr (Botan_mp_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_mp_get_bit #-} +{-| Returns 0 if specified bit of n is not set Returns 1 if specified bit of n is set Returns negative number on error + +__C declaration:__ @botan_mp_get_bit@ + +__defined at:__ @botan\/ffi.h:1095:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_get_bit :: Ptr.FunPtr (Botan_mp_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_mp_get_bit = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_83acbae5365408a6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_set_bit@ +foreign import ccall unsafe "hs_bindgen_ae14e3ae293bcc22" hs_bindgen_ae14e3ae293bcc22 :: + IO (Ptr.FunPtr (Botan_mp_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_mp_set_bit #-} +{-| Set the specified bit + +__C declaration:__ @botan_mp_set_bit@ + +__defined at:__ @botan\/ffi.h:1100:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_set_bit :: Ptr.FunPtr (Botan_mp_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_mp_set_bit = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_ae14e3ae293bcc22 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mp_clear_bit@ +foreign import ccall unsafe "hs_bindgen_141ffdddde386621" hs_bindgen_141ffdddde386621 :: + IO (Ptr.FunPtr (Botan_mp_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_mp_clear_bit #-} +{-| Clear the specified bit + +__C declaration:__ @botan_mp_clear_bit@ + +__defined at:__ @botan\/ffi.h:1105:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear_bit :: Ptr.FunPtr (Botan_mp_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_mp_clear_bit = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_141ffdddde386621 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_bcrypt_generate@ +foreign import ccall unsafe "hs_bindgen_56b5878fee6580be" hs_bindgen_56b5878fee6580be :: + IO (Ptr.FunPtr ((Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_bcrypt_generate #-} +{-| Create a password hash using Bcrypt + + [__@out@ /(input)/__]: buffer holding the password hash, should be of length 64 bytes + + [__@out_len@ /(input)/__]: the desired output length in bytes + + [__@password@ /(input)/__]: the password + + [__@rng@ /(input)/__]: a random number generator + + [__@work_factor@ /(input)/__]: how much work to do to slow down guessing attacks + + [__@flags@ /(input)/__]: should be 0 in current API revision, all other uses are reserved and return BOTAN_FFI_ERROR_BAD_FLAG + + __returns:__ 0 on success, a negative value on failure + + Output is formatted bcrypt $2a$... + + TOD(Botan4) this should use char for the type of `out` + +__C declaration:__ @botan_bcrypt_generate@ + +__defined at:__ @botan\/ffi.h:1125:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_bcrypt_generate :: Ptr.FunPtr ((Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_bcrypt_generate = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_56b5878fee6580be + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_bcrypt_is_valid@ +foreign import ccall unsafe "hs_bindgen_c0a8d5cc72fa3a9e" hs_bindgen_c0a8d5cc72fa3a9e :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_bcrypt_is_valid #-} +{-| Check a previously created password hash + + [__@pass@ /(input)/__]: the password to check against + + [__@hash@ /(input)/__]: the stored hash to check against + + __returns:__ 0 if if this password/hash combination is valid, 1 if the combination is not valid (but otherwise well formed), negative on error + +__C declaration:__ @botan_bcrypt_is_valid@ + +__defined at:__ @botan\/ffi.h:1136:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_bcrypt_is_valid :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_bcrypt_is_valid = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_c0a8d5cc72fa3a9e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_oid_destroy@ +foreign import ccall unsafe "hs_bindgen_df487821a04f2db4" hs_bindgen_df487821a04f2db4 :: + IO (Ptr.FunPtr (Botan_asn1_oid_t -> IO FC.CInt)) + +{-# NOINLINE botan_oid_destroy #-} +{-| + + __returns:__ negative number on error, or zero on success + +__C declaration:__ @botan_oid_destroy@ + +__defined at:__ @botan\/ffi.h:1147:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_oid_destroy :: Ptr.FunPtr (Botan_asn1_oid_t -> IO FC.CInt) +botan_oid_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_df487821a04f2db4 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_oid_from_string@ +foreign import ccall unsafe "hs_bindgen_0d2708ab668a332b" hs_bindgen_0d2708ab668a332b :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_asn1_oid_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_oid_from_string #-} +{-| Create an OID from a string, either dot notation (e.g. '1.2.3.4') or a registered name (e.g. 'RSA') + + [__@oid@ /(input)/__]: handle to the resulting OID + + [__@oid_str@ /(input)/__]: the name of the OID to create + + __returns:__ negative number on error, or zero on success + +__C declaration:__ @botan_oid_from_string@ + +__defined at:__ @botan\/ffi.h:1155:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_oid_from_string :: Ptr.FunPtr ((Ptr.Ptr Botan_asn1_oid_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_oid_from_string = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_0d2708ab668a332b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_oid_register@ +foreign import ccall unsafe "hs_bindgen_5a6b530c0c628435" hs_bindgen_5a6b530c0c628435 :: + IO (Ptr.FunPtr (Botan_asn1_oid_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_oid_register #-} +{-| Registers an OID so that it may later be retrieved by name + + __returns:__ negative number on error, or zero on success + +__C declaration:__ @botan_oid_register@ + +__defined at:__ @botan\/ffi.h:1161:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_oid_register :: Ptr.FunPtr (Botan_asn1_oid_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_oid_register = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_5a6b530c0c628435 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_oid_view_string@ +foreign import ccall unsafe "hs_bindgen_4b1fff1d8682e5b0" hs_bindgen_4b1fff1d8682e5b0 :: + IO (Ptr.FunPtr (Botan_asn1_oid_t -> Botan_view_ctx -> Botan_view_str_fn -> IO FC.CInt)) + +{-# NOINLINE botan_oid_view_string #-} +{-| View an OID in dot notation + +__C declaration:__ @botan_oid_view_string@ + +__defined at:__ @botan\/ffi.h:1166:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_oid_view_string :: Ptr.FunPtr (Botan_asn1_oid_t -> Botan_view_ctx -> Botan_view_str_fn -> IO FC.CInt) +botan_oid_view_string = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_4b1fff1d8682e5b0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_oid_view_name@ +foreign import ccall unsafe "hs_bindgen_f43b424d2e900e4b" hs_bindgen_f43b424d2e900e4b :: + IO (Ptr.FunPtr (Botan_asn1_oid_t -> Botan_view_ctx -> Botan_view_str_fn -> IO FC.CInt)) + +{-# NOINLINE botan_oid_view_name #-} +{-| View an OIDs registered name if it exists, else its dot notation + +__C declaration:__ @botan_oid_view_name@ + +__defined at:__ @botan\/ffi.h:1171:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_oid_view_name :: Ptr.FunPtr (Botan_asn1_oid_t -> Botan_view_ctx -> Botan_view_str_fn -> IO FC.CInt) +botan_oid_view_name = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_f43b424d2e900e4b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_oid_equal@ +foreign import ccall unsafe "hs_bindgen_412a6c0cacd963a1" hs_bindgen_412a6c0cacd963a1 :: + IO (Ptr.FunPtr (Botan_asn1_oid_t -> Botan_asn1_oid_t -> IO FC.CInt)) + +{-# NOINLINE botan_oid_equal #-} +{-| + + __returns:__ 0 if a != b + + __returns:__ 1 if a == b + + __returns:__ negative number on error + +__C declaration:__ @botan_oid_equal@ + +__defined at:__ @botan\/ffi.h:1178:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_oid_equal :: Ptr.FunPtr (Botan_asn1_oid_t -> Botan_asn1_oid_t -> IO FC.CInt) +botan_oid_equal = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_412a6c0cacd963a1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_oid_cmp@ +foreign import ccall unsafe "hs_bindgen_32581f3fc78bc58e" hs_bindgen_32581f3fc78bc58e :: + IO (Ptr.FunPtr ((Ptr.Ptr FC.CInt) -> Botan_asn1_oid_t -> Botan_asn1_oid_t -> IO FC.CInt)) + +{-# NOINLINE botan_oid_cmp #-} +{-| Sets + + [__@result@ /(input)/__]: to comparison result: -1 if a < b, 0 if a == b, 1 if a > b + + __returns:__ negative number on error or zero on success + +__C declaration:__ @botan_oid_cmp@ + +__defined at:__ @botan\/ffi.h:1185:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_oid_cmp :: Ptr.FunPtr ((Ptr.Ptr FC.CInt) -> Botan_asn1_oid_t -> Botan_asn1_oid_t -> IO FC.CInt) +botan_oid_cmp = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_32581f3fc78bc58e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_destroy@ +foreign import ccall unsafe "hs_bindgen_336784264b425ca1" hs_bindgen_336784264b425ca1 :: + IO (Ptr.FunPtr (Botan_ec_group_t -> IO FC.CInt)) + +{-# NOINLINE botan_ec_group_destroy #-} +{-| + + __returns:__ negative number on error, or zero on success + +__C declaration:__ @botan_ec_group_destroy@ + +__defined at:__ @botan\/ffi.h:1196:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_destroy :: Ptr.FunPtr (Botan_ec_group_t -> IO FC.CInt) +botan_ec_group_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_336784264b425ca1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_supports_application_specific_group@ +foreign import ccall unsafe "hs_bindgen_0e056cb21f48c8eb" hs_bindgen_0e056cb21f48c8eb :: + IO (Ptr.FunPtr ((Ptr.Ptr FC.CInt) -> IO FC.CInt)) + +{-# NOINLINE botan_ec_group_supports_application_specific_group #-} +{-| Checks if in this build configuration it is possible to register an application specific elliptic curve and sets + + [__@out@ /(input)/__]: to 1 if so, 0 otherwise + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_ec_group_supports_application_specific_group@ + +__defined at:__ @botan\/ffi.h:1203:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_supports_application_specific_group :: Ptr.FunPtr ((Ptr.Ptr FC.CInt) -> IO FC.CInt) +botan_ec_group_supports_application_specific_group = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_0e056cb21f48c8eb + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_supports_named_group@ +foreign import ccall unsafe "hs_bindgen_95f9b7507a1ca163" hs_bindgen_95f9b7507a1ca163 :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (Ptr.Ptr FC.CInt) -> IO FC.CInt)) + +{-# NOINLINE botan_ec_group_supports_named_group #-} +{-| Checks if in this build configuration botan_ec_group_from_name(group_ptr, name) will succeed and sets + + [__@out@ /(input)/__]: to 1 if so, 0 otherwise. + + __returns:__ negative number on error, or zero on success + +__C declaration:__ @botan_ec_group_supports_named_group@ + +__defined at:__ @botan\/ffi.h:1210:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_supports_named_group :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (Ptr.Ptr FC.CInt) -> IO FC.CInt) +botan_ec_group_supports_named_group = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_95f9b7507a1ca163 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_from_params@ +foreign import ccall unsafe "hs_bindgen_97d801fc2ac6d592" hs_bindgen_97d801fc2ac6d592 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_ec_group_t) -> Botan_asn1_oid_t -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_ec_group_from_params #-} +{-| Create a new EC Group from parameters + + __/WARNING:/__ use only elliptic curve parameters that you trust + + [__@ec_group@ /(input)/__]: the new object will be placed here + + [__@p@ /(input)/__]: the elliptic curve prime (at most 521 bits) + + [__@a@ /(input)/__]: the elliptic curve a param + + [__@b@ /(input)/__]: the elliptic curve b param + + [__@base_x@ /(input)/__]: the x coordinate of the group generator + + [__@base_y@ /(input)/__]: the y coordinate of the group generator + + [__@order@ /(input)/__]: the order of the group + + __returns:__ negative number on error, or zero on success + +__C declaration:__ @botan_ec_group_from_params@ + +__defined at:__ @botan\/ffi.h:1226:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_from_params :: Ptr.FunPtr ((Ptr.Ptr Botan_ec_group_t) -> Botan_asn1_oid_t -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_ec_group_from_params = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_97d801fc2ac6d592 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_from_ber@ +foreign import ccall unsafe "hs_bindgen_9ea806bc2148912c" hs_bindgen_9ea806bc2148912c :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_ec_group_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_ec_group_from_ber #-} +{-| Decode a BER encoded ECC domain parameter set + + [__@ec_group@ /(input)/__]: the new object will be placed here + + [__@ber@ /(input)/__]: encoding + + [__@ber_len@ /(input)/__]: size of the encoding in bytes + + __returns:__ negative number on error, or zero on success + +__C declaration:__ @botan_ec_group_from_ber@ + +__defined at:__ @botan\/ffi.h:1242:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_from_ber :: Ptr.FunPtr ((Ptr.Ptr Botan_ec_group_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_ec_group_from_ber = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_9ea806bc2148912c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_from_pem@ +foreign import ccall unsafe "hs_bindgen_f267ce6be6f20b3c" hs_bindgen_f267ce6be6f20b3c :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_ec_group_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_ec_group_from_pem #-} +{-| Initialize an EC Group from the PEM/ASN.1 encoding + + [__@ec_group@ /(input)/__]: the new object will be placed here + + [__@pem@ /(input)/__]: encoding + + __returns:__ negative number on error, or zero on success + +__C declaration:__ @botan_ec_group_from_pem@ + +__defined at:__ @botan\/ffi.h:1250:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_from_pem :: Ptr.FunPtr ((Ptr.Ptr Botan_ec_group_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_ec_group_from_pem = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_f267ce6be6f20b3c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_from_oid@ +foreign import ccall unsafe "hs_bindgen_3d76df63518591f7" hs_bindgen_3d76df63518591f7 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_ec_group_t) -> Botan_asn1_oid_t -> IO FC.CInt)) + +{-# NOINLINE botan_ec_group_from_oid #-} +{-| Initialize an EC Group from a group named by an object identifier + + [__@ec_group@ /(input)/__]: the new object will be placed here + + [__@oid@ /(input)/__]: a known OID + + __returns:__ negative number on error, or zero on success + +__C declaration:__ @botan_ec_group_from_oid@ + +__defined at:__ @botan\/ffi.h:1258:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_from_oid :: Ptr.FunPtr ((Ptr.Ptr Botan_ec_group_t) -> Botan_asn1_oid_t -> IO FC.CInt) +botan_ec_group_from_oid = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_3d76df63518591f7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_from_name@ +foreign import ccall unsafe "hs_bindgen_cbd05419c824c6a8" hs_bindgen_cbd05419c824c6a8 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_ec_group_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_ec_group_from_name #-} +{-| Initialize an EC Group from a common group name (eg "secp256r1") + + [__@ec_group@ /(input)/__]: the new object will be placed here + + [__@name@ /(input)/__]: a known group name + + __returns:__ negative number on error, or zero on success + +__C declaration:__ @botan_ec_group_from_name@ + +__defined at:__ @botan\/ffi.h:1266:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_from_name :: Ptr.FunPtr ((Ptr.Ptr Botan_ec_group_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_ec_group_from_name = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_cbd05419c824c6a8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_view_der@ +foreign import ccall unsafe "hs_bindgen_2ebad975fbeb48f7" hs_bindgen_2ebad975fbeb48f7 :: + IO (Ptr.FunPtr (Botan_ec_group_t -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt)) + +{-# NOINLINE botan_ec_group_view_der #-} +{-| View an EC Group in DER encoding + +__C declaration:__ @botan_ec_group_view_der@ + +__defined at:__ @botan\/ffi.h:1272:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_view_der :: Ptr.FunPtr (Botan_ec_group_t -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt) +botan_ec_group_view_der = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_2ebad975fbeb48f7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_view_pem@ +foreign import ccall unsafe "hs_bindgen_bba8ac78278fcd17" hs_bindgen_bba8ac78278fcd17 :: + IO (Ptr.FunPtr (Botan_ec_group_t -> Botan_view_ctx -> Botan_view_str_fn -> IO FC.CInt)) + +{-# NOINLINE botan_ec_group_view_pem #-} +{-| View an EC Group in PEM encoding + +__C declaration:__ @botan_ec_group_view_pem@ + +__defined at:__ @botan\/ffi.h:1278:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_view_pem :: Ptr.FunPtr (Botan_ec_group_t -> Botan_view_ctx -> Botan_view_str_fn -> IO FC.CInt) +botan_ec_group_view_pem = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_bba8ac78278fcd17 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_get_curve_oid@ +foreign import ccall unsafe "hs_bindgen_79d68f6d02e8ab06" hs_bindgen_79d68f6d02e8ab06 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_asn1_oid_t) -> Botan_ec_group_t -> IO FC.CInt)) + +{-# NOINLINE botan_ec_group_get_curve_oid #-} +{-| Get the curve OID of an EC Group + +__C declaration:__ @botan_ec_group_get_curve_oid@ + +__defined at:__ @botan\/ffi.h:1283:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_get_curve_oid :: Ptr.FunPtr ((Ptr.Ptr Botan_asn1_oid_t) -> Botan_ec_group_t -> IO FC.CInt) +botan_ec_group_get_curve_oid = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_79d68f6d02e8ab06 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_get_p@ +foreign import ccall unsafe "hs_bindgen_0e6c71247bdc838b" hs_bindgen_0e6c71247bdc838b :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_mp_t) -> Botan_ec_group_t -> IO FC.CInt)) + +{-# NOINLINE botan_ec_group_get_p #-} +{-| Get the prime modulus of the field + +__C declaration:__ @botan_ec_group_get_p@ + +__defined at:__ @botan\/ffi.h:1288:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_get_p :: Ptr.FunPtr ((Ptr.Ptr Botan_mp_t) -> Botan_ec_group_t -> IO FC.CInt) +botan_ec_group_get_p = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_0e6c71247bdc838b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_get_a@ +foreign import ccall unsafe "hs_bindgen_aea4f770a6bb76af" hs_bindgen_aea4f770a6bb76af :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_mp_t) -> Botan_ec_group_t -> IO FC.CInt)) + +{-# NOINLINE botan_ec_group_get_a #-} +{-| Get the a parameter of the elliptic curve equation + +__C declaration:__ @botan_ec_group_get_a@ + +__defined at:__ @botan\/ffi.h:1293:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_get_a :: Ptr.FunPtr ((Ptr.Ptr Botan_mp_t) -> Botan_ec_group_t -> IO FC.CInt) +botan_ec_group_get_a = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_aea4f770a6bb76af + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_get_b@ +foreign import ccall unsafe "hs_bindgen_7cbcbf0e5b0590a2" hs_bindgen_7cbcbf0e5b0590a2 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_mp_t) -> Botan_ec_group_t -> IO FC.CInt)) + +{-# NOINLINE botan_ec_group_get_b #-} +{-| Get the b parameter of the elliptic curve equation + +__C declaration:__ @botan_ec_group_get_b@ + +__defined at:__ @botan\/ffi.h:1298:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_get_b :: Ptr.FunPtr ((Ptr.Ptr Botan_mp_t) -> Botan_ec_group_t -> IO FC.CInt) +botan_ec_group_get_b = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_7cbcbf0e5b0590a2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_get_g_x@ +foreign import ccall unsafe "hs_bindgen_e1d8c6b190346ad1" hs_bindgen_e1d8c6b190346ad1 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_mp_t) -> Botan_ec_group_t -> IO FC.CInt)) + +{-# NOINLINE botan_ec_group_get_g_x #-} +{-| Get the x coordinate of the base point + +__C declaration:__ @botan_ec_group_get_g_x@ + +__defined at:__ @botan\/ffi.h:1303:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_get_g_x :: Ptr.FunPtr ((Ptr.Ptr Botan_mp_t) -> Botan_ec_group_t -> IO FC.CInt) +botan_ec_group_get_g_x = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_e1d8c6b190346ad1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_get_g_y@ +foreign import ccall unsafe "hs_bindgen_d00cf7dab89ecd2a" hs_bindgen_d00cf7dab89ecd2a :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_mp_t) -> Botan_ec_group_t -> IO FC.CInt)) + +{-# NOINLINE botan_ec_group_get_g_y #-} +{-| Get the y coordinate of the base point + +__C declaration:__ @botan_ec_group_get_g_y@ + +__defined at:__ @botan\/ffi.h:1308:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_get_g_y :: Ptr.FunPtr ((Ptr.Ptr Botan_mp_t) -> Botan_ec_group_t -> IO FC.CInt) +botan_ec_group_get_g_y = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_d00cf7dab89ecd2a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_get_order@ +foreign import ccall unsafe "hs_bindgen_098a8a1c2ad8d295" hs_bindgen_098a8a1c2ad8d295 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_mp_t) -> Botan_ec_group_t -> IO FC.CInt)) + +{-# NOINLINE botan_ec_group_get_order #-} +{-| Get the order of the base point + +__C declaration:__ @botan_ec_group_get_order@ + +__defined at:__ @botan\/ffi.h:1313:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_get_order :: Ptr.FunPtr ((Ptr.Ptr Botan_mp_t) -> Botan_ec_group_t -> IO FC.CInt) +botan_ec_group_get_order = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_098a8a1c2ad8d295 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_group_equal@ +foreign import ccall unsafe "hs_bindgen_38b48aa61a0725bc" hs_bindgen_38b48aa61a0725bc :: + IO (Ptr.FunPtr (Botan_ec_group_t -> Botan_ec_group_t -> IO FC.CInt)) + +{-# NOINLINE botan_ec_group_equal #-} +{-| + + __returns:__ 0 if curve1 != curve2 + + __returns:__ 1 if curve1 == curve2 + + __returns:__ negative number on error + +__C declaration:__ @botan_ec_group_equal@ + +__defined at:__ @botan\/ffi.h:1320:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_equal :: Ptr.FunPtr (Botan_ec_group_t -> Botan_ec_group_t -> IO FC.CInt) +botan_ec_group_equal = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_38b48aa61a0725bc + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_create@ +foreign import ccall unsafe "hs_bindgen_0345f6c2fc9d9a5f" hs_bindgen_0345f6c2fc9d9a5f :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> Botan_rng_t -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_create #-} +{-| Create a new private key + + [__@key@ /(input)/__]: the new object will be placed here + + [__@algo_name@ /(input)/__]: something like "RSA" or "ECDSA" + + [__@algo_params@ /(input)/__]: is specific to the algorithm. For RSA, specifies the modulus bit length. For ECC is the name of the curve. + + [__@rng@ /(input)/__]: a random number generator + +__C declaration:__ @botan_privkey_create@ + +__defined at:__ @botan\/ffi.h:1336:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> Botan_rng_t -> IO FC.CInt) +botan_privkey_create = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_0345f6c2fc9d9a5f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_ec_privkey_create@ +foreign import ccall unsafe "hs_bindgen_489c3dee8b596e26" hs_bindgen_489c3dee8b596e26 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> Botan_ec_group_t -> Botan_rng_t -> IO FC.CInt)) + +{-# NOINLINE botan_ec_privkey_create #-} +{-| Create a new ec private key + + [__@key@ /(input)/__]: the new object will be placed here + + [__@algo_name@ /(input)/__]: something like "ECDSA" or "ECDH" + + [__@ec_group@ /(input)/__]: a (possibly application specific) elliptic curve + + [__@rng@ /(input)/__]: a random number generator + +__C declaration:__ @botan_ec_privkey_create@ + +__defined at:__ @botan\/ffi.h:1346:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_privkey_create :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> Botan_ec_group_t -> Botan_rng_t -> IO FC.CInt) +botan_ec_privkey_create = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_489c3dee8b596e26 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_check_key@ +foreign import ccall unsafe "hs_bindgen_7873cec8cd3e817e" hs_bindgen_7873cec8cd3e817e :: + IO (Ptr.FunPtr (Botan_privkey_t -> Botan_rng_t -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_check_key #-} +{-| __C declaration:__ @botan_privkey_check_key@ + + __defined at:__ @botan\/ffi.h:1350:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_check_key :: Ptr.FunPtr (Botan_privkey_t -> Botan_rng_t -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_privkey_check_key = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_7873cec8cd3e817e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_create_rsa@ +foreign import ccall unsafe "hs_bindgen_cd6a4edbce589060" hs_bindgen_cd6a4edbce589060 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_create_rsa #-} +{-| __C declaration:__ @botan_privkey_create_rsa@ + + __defined at:__ @botan\/ffi.h:1353:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create_rsa :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_privkey_create_rsa = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_cd6a4edbce589060 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_create_ecdsa@ +foreign import ccall unsafe "hs_bindgen_1b0b06e18492d25c" hs_bindgen_1b0b06e18492d25c :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_create_ecdsa #-} +{-| __C declaration:__ @botan_privkey_create_ecdsa@ + + __defined at:__ @botan\/ffi.h:1355:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create_ecdsa :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_privkey_create_ecdsa = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_1b0b06e18492d25c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_create_ecdh@ +foreign import ccall unsafe "hs_bindgen_7391c77fd7a938f1" hs_bindgen_7391c77fd7a938f1 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_create_ecdh #-} +{-| __C declaration:__ @botan_privkey_create_ecdh@ + + __defined at:__ @botan\/ffi.h:1357:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create_ecdh :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_privkey_create_ecdh = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_7391c77fd7a938f1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_create_mceliece@ +foreign import ccall unsafe "hs_bindgen_1b639c7603beb50a" hs_bindgen_1b639c7603beb50a :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_create_mceliece #-} +{-| __C declaration:__ @botan_privkey_create_mceliece@ + + __defined at:__ @botan\/ffi.h:1359:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create_mceliece :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_privkey_create_mceliece = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_1b639c7603beb50a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_create_dh@ +foreign import ccall unsafe "hs_bindgen_492b0800df7677b0" hs_bindgen_492b0800df7677b0 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_create_dh #-} +{-| __C declaration:__ @botan_privkey_create_dh@ + + __defined at:__ @botan\/ffi.h:1361:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create_dh :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_privkey_create_dh = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_492b0800df7677b0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_create_dsa@ +foreign import ccall unsafe "hs_bindgen_5c4ee5a4c3eb7146" hs_bindgen_5c4ee5a4c3eb7146 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_create_dsa #-} +{-| Generates DSA key pair. Gives to a caller control over key length and order of a subgroup 'q'. + + [__@key@ /(input)/__]: handler to the resulting key + + [__@rng@ /(input)/__]: initialized PRNG + + [__@pbits@ /(input)/__]: length of the key in bits. Must be between in range (1024, 3072) and multiple of 64. Bit size of the prime 'p' + + [__@qbits@ /(input)/__]: order of the subgroup. Must be in range (160, 256) and multiple of 8 + + __returns:__ BOTAN_FFI_SUCCESS Success, `key' initialized with DSA key + + __returns:__ BOTAN_FFI_ERROR_NULL_POINTER either `key' or `rng' is NULL + + __returns:__ BOTAN_FFI_ERROR_BAD_PARAMETER unexpected value for either `pbits' or `qbits' + + __returns:__ BOTAN_FFI_ERROR_NOT_IMPLEMENTED functionality not implemented + +__C declaration:__ @botan_privkey_create_dsa@ + +__defined at:__ @botan\/ffi.h:1381:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create_dsa :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_privkey_create_dsa = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_5c4ee5a4c3eb7146 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_create_elgamal@ +foreign import ccall unsafe "hs_bindgen_523c6165f8fa7a58" hs_bindgen_523c6165f8fa7a58 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_create_elgamal #-} +{-| Generates ElGamal key pair. Caller has a control over key length and order of a subgroup 'q'. Function is able to use two types of primes: * if pbits-1 == qbits then safe primes are used for key generation * otherwise generation uses group of prime order + + [__@key@ /(input)/__]: handler to the resulting key + + [__@rng@ /(input)/__]: initialized PRNG + + [__@pbits@ /(input)/__]: length of the key in bits. Must be at least 1024 + + [__@qbits@ /(input)/__]: order of the subgroup. Must be at least 160 + + __returns:__ BOTAN_FFI_SUCCESS Success, `key' initialized with DSA key + + __returns:__ BOTAN_FFI_ERROR_NULL_POINTER either `key' or `rng' is NULL + + __returns:__ BOTAN_FFI_ERROR_BAD_PARAMETER unexpected value for either `pbits' or `qbits' + + __returns:__ BOTAN_FFI_ERROR_NOT_IMPLEMENTED functionality not implemented + +__C declaration:__ @botan_privkey_create_elgamal@ + +__defined at:__ @botan\/ffi.h:1403:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create_elgamal :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_rng_t -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_privkey_create_elgamal = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_523c6165f8fa7a58 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load@ +foreign import ccall unsafe "hs_bindgen_f5f3f9048c839d6f" hs_bindgen_f5f3f9048c839d6f :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_rng_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_load #-} +{-| Input currently assumed to be PKCS #8 structure; Set password to NULL to indicate no encryption expected Starting in 2.8.0, the rng parameter is unused and may be set to null + +__C declaration:__ @botan_privkey_load@ + +__defined at:__ @botan\/ffi.h:1411:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_rng_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_privkey_load = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_f5f3f9048c839d6f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_destroy@ +foreign import ccall unsafe "hs_bindgen_c387802293c63d54" hs_bindgen_c387802293c63d54 :: + IO (Ptr.FunPtr (Botan_privkey_t -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_destroy #-} +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_privkey_destroy@ + +__defined at:__ @botan\/ffi.h:1416:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_destroy :: Ptr.FunPtr (Botan_privkey_t -> IO FC.CInt) +botan_privkey_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_c387802293c63d54 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_export@ +foreign import ccall unsafe "hs_bindgen_f12a62bc30cc898c" hs_bindgen_f12a62bc30cc898c :: + IO (Ptr.FunPtr (Botan_privkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_export #-} +{-| __C declaration:__ @botan_privkey_export@ + + __defined at:__ @botan\/ffi.h:1430:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_export :: Ptr.FunPtr (Botan_privkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_privkey_export = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_f12a62bc30cc898c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_view_der@ +foreign import ccall unsafe "hs_bindgen_f77602b940593839" hs_bindgen_f77602b940593839 :: + IO (Ptr.FunPtr (Botan_privkey_t -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_view_der #-} +{-| View the private key's DER encoding + +__C declaration:__ @botan_privkey_view_der@ + +__defined at:__ @botan\/ffi.h:1435:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_view_der :: Ptr.FunPtr (Botan_privkey_t -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt) +botan_privkey_view_der = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_f77602b940593839 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_9dc7478b30218fe8" hs_bindgen_9dc7478b30218fe8 :: + IO (Ptr.FunPtr (Botan_privkey_t -> Botan_view_ctx -> Botan_view_str_fn -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_view_pem #-} +{-| View the private key's PEM encoding + +__C declaration:__ @botan_privkey_view_pem@ + +__defined at:__ @botan\/ffi.h:1440:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_view_pem :: Ptr.FunPtr (Botan_privkey_t -> Botan_view_ctx -> Botan_view_str_fn -> IO FC.CInt) +botan_privkey_view_pem = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_9dc7478b30218fe8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_view_raw@ +foreign import ccall unsafe "hs_bindgen_b320028ca893f710" hs_bindgen_b320028ca893f710 :: + IO (Ptr.FunPtr (Botan_privkey_t -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_view_raw #-} +{-| View the private key's raw encoding + +__C declaration:__ @botan_privkey_view_raw@ + +__defined at:__ @botan\/ffi.h:1445:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_view_raw :: Ptr.FunPtr (Botan_privkey_t -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt) +botan_privkey_view_raw = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_b320028ca893f710 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_781119e3e5130386" hs_bindgen_781119e3e5130386 :: + IO (Ptr.FunPtr (Botan_privkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_algo_name #-} +{-| __C declaration:__ @botan_privkey_algo_name@ + + __defined at:__ @botan\/ffi.h:1447:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_algo_name :: Ptr.FunPtr (Botan_privkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_privkey_algo_name = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_781119e3e5130386 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_export_encrypted@ +foreign import ccall unsafe "hs_bindgen_d98298dbf6038c82" hs_bindgen_d98298dbf6038c82 :: + IO (Ptr.FunPtr (Botan_privkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_export_encrypted #-} +{-| __C declaration:__ @botan_privkey_export_encrypted@ + + __defined at:__ @botan\/ffi.h:1454:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_export_encrypted :: Ptr.FunPtr (Botan_privkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_privkey_export_encrypted = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_d98298dbf6038c82 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall unsafe "hs_bindgen_b1c13ccc4342706c" hs_bindgen_b1c13ccc4342706c :: + IO (Ptr.FunPtr (Botan_privkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_export_encrypted_pbkdf_msec #-} +{-| __C declaration:__ @botan_privkey_export_encrypted_pbkdf_msec@ + + __defined at:__ @botan\/ffi.h:1470:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_export_encrypted_pbkdf_msec :: Ptr.FunPtr (Botan_privkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_privkey_export_encrypted_pbkdf_msec = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_b1c13ccc4342706c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall unsafe "hs_bindgen_fd5f85594516c122" hs_bindgen_fd5f85594516c122 :: + IO (Ptr.FunPtr (Botan_privkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_export_encrypted_pbkdf_iter #-} +{-| __C declaration:__ @botan_privkey_export_encrypted_pbkdf_iter@ + + __defined at:__ @botan\/ffi.h:1486:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_export_encrypted_pbkdf_iter :: Ptr.FunPtr (Botan_privkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_privkey_export_encrypted_pbkdf_iter = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_fd5f85594516c122 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_view_encrypted_der@ +foreign import ccall unsafe "hs_bindgen_61a83b1f0ea9e4a2" hs_bindgen_61a83b1f0ea9e4a2 :: + IO (Ptr.FunPtr (Botan_privkey_t -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_view_encrypted_der #-} +{-| View the encryption of a private key (binary DER encoding) + + Set cipher_algo, pbkdf_algo to NULL to use defaults Set pbkdf_iterations to 0 to use defaults + +__C declaration:__ @botan_privkey_view_encrypted_der@ + +__defined at:__ @botan\/ffi.h:1503:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_view_encrypted_der :: Ptr.FunPtr (Botan_privkey_t -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt) +botan_privkey_view_encrypted_der = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_61a83b1f0ea9e4a2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_view_encrypted_der_timed@ +foreign import ccall unsafe "hs_bindgen_5d3e6da1e4e2ed92" hs_bindgen_5d3e6da1e4e2ed92 :: + IO (Ptr.FunPtr (Botan_privkey_t -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_view_encrypted_der_timed #-} +{-| View the encryption of a private key (binary DER encoding) + + Set cipher_algo, pbkdf_algo to NULL to use defaults + +__C declaration:__ @botan_privkey_view_encrypted_der_timed@ + +__defined at:__ @botan\/ffi.h:1518:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_view_encrypted_der_timed :: Ptr.FunPtr (Botan_privkey_t -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt) +botan_privkey_view_encrypted_der_timed = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_5d3e6da1e4e2ed92 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_view_encrypted_pem@ +foreign import ccall unsafe "hs_bindgen_ff37fb469bf108be" hs_bindgen_ff37fb469bf108be :: + IO (Ptr.FunPtr (Botan_privkey_t -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> Botan_view_ctx -> Botan_view_str_fn -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_view_encrypted_pem #-} +{-| View the encryption of a private key (PEM encoding) + + Set cipher_algo, pbkdf_algo to NULL to use defaults Set pbkdf_iterations to 0 to use defaults + +__C declaration:__ @botan_privkey_view_encrypted_pem@ + +__defined at:__ @botan\/ffi.h:1534:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_view_encrypted_pem :: Ptr.FunPtr (Botan_privkey_t -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> Botan_view_ctx -> Botan_view_str_fn -> IO FC.CInt) +botan_privkey_view_encrypted_pem = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_ff37fb469bf108be + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall unsafe "hs_bindgen_1373f20e058aafb9" hs_bindgen_1373f20e058aafb9 :: + IO (Ptr.FunPtr (Botan_privkey_t -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> Botan_view_ctx -> Botan_view_str_fn -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_view_encrypted_pem_timed #-} +{-| View the encryption of a private key (PEM encoding) + + Set cipher_algo, pbkdf_algo to NULL to use defaults + +__C declaration:__ @botan_privkey_view_encrypted_pem_timed@ + +__defined at:__ @botan\/ffi.h:1549:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_view_encrypted_pem_timed :: Ptr.FunPtr (Botan_privkey_t -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> Botan_view_ctx -> Botan_view_str_fn -> IO FC.CInt) +botan_privkey_view_encrypted_pem_timed = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_1373f20e058aafb9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load@ +foreign import ccall unsafe "hs_bindgen_5323a5c08ef4d8c9" hs_bindgen_5323a5c08ef4d8c9 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_load #-} +{-| __C declaration:__ @botan_pubkey_load@ + + __defined at:__ @botan\/ffi.h:1560:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load :: Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_pubkey_load = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_5323a5c08ef4d8c9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_export_pubkey@ +foreign import ccall unsafe "hs_bindgen_c0c53e679f477da4" hs_bindgen_c0c53e679f477da4 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_privkey_t -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_export_pubkey #-} +{-| __C declaration:__ @botan_privkey_export_pubkey@ + + __defined at:__ @botan\/ffi.h:1562:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_export_pubkey :: Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_privkey_t -> IO FC.CInt) +botan_privkey_export_pubkey = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_c0c53e679f477da4 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_export@ +foreign import ccall unsafe "hs_bindgen_0a578be0f50f0b4a" hs_bindgen_0a578be0f50f0b4a :: + IO (Ptr.FunPtr (Botan_pubkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_export #-} +{-| __C declaration:__ @botan_pubkey_export@ + + __defined at:__ @botan\/ffi.h:1565:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_export :: Ptr.FunPtr (Botan_pubkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_pubkey_export = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_0a578be0f50f0b4a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_view_der@ +foreign import ccall unsafe "hs_bindgen_53e35915ca3d8b05" hs_bindgen_53e35915ca3d8b05 :: + IO (Ptr.FunPtr (Botan_pubkey_t -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_view_der #-} +{-| View the public key's DER encoding + +__C declaration:__ @botan_pubkey_view_der@ + +__defined at:__ @botan\/ffi.h:1570:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_view_der :: Ptr.FunPtr (Botan_pubkey_t -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt) +botan_pubkey_view_der = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_53e35915ca3d8b05 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_view_pem@ +foreign import ccall unsafe "hs_bindgen_ccc56d078d9a61e5" hs_bindgen_ccc56d078d9a61e5 :: + IO (Ptr.FunPtr (Botan_pubkey_t -> Botan_view_ctx -> Botan_view_str_fn -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_view_pem #-} +{-| View the public key's PEM encoding + +__C declaration:__ @botan_pubkey_view_pem@ + +__defined at:__ @botan\/ffi.h:1575:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_view_pem :: Ptr.FunPtr (Botan_pubkey_t -> Botan_view_ctx -> Botan_view_str_fn -> IO FC.CInt) +botan_pubkey_view_pem = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_ccc56d078d9a61e5 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_view_raw@ +foreign import ccall unsafe "hs_bindgen_980170171fc4ab98" hs_bindgen_980170171fc4ab98 :: + IO (Ptr.FunPtr (Botan_pubkey_t -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_view_raw #-} +{-| View the public key's raw encoding + +__C declaration:__ @botan_pubkey_view_raw@ + +__defined at:__ @botan\/ffi.h:1580:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_view_raw :: Ptr.FunPtr (Botan_pubkey_t -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt) +botan_pubkey_view_raw = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_980170171fc4ab98 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_algo_name@ +foreign import ccall unsafe "hs_bindgen_1912efc064de4745" hs_bindgen_1912efc064de4745 :: + IO (Ptr.FunPtr (Botan_pubkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_algo_name #-} +{-| __C declaration:__ @botan_pubkey_algo_name@ + + __defined at:__ @botan\/ffi.h:1582:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_algo_name :: Ptr.FunPtr (Botan_pubkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_pubkey_algo_name = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_1912efc064de4745 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_check_key@ +foreign import ccall unsafe "hs_bindgen_30cdfde61a669ea1" hs_bindgen_30cdfde61a669ea1 :: + IO (Ptr.FunPtr (Botan_pubkey_t -> Botan_rng_t -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_check_key #-} +{-| Returns 0 if key is valid, negative if invalid key or some other error + +__C declaration:__ @botan_pubkey_check_key@ + +__defined at:__ @botan\/ffi.h:1587:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_check_key :: Ptr.FunPtr (Botan_pubkey_t -> Botan_rng_t -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_pubkey_check_key = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_30cdfde61a669ea1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_estimated_strength@ +foreign import ccall unsafe "hs_bindgen_9ef8d03e24a4ae7d" hs_bindgen_9ef8d03e24a4ae7d :: + IO (Ptr.FunPtr (Botan_pubkey_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_estimated_strength #-} +{-| __C declaration:__ @botan_pubkey_estimated_strength@ + + __defined at:__ @botan\/ffi.h:1589:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_estimated_strength :: Ptr.FunPtr (Botan_pubkey_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_pubkey_estimated_strength = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_9ef8d03e24a4ae7d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_fingerprint@ +foreign import ccall unsafe "hs_bindgen_9c3b19f664a7253e" hs_bindgen_9c3b19f664a7253e :: + IO (Ptr.FunPtr (Botan_pubkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_fingerprint #-} +{-| __C declaration:__ @botan_pubkey_fingerprint@ + + __defined at:__ @botan\/ffi.h:1592:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_fingerprint :: Ptr.FunPtr (Botan_pubkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_pubkey_fingerprint = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_9c3b19f664a7253e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_destroy@ +foreign import ccall unsafe "hs_bindgen_c89e2a80a90d86b8" hs_bindgen_c89e2a80a90d86b8 :: + IO (Ptr.FunPtr (Botan_pubkey_t -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_destroy #-} +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pubkey_destroy@ + +__defined at:__ @botan\/ffi.h:1597:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_destroy :: Ptr.FunPtr (Botan_pubkey_t -> IO FC.CInt) +botan_pubkey_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_c89e2a80a90d86b8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_get_field@ +foreign import ccall unsafe "hs_bindgen_b08a104228c24a7b" hs_bindgen_b08a104228c24a7b :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_pubkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_get_field #-} +{-| __C declaration:__ @botan_pubkey_get_field@ + + __defined at:__ @botan\/ffi.h:1602:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_get_field :: Ptr.FunPtr (Botan_mp_t -> Botan_pubkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_pubkey_get_field = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_b08a104228c24a7b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_get_field@ +foreign import ccall unsafe "hs_bindgen_18d063b05d770ae1" hs_bindgen_18d063b05d770ae1 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_privkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_get_field #-} +{-| __C declaration:__ @botan_privkey_get_field@ + + __defined at:__ @botan\/ffi.h:1604:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_get_field :: Ptr.FunPtr (Botan_mp_t -> Botan_privkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_privkey_get_field = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_18d063b05d770ae1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_oid@ +foreign import ccall unsafe "hs_bindgen_5162ef00a380bca8" hs_bindgen_5162ef00a380bca8 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_asn1_oid_t) -> Botan_pubkey_t -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_oid #-} +{-| __C declaration:__ @botan_pubkey_oid@ + + __defined at:__ @botan\/ffi.h:1610:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_oid :: Ptr.FunPtr ((Ptr.Ptr Botan_asn1_oid_t) -> Botan_pubkey_t -> IO FC.CInt) +botan_pubkey_oid = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_5162ef00a380bca8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_oid@ +foreign import ccall unsafe "hs_bindgen_9c577b40b076764f" hs_bindgen_9c577b40b076764f :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_asn1_oid_t) -> Botan_privkey_t -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_oid #-} +{-| __C declaration:__ @botan_privkey_oid@ + + __defined at:__ @botan\/ffi.h:1613:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_oid :: Ptr.FunPtr ((Ptr.Ptr Botan_asn1_oid_t) -> Botan_privkey_t -> IO FC.CInt) +botan_privkey_oid = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_9c577b40b076764f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_stateful_operation@ +foreign import ccall unsafe "hs_bindgen_0e46e1159b61dd83" hs_bindgen_0e46e1159b61dd83 :: + IO (Ptr.FunPtr (Botan_privkey_t -> (Ptr.Ptr FC.CInt) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_stateful_operation #-} +{-| Checks whether a key is stateful and sets + + [__@out@ /(input)/__]: to 1 if it is, or 0 if the key is not stateful + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_privkey_stateful_operation@ + +__defined at:__ @botan\/ffi.h:1620:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_stateful_operation :: Ptr.FunPtr (Botan_privkey_t -> (Ptr.Ptr FC.CInt) -> IO FC.CInt) +botan_privkey_stateful_operation = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_0e46e1159b61dd83 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_remaining_operations@ +foreign import ccall unsafe "hs_bindgen_96e716f2c2b49bcf" hs_bindgen_96e716f2c2b49bcf :: + IO (Ptr.FunPtr (Botan_privkey_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word64) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_remaining_operations #-} +{-| Gets information on many operations a (stateful) key has remaining and sets + + [__@out@ /(input)/__]: to that value + + __returns:__ 0 on success, a negative value on failure or if the key is not stateful + +__C declaration:__ @botan_privkey_remaining_operations@ + +__defined at:__ @botan\/ffi.h:1627:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_remaining_operations :: Ptr.FunPtr (Botan_privkey_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word64) -> IO FC.CInt) +botan_privkey_remaining_operations = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_96e716f2c2b49bcf + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_258054c69a65b7d2" hs_bindgen_258054c69a65b7d2 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_load_rsa #-} +{-| __C declaration:__ @botan_privkey_load_rsa@ + + __defined at:__ @botan\/ffi.h:1632:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_rsa :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_privkey_load_rsa = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_258054c69a65b7d2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_rsa_pkcs1@ +foreign import ccall unsafe "hs_bindgen_219f39326912a22a" hs_bindgen_219f39326912a22a :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_load_rsa_pkcs1 #-} +{-| __C declaration:__ @botan_privkey_load_rsa_pkcs1@ + + __defined at:__ @botan\/ffi.h:1634:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_rsa_pkcs1 :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_privkey_load_rsa_pkcs1 = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_219f39326912a22a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_rsa_get_p@ +foreign import ccall unsafe "hs_bindgen_04548ddeffcd29fb" hs_bindgen_04548ddeffcd29fb :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_privkey_t -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_rsa_get_p #-} +{-| __C declaration:__ @botan_privkey_rsa_get_p@ + + __defined at:__ @botan\/ffi.h:1637:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_rsa_get_p :: Ptr.FunPtr (Botan_mp_t -> Botan_privkey_t -> IO FC.CInt) +botan_privkey_rsa_get_p = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_04548ddeffcd29fb + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_rsa_get_q@ +foreign import ccall unsafe "hs_bindgen_ec2873a5da0deb09" hs_bindgen_ec2873a5da0deb09 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_privkey_t -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_rsa_get_q #-} +{-| __C declaration:__ @botan_privkey_rsa_get_q@ + + __defined at:__ @botan\/ffi.h:1639:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_rsa_get_q :: Ptr.FunPtr (Botan_mp_t -> Botan_privkey_t -> IO FC.CInt) +botan_privkey_rsa_get_q = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_ec2873a5da0deb09 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_rsa_get_d@ +foreign import ccall unsafe "hs_bindgen_6d0e06f83feab996" hs_bindgen_6d0e06f83feab996 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_privkey_t -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_rsa_get_d #-} +{-| __C declaration:__ @botan_privkey_rsa_get_d@ + + __defined at:__ @botan\/ffi.h:1641:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_rsa_get_d :: Ptr.FunPtr (Botan_mp_t -> Botan_privkey_t -> IO FC.CInt) +botan_privkey_rsa_get_d = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_6d0e06f83feab996 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_0faca0e1912fe6ba" hs_bindgen_0faca0e1912fe6ba :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_privkey_t -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_rsa_get_n #-} +{-| __C declaration:__ @botan_privkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1643:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_rsa_get_n :: Ptr.FunPtr (Botan_mp_t -> Botan_privkey_t -> IO FC.CInt) +botan_privkey_rsa_get_n = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_0faca0e1912fe6ba + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_cbab1a8e116af396" hs_bindgen_cbab1a8e116af396 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_privkey_t -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_rsa_get_e #-} +{-| __C declaration:__ @botan_privkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1645:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_rsa_get_e :: Ptr.FunPtr (Botan_mp_t -> Botan_privkey_t -> IO FC.CInt) +botan_privkey_rsa_get_e = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_cbab1a8e116af396 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_rsa_get_privkey@ +foreign import ccall unsafe "hs_bindgen_6753834da473b3b3" hs_bindgen_6753834da473b3b3 :: + IO (Ptr.FunPtr (Botan_privkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_rsa_get_privkey #-} +{-| __C declaration:__ @botan_privkey_rsa_get_privkey@ + + __defined at:__ @botan\/ffi.h:1648:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_rsa_get_privkey :: Ptr.FunPtr (Botan_privkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_privkey_rsa_get_privkey = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_6753834da473b3b3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_rsa@ +foreign import ccall unsafe "hs_bindgen_973e7a796ace4b10" hs_bindgen_973e7a796ace4b10 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_load_rsa #-} +{-| __C declaration:__ @botan_pubkey_load_rsa@ + + __defined at:__ @botan\/ffi.h:1650:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_rsa :: Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_pubkey_load_rsa = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_973e7a796ace4b10 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_rsa_get_e@ +foreign import ccall unsafe "hs_bindgen_c28d2a9497274541" hs_bindgen_c28d2a9497274541 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_pubkey_t -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_rsa_get_e #-} +{-| __C declaration:__ @botan_pubkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1653:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_rsa_get_e :: Ptr.FunPtr (Botan_mp_t -> Botan_pubkey_t -> IO FC.CInt) +botan_pubkey_rsa_get_e = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_c28d2a9497274541 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_rsa_get_n@ +foreign import ccall unsafe "hs_bindgen_f020b3810a48cc4d" hs_bindgen_f020b3810a48cc4d :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_pubkey_t -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_rsa_get_n #-} +{-| __C declaration:__ @botan_pubkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1655:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_rsa_get_n :: Ptr.FunPtr (Botan_mp_t -> Botan_pubkey_t -> IO FC.CInt) +botan_pubkey_rsa_get_n = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_f020b3810a48cc4d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_06455948f7d6baeb" hs_bindgen_06455948f7d6baeb :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_load_dsa #-} +{-| __C declaration:__ @botan_privkey_load_dsa@ + + __defined at:__ @botan\/ffi.h:1661:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_dsa :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_privkey_load_dsa = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_06455948f7d6baeb + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_dsa@ +foreign import ccall unsafe "hs_bindgen_eb44240702164229" hs_bindgen_eb44240702164229 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_load_dsa #-} +{-| __C declaration:__ @botan_pubkey_load_dsa@ + + __defined at:__ @botan\/ffi.h:1664:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_dsa :: Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_pubkey_load_dsa = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_eb44240702164229 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_dsa_get_x@ +foreign import ccall unsafe "hs_bindgen_b8b2b717be35cce5" hs_bindgen_b8b2b717be35cce5 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_privkey_t -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_dsa_get_x #-} +{-| __C declaration:__ @botan_privkey_dsa_get_x@ + + __defined at:__ @botan\/ffi.h:1667:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_dsa_get_x :: Ptr.FunPtr (Botan_mp_t -> Botan_privkey_t -> IO FC.CInt) +botan_privkey_dsa_get_x = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_b8b2b717be35cce5 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_dsa_get_p@ +foreign import ccall unsafe "hs_bindgen_82e90ef3b1646c0b" hs_bindgen_82e90ef3b1646c0b :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_pubkey_t -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_dsa_get_p #-} +{-| __C declaration:__ @botan_pubkey_dsa_get_p@ + + __defined at:__ @botan\/ffi.h:1670:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_dsa_get_p :: Ptr.FunPtr (Botan_mp_t -> Botan_pubkey_t -> IO FC.CInt) +botan_pubkey_dsa_get_p = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_82e90ef3b1646c0b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_dsa_get_q@ +foreign import ccall unsafe "hs_bindgen_f86f498ed41e67ac" hs_bindgen_f86f498ed41e67ac :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_pubkey_t -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_dsa_get_q #-} +{-| __C declaration:__ @botan_pubkey_dsa_get_q@ + + __defined at:__ @botan\/ffi.h:1672:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_dsa_get_q :: Ptr.FunPtr (Botan_mp_t -> Botan_pubkey_t -> IO FC.CInt) +botan_pubkey_dsa_get_q = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_f86f498ed41e67ac + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_dsa_get_g@ +foreign import ccall unsafe "hs_bindgen_12c400d97acb87fe" hs_bindgen_12c400d97acb87fe :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_pubkey_t -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_dsa_get_g #-} +{-| __C declaration:__ @botan_pubkey_dsa_get_g@ + + __defined at:__ @botan\/ffi.h:1674:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_dsa_get_g :: Ptr.FunPtr (Botan_mp_t -> Botan_pubkey_t -> IO FC.CInt) +botan_pubkey_dsa_get_g = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_12c400d97acb87fe + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_dsa_get_y@ +foreign import ccall unsafe "hs_bindgen_fc5e08402001a654" hs_bindgen_fc5e08402001a654 :: + IO (Ptr.FunPtr (Botan_mp_t -> Botan_pubkey_t -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_dsa_get_y #-} +{-| __C declaration:__ @botan_pubkey_dsa_get_y@ + + __defined at:__ @botan\/ffi.h:1676:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_dsa_get_y :: Ptr.FunPtr (Botan_mp_t -> Botan_pubkey_t -> IO FC.CInt) +botan_pubkey_dsa_get_y = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_fc5e08402001a654 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_ad77fd6c905b1a5c" hs_bindgen_ad77fd6c905b1a5c :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_load_dh #-} +{-| __C declaration:__ @botan_privkey_load_dh@ + + __defined at:__ @botan\/ffi.h:1691:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_dh :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_privkey_load_dh = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_ad77fd6c905b1a5c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_dh@ +foreign import ccall unsafe "hs_bindgen_dc336e59acaa2492" hs_bindgen_dc336e59acaa2492 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_load_dh #-} +{-| Loads Diffie Hellman public key + + [__@key@ /(input)/__]: variable populated with key material + + [__@p@ /(input)/__]: prime order of a Z_p group + + [__@g@ /(input)/__]: group generator + + [__@y@ /(input)/__]: public key + + __pre condition:__ key is NULL on input + + __post condition:__ function allocates memory and assigns to `key' + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_pubkey_load_dh@ + +__defined at:__ @botan\/ffi.h:1705:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_dh :: Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_pubkey_load_dh = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_dc336e59acaa2492 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_ee6b4d7e0a0b188f" hs_bindgen_ee6b4d7e0a0b188f :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_load_elgamal #-} +{-| Loads ElGamal public key + + [__@key@ /(input)/__]: variable populated with key material + + [__@p@ /(input)/__]: prime order of a Z_p group + + [__@g@ /(input)/__]: group generator + + [__@y@ /(input)/__]: public key + + __pre condition:__ key is NULL on input + + __post condition:__ function allocates memory and assigns to `key' + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_pubkey_load_elgamal@ + +__defined at:__ @botan\/ffi.h:1723:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_elgamal :: Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_pubkey_load_elgamal = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_ee6b4d7e0a0b188f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_elgamal@ +foreign import ccall unsafe "hs_bindgen_d0285558becbe7a3" hs_bindgen_d0285558becbe7a3 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_load_elgamal #-} +{-| Loads ElGamal private key + + [__@key@ /(input)/__]: variable populated with key material + + [__@p@ /(input)/__]: prime order of a Z_p group + + [__@g@ /(input)/__]: group generator + + [__@x@ /(input)/__]: private key + + __pre condition:__ key is NULL on input + + __post condition:__ function allocates memory and assigns to `key' + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_privkey_load_elgamal@ + +__defined at:__ @botan\/ffi.h:1738:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_elgamal :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_mp_t -> Botan_mp_t -> Botan_mp_t -> IO FC.CInt) +botan_privkey_load_elgamal = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_d0285558becbe7a3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_1ab62c425873f74e" hs_bindgen_1ab62c425873f74e :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_load_ed25519 #-} +{-| __C declaration:__ @botan_privkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1744:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_ed25519 :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt) +botan_privkey_load_ed25519 = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_1ab62c425873f74e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_ed25519@ +foreign import ccall unsafe "hs_bindgen_d554d3d0ad7106f4" hs_bindgen_d554d3d0ad7106f4 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_load_ed25519 #-} +{-| __C declaration:__ @botan_pubkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1746:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_ed25519 :: Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt) +botan_pubkey_load_ed25519 = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_d554d3d0ad7106f4 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_ed25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_09a51c9a19f75ce1" hs_bindgen_09a51c9a19f75ce1 :: + IO (Ptr.FunPtr (Botan_privkey_t -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 64) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_ed25519_get_privkey #-} +{-| __C declaration:__ @botan_privkey_ed25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1749:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_ed25519_get_privkey :: Ptr.FunPtr (Botan_privkey_t -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 64) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt) +botan_privkey_ed25519_get_privkey = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_09a51c9a19f75ce1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_015047f9ef28182b" hs_bindgen_015047f9ef28182b :: + IO (Ptr.FunPtr (Botan_pubkey_t -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_ed25519_get_pubkey #-} +{-| __C declaration:__ @botan_pubkey_ed25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1752:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_ed25519_get_pubkey :: Ptr.FunPtr (Botan_pubkey_t -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt) +botan_pubkey_ed25519_get_pubkey = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_015047f9ef28182b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_77ffd90ce668d608" hs_bindgen_77ffd90ce668d608 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 57) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_load_ed448 #-} +{-| __C declaration:__ @botan_privkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1758:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_ed448 :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 57) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt) +botan_privkey_load_ed448 = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_77ffd90ce668d608 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_ed448@ +foreign import ccall unsafe "hs_bindgen_c730eac162f3fc2e" hs_bindgen_c730eac162f3fc2e :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 57) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_load_ed448 #-} +{-| __C declaration:__ @botan_pubkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1760:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_ed448 :: Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 57) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt) +botan_pubkey_load_ed448 = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_c730eac162f3fc2e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_ed448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_f288e4fa7bd0cff2" hs_bindgen_f288e4fa7bd0cff2 :: + IO (Ptr.FunPtr (Botan_privkey_t -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 57) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_ed448_get_privkey #-} +{-| __C declaration:__ @botan_privkey_ed448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1763:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_ed448_get_privkey :: Ptr.FunPtr (Botan_privkey_t -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 57) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt) +botan_privkey_ed448_get_privkey = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_f288e4fa7bd0cff2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_ed448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_5120dcc50461543a" hs_bindgen_5120dcc50461543a :: + IO (Ptr.FunPtr (Botan_pubkey_t -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 57) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_ed448_get_pubkey #-} +{-| __C declaration:__ @botan_pubkey_ed448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1766:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_ed448_get_pubkey :: Ptr.FunPtr (Botan_pubkey_t -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 57) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt) +botan_pubkey_ed448_get_pubkey = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_5120dcc50461543a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_e0213136f1d439e4" hs_bindgen_e0213136f1d439e4 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_load_x25519 #-} +{-| __C declaration:__ @botan_privkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1772:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_x25519 :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt) +botan_privkey_load_x25519 = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_e0213136f1d439e4 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_x25519@ +foreign import ccall unsafe "hs_bindgen_ffa77f9db0011e59" hs_bindgen_ffa77f9db0011e59 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_load_x25519 #-} +{-| __C declaration:__ @botan_pubkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1774:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_x25519 :: Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt) +botan_pubkey_load_x25519 = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_ffa77f9db0011e59 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_x25519_get_privkey@ +foreign import ccall unsafe "hs_bindgen_7f97f5b07a69fd67" hs_bindgen_7f97f5b07a69fd67 :: + IO (Ptr.FunPtr (Botan_privkey_t -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_x25519_get_privkey #-} +{-| __C declaration:__ @botan_privkey_x25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1777:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_x25519_get_privkey :: Ptr.FunPtr (Botan_privkey_t -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt) +botan_privkey_x25519_get_privkey = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_7f97f5b07a69fd67 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_x25519_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_992a227969dbbe4e" hs_bindgen_992a227969dbbe4e :: + IO (Ptr.FunPtr (Botan_pubkey_t -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_x25519_get_pubkey #-} +{-| __C declaration:__ @botan_pubkey_x25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1780:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_x25519_get_pubkey :: Ptr.FunPtr (Botan_pubkey_t -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt) +botan_pubkey_x25519_get_pubkey = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_992a227969dbbe4e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_b435689d2330cfda" hs_bindgen_b435689d2330cfda :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 56) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_load_x448 #-} +{-| __C declaration:__ @botan_privkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1786:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_x448 :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 56) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt) +botan_privkey_load_x448 = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_b435689d2330cfda + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_x448@ +foreign import ccall unsafe "hs_bindgen_10a5d199a3f6cf7c" hs_bindgen_10a5d199a3f6cf7c :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 56) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_load_x448 #-} +{-| __C declaration:__ @botan_pubkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1788:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_x448 :: Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 56) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt) +botan_pubkey_load_x448 = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_10a5d199a3f6cf7c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_x448_get_privkey@ +foreign import ccall unsafe "hs_bindgen_b1e922a50085807e" hs_bindgen_b1e922a50085807e :: + IO (Ptr.FunPtr (Botan_privkey_t -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 56) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_x448_get_privkey #-} +{-| __C declaration:__ @botan_privkey_x448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1791:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_x448_get_privkey :: Ptr.FunPtr (Botan_privkey_t -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 56) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt) +botan_privkey_x448_get_privkey = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_b1e922a50085807e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_x448_get_pubkey@ +foreign import ccall unsafe "hs_bindgen_1cbcb5aa3b063bc2" hs_bindgen_1cbcb5aa3b063bc2 :: + IO (Ptr.FunPtr (Botan_pubkey_t -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 56) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_x448_get_pubkey #-} +{-| __C declaration:__ @botan_pubkey_x448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1794:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_x448_get_pubkey :: Ptr.FunPtr (Botan_pubkey_t -> ((HsBindgen.Runtime.ConstantArray.ConstantArray 56) HsBindgen.Runtime.Prelude.Word8) -> IO FC.CInt) +botan_pubkey_x448_get_pubkey = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_1cbcb5aa3b063bc2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_ml_dsa@ +foreign import ccall unsafe "hs_bindgen_0af3294214910400" hs_bindgen_0af3294214910400 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_load_ml_dsa #-} +{-| __C declaration:__ @botan_privkey_load_ml_dsa@ + + __defined at:__ @botan\/ffi.h:1801:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_ml_dsa :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_privkey_load_ml_dsa = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_0af3294214910400 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_ml_dsa@ +foreign import ccall unsafe "hs_bindgen_1af987a0d0b45c9f" hs_bindgen_1af987a0d0b45c9f :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_load_ml_dsa #-} +{-| __C declaration:__ @botan_pubkey_load_ml_dsa@ + + __defined at:__ @botan\/ffi.h:1804:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_ml_dsa :: Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_pubkey_load_ml_dsa = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_1af987a0d0b45c9f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_86ea444fe3bf662e" hs_bindgen_86ea444fe3bf662e :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_load_kyber #-} +{-| __C declaration:__ @botan_privkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1815:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_kyber :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_privkey_load_kyber = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_86ea444fe3bf662e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_kyber@ +foreign import ccall unsafe "hs_bindgen_0370617fccfe811b" hs_bindgen_0370617fccfe811b :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_load_kyber #-} +{-| __C declaration:__ @botan_pubkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1818:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_kyber :: Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_pubkey_load_kyber = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_0370617fccfe811b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_e4f0939ca42ad72d" hs_bindgen_e4f0939ca42ad72d :: + IO (Ptr.FunPtr (Botan_privkey_t -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_view_kyber_raw_key #-} +{-| __C declaration:__ @botan_privkey_view_kyber_raw_key@ + + __defined at:__ @botan\/ffi.h:1822:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_view_kyber_raw_key :: Ptr.FunPtr (Botan_privkey_t -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt) +botan_privkey_view_kyber_raw_key = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_e4f0939ca42ad72d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_view_kyber_raw_key@ +foreign import ccall unsafe "hs_bindgen_24514d574fdb7ae0" hs_bindgen_24514d574fdb7ae0 :: + IO (Ptr.FunPtr (Botan_pubkey_t -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_view_kyber_raw_key #-} +{-| __C declaration:__ @botan_pubkey_view_kyber_raw_key@ + + __defined at:__ @botan\/ffi.h:1826:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_view_kyber_raw_key :: Ptr.FunPtr (Botan_pubkey_t -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt) +botan_pubkey_view_kyber_raw_key = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_24514d574fdb7ae0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_frodokem@ +foreign import ccall unsafe "hs_bindgen_f0beb69851124952" hs_bindgen_f0beb69851124952 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_load_frodokem #-} +{-| Algorithm specific key operation: FrodoKEM + +__C declaration:__ @botan_privkey_load_frodokem@ + +__defined at:__ @botan\/ffi.h:1833:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_frodokem :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_privkey_load_frodokem = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_f0beb69851124952 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_frodokem@ +foreign import ccall unsafe "hs_bindgen_12867f5d54e8c2c3" hs_bindgen_12867f5d54e8c2c3 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_load_frodokem #-} +{-| __C declaration:__ @botan_pubkey_load_frodokem@ + + __defined at:__ @botan\/ffi.h:1836:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_frodokem :: Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_pubkey_load_frodokem = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_12867f5d54e8c2c3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_classic_mceliece@ +foreign import ccall unsafe "hs_bindgen_cfd4e98340b7d720" hs_bindgen_cfd4e98340b7d720 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_load_classic_mceliece #-} +{-| Algorithm specific key operation: Classic McEliece + +__C declaration:__ @botan_privkey_load_classic_mceliece@ + +__defined at:__ @botan\/ffi.h:1843:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_classic_mceliece :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_privkey_load_classic_mceliece = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_cfd4e98340b7d720 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_classic_mceliece@ +foreign import ccall unsafe "hs_bindgen_c9ff9513b2b20fc1" hs_bindgen_c9ff9513b2b20fc1 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_load_classic_mceliece #-} +{-| __C declaration:__ @botan_pubkey_load_classic_mceliece@ + + __defined at:__ @botan\/ffi.h:1849:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_classic_mceliece :: Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_pubkey_load_classic_mceliece = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_c9ff9513b2b20fc1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_ml_kem@ +foreign import ccall unsafe "hs_bindgen_cf5b20813d2c32ab" hs_bindgen_cf5b20813d2c32ab :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_load_ml_kem #-} +{-| __C declaration:__ @botan_privkey_load_ml_kem@ + + __defined at:__ @botan\/ffi.h:1859:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_ml_kem :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_privkey_load_ml_kem = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_cf5b20813d2c32ab + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_ml_kem@ +foreign import ccall unsafe "hs_bindgen_04b806ccb475bdf5" hs_bindgen_04b806ccb475bdf5 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_load_ml_kem #-} +{-| __C declaration:__ @botan_pubkey_load_ml_kem@ + + __defined at:__ @botan\/ffi.h:1862:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_ml_kem :: Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_pubkey_load_ml_kem = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_04b806ccb475bdf5 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_slh_dsa@ +foreign import ccall unsafe "hs_bindgen_9107ff1e590e80b2" hs_bindgen_9107ff1e590e80b2 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_load_slh_dsa #-} +{-| __C declaration:__ @botan_privkey_load_slh_dsa@ + + __defined at:__ @botan\/ffi.h:1869:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_slh_dsa :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_privkey_load_slh_dsa = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_9107ff1e590e80b2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_slh_dsa@ +foreign import ccall unsafe "hs_bindgen_ef9ccf780300c79f" hs_bindgen_ef9ccf780300c79f :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_load_slh_dsa #-} +{-| __C declaration:__ @botan_pubkey_load_slh_dsa@ + + __defined at:__ @botan\/ffi.h:1872:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_slh_dsa :: Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_pubkey_load_slh_dsa = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_ef9ccf780300c79f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall unsafe "hs_bindgen_923a049beeeb8f2c" hs_bindgen_923a049beeeb8f2c :: + IO (Ptr.FunPtr (Botan_pubkey_t -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_ecc_key_used_explicit_encoding #-} +{-| __C declaration:__ @botan_pubkey_ecc_key_used_explicit_encoding@ + + __defined at:__ @botan\/ffi.h:1878:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_ecc_key_used_explicit_encoding :: Ptr.FunPtr (Botan_pubkey_t -> IO FC.CInt) +botan_pubkey_ecc_key_used_explicit_encoding = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_923a049beeeb8f2c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_55dceb036014f8a4" hs_bindgen_55dceb036014f8a4 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_load_ecdsa #-} +{-| __C declaration:__ @botan_privkey_load_ecdsa@ + + __defined at:__ @botan\/ffi.h:1881:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_ecdsa :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_privkey_load_ecdsa = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_55dceb036014f8a4 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_ecdsa@ +foreign import ccall unsafe "hs_bindgen_399bba5201ba33ef" hs_bindgen_399bba5201ba33ef :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_mp_t -> Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_load_ecdsa #-} +{-| __C declaration:__ @botan_pubkey_load_ecdsa@ + + __defined at:__ @botan\/ffi.h:1884:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_ecdsa :: Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_mp_t -> Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_pubkey_load_ecdsa = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_399bba5201ba33ef + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_ecdsa_sec1@ +foreign import ccall unsafe "hs_bindgen_a14ba7296bf8cb6f" hs_bindgen_a14ba7296bf8cb6f :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_load_ecdsa_sec1 #-} +{-| __C declaration:__ @botan_pubkey_load_ecdsa_sec1@ + + __defined at:__ @botan\/ffi.h:1887:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_ecdsa_sec1 :: Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_pubkey_load_ecdsa_sec1 = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_a14ba7296bf8cb6f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_9041aeb372d5b41d" hs_bindgen_9041aeb372d5b41d :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_mp_t -> Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_load_ecdh #-} +{-| __C declaration:__ @botan_pubkey_load_ecdh@ + + __defined at:__ @botan\/ffi.h:1890:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_ecdh :: Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_mp_t -> Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_pubkey_load_ecdh = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_9041aeb372d5b41d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_ecdh_sec1@ +foreign import ccall unsafe "hs_bindgen_9a84028de4de9280" hs_bindgen_9a84028de4de9280 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_load_ecdh_sec1 #-} +{-| __C declaration:__ @botan_pubkey_load_ecdh_sec1@ + + __defined at:__ @botan\/ffi.h:1893:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_ecdh_sec1 :: Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_pubkey_load_ecdh_sec1 = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_9a84028de4de9280 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_ecdh@ +foreign import ccall unsafe "hs_bindgen_a7cb37e677a46f5c" hs_bindgen_a7cb37e677a46f5c :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_load_ecdh #-} +{-| __C declaration:__ @botan_privkey_load_ecdh@ + + __defined at:__ @botan\/ffi.h:1896:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_ecdh :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_privkey_load_ecdh = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_a7cb37e677a46f5c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_362e621f413ae38c" hs_bindgen_362e621f413ae38c :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_mp_t -> Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_load_sm2 #-} +{-| __C declaration:__ @botan_pubkey_load_sm2@ + + __defined at:__ @botan\/ffi.h:1899:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_sm2 :: Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_mp_t -> Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_pubkey_load_sm2 = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_362e621f413ae38c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_sm2_sec1@ +foreign import ccall unsafe "hs_bindgen_8075bfa3cfd97522" hs_bindgen_8075bfa3cfd97522 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_load_sm2_sec1 #-} +{-| __C declaration:__ @botan_pubkey_load_sm2_sec1@ + + __defined at:__ @botan\/ffi.h:1902:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_sm2_sec1 :: Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_pubkey_load_sm2_sec1 = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_8075bfa3cfd97522 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_sm2@ +foreign import ccall unsafe "hs_bindgen_8d9b5afb31ed04c5" hs_bindgen_8d9b5afb31ed04c5 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_load_sm2 #-} +{-| __C declaration:__ @botan_privkey_load_sm2@ + + __defined at:__ @botan\/ffi.h:1905:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_sm2 :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_privkey_load_sm2 = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_8d9b5afb31ed04c5 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_2e62eee1ba69eead" hs_bindgen_2e62eee1ba69eead :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_mp_t -> Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_load_sm2_enc #-} +{-| __C declaration:__ @botan_pubkey_load_sm2_enc@ + + __defined at:__ @botan\/ffi.h:1909:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_sm2_enc :: Ptr.FunPtr ((Ptr.Ptr Botan_pubkey_t) -> Botan_mp_t -> Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_pubkey_load_sm2_enc = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_2e62eee1ba69eead + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_privkey_load_sm2_enc@ +foreign import ccall unsafe "hs_bindgen_e1a0859d7e8bf472" hs_bindgen_e1a0859d7e8bf472 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_privkey_load_sm2_enc #-} +{-| __C declaration:__ @botan_privkey_load_sm2_enc@ + + __defined at:__ @botan\/ffi.h:1913:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_sm2_enc :: Ptr.FunPtr ((Ptr.Ptr Botan_privkey_t) -> Botan_mp_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_privkey_load_sm2_enc = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_e1a0859d7e8bf472 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_sm2_compute_za@ +foreign import ccall unsafe "hs_bindgen_dc758e9b46b5b49c" hs_bindgen_dc758e9b46b5b49c :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> Botan_pubkey_t -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_sm2_compute_za #-} +{-| __C declaration:__ @botan_pubkey_sm2_compute_za@ + + __defined at:__ @botan\/ffi.h:1916:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_sm2_compute_za :: Ptr.FunPtr ((HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> Botan_pubkey_t -> IO FC.CInt) +botan_pubkey_sm2_compute_za = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_dc758e9b46b5b49c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pubkey_view_ec_public_point@ +foreign import ccall unsafe "hs_bindgen_508fa08a3ffc3d47" hs_bindgen_508fa08a3ffc3d47 :: + IO (Ptr.FunPtr (Botan_pubkey_t -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt)) + +{-# NOINLINE botan_pubkey_view_ec_public_point #-} +{-| View the uncompressed public point associated with the key + +__C declaration:__ @botan_pubkey_view_ec_public_point@ + +__defined at:__ @botan\/ffi.h:1923:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_view_ec_public_point :: Ptr.FunPtr (Botan_pubkey_t -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt) +botan_pubkey_view_ec_public_point = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_508fa08a3ffc3d47 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_452dfea13ec76430" hs_bindgen_452dfea13ec76430 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pk_op_encrypt_t) -> Botan_pubkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_encrypt_create #-} +{-| __C declaration:__ @botan_pk_op_encrypt_create@ + + __defined at:__ @botan\/ffi.h:1931:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_encrypt_create :: Ptr.FunPtr ((Ptr.Ptr Botan_pk_op_encrypt_t) -> Botan_pubkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_pk_op_encrypt_create = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_452dfea13ec76430 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_5f0c6187573af262" hs_bindgen_5f0c6187573af262 :: + IO (Ptr.FunPtr (Botan_pk_op_encrypt_t -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_encrypt_destroy #-} +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pk_op_encrypt_destroy@ + +__defined at:__ @botan\/ffi.h:1936:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_encrypt_destroy :: Ptr.FunPtr (Botan_pk_op_encrypt_t -> IO FC.CInt) +botan_pk_op_encrypt_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_5f0c6187573af262 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_encrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_76c4d3eace157e03" hs_bindgen_76c4d3eace157e03 :: + IO (Ptr.FunPtr (Botan_pk_op_encrypt_t -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_encrypt_output_length #-} +{-| __C declaration:__ @botan_pk_op_encrypt_output_length@ + + __defined at:__ @botan\/ffi.h:1939:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_encrypt_output_length :: Ptr.FunPtr (Botan_pk_op_encrypt_t -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_pk_op_encrypt_output_length = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_76c4d3eace157e03 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_encrypt@ +foreign import ccall unsafe "hs_bindgen_fcfe1e00a36e4c62" hs_bindgen_fcfe1e00a36e4c62 :: + IO (Ptr.FunPtr (Botan_pk_op_encrypt_t -> Botan_rng_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_encrypt #-} +{-| __C declaration:__ @botan_pk_op_encrypt@ + + __defined at:__ @botan\/ffi.h:1942:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_encrypt :: Ptr.FunPtr (Botan_pk_op_encrypt_t -> Botan_rng_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_pk_op_encrypt = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_fcfe1e00a36e4c62 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_e029a2d12ffa012c" hs_bindgen_e029a2d12ffa012c :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pk_op_decrypt_t) -> Botan_privkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_decrypt_create #-} +{-| __C declaration:__ @botan_pk_op_decrypt_create@ + + __defined at:__ @botan\/ffi.h:1955:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_decrypt_create :: Ptr.FunPtr ((Ptr.Ptr Botan_pk_op_decrypt_t) -> Botan_privkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_pk_op_decrypt_create = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_e029a2d12ffa012c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_402cb43c7e3f047c" hs_bindgen_402cb43c7e3f047c :: + IO (Ptr.FunPtr (Botan_pk_op_decrypt_t -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_decrypt_destroy #-} +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pk_op_decrypt_destroy@ + +__defined at:__ @botan\/ffi.h:1960:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_decrypt_destroy :: Ptr.FunPtr (Botan_pk_op_decrypt_t -> IO FC.CInt) +botan_pk_op_decrypt_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_402cb43c7e3f047c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_decrypt_output_length@ +foreign import ccall unsafe "hs_bindgen_49e534b78a6e1db0" hs_bindgen_49e534b78a6e1db0 :: + IO (Ptr.FunPtr (Botan_pk_op_decrypt_t -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_decrypt_output_length #-} +{-| __C declaration:__ @botan_pk_op_decrypt_output_length@ + + __defined at:__ @botan\/ffi.h:1963:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_decrypt_output_length :: Ptr.FunPtr (Botan_pk_op_decrypt_t -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_pk_op_decrypt_output_length = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_49e534b78a6e1db0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_decrypt@ +foreign import ccall unsafe "hs_bindgen_7f48d20a70cde81a" hs_bindgen_7f48d20a70cde81a :: + IO (Ptr.FunPtr (Botan_pk_op_decrypt_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_decrypt #-} +{-| __C declaration:__ @botan_pk_op_decrypt@ + + __defined at:__ @botan\/ffi.h:1966:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_decrypt :: Ptr.FunPtr (Botan_pk_op_decrypt_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_pk_op_decrypt = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_7f48d20a70cde81a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_sign_create@ +foreign import ccall unsafe "hs_bindgen_90a0476632b27799" hs_bindgen_90a0476632b27799 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pk_op_sign_t) -> Botan_privkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_sign_create #-} +{-| __C declaration:__ @botan_pk_op_sign_create@ + + __defined at:__ @botan\/ffi.h:1978:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_sign_create :: Ptr.FunPtr ((Ptr.Ptr Botan_pk_op_sign_t) -> Botan_privkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_pk_op_sign_create = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_90a0476632b27799 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_sign_destroy@ +foreign import ccall unsafe "hs_bindgen_2ff7e9a719f9503d" hs_bindgen_2ff7e9a719f9503d :: + IO (Ptr.FunPtr (Botan_pk_op_sign_t -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_sign_destroy #-} +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pk_op_sign_destroy@ + +__defined at:__ @botan\/ffi.h:1983:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_sign_destroy :: Ptr.FunPtr (Botan_pk_op_sign_t -> IO FC.CInt) +botan_pk_op_sign_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_2ff7e9a719f9503d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_sign_output_length@ +foreign import ccall unsafe "hs_bindgen_193cade433b92cb1" hs_bindgen_193cade433b92cb1 :: + IO (Ptr.FunPtr (Botan_pk_op_sign_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_sign_output_length #-} +{-| __C declaration:__ @botan_pk_op_sign_output_length@ + + __defined at:__ @botan\/ffi.h:1985:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_sign_output_length :: Ptr.FunPtr (Botan_pk_op_sign_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_pk_op_sign_output_length = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_193cade433b92cb1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_sign_update@ +foreign import ccall unsafe "hs_bindgen_9b3e3afdff79b117" hs_bindgen_9b3e3afdff79b117 :: + IO (Ptr.FunPtr (Botan_pk_op_sign_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_sign_update #-} +{-| __C declaration:__ @botan_pk_op_sign_update@ + + __defined at:__ @botan\/ffi.h:1987:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_sign_update :: Ptr.FunPtr (Botan_pk_op_sign_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_pk_op_sign_update = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_9b3e3afdff79b117 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_sign_finish@ +foreign import ccall unsafe "hs_bindgen_1868cc56df0cf25f" hs_bindgen_1868cc56df0cf25f :: + IO (Ptr.FunPtr (Botan_pk_op_sign_t -> Botan_rng_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_sign_finish #-} +{-| __C declaration:__ @botan_pk_op_sign_finish@ + + __defined at:__ @botan\/ffi.h:1990:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_sign_finish :: Ptr.FunPtr (Botan_pk_op_sign_t -> Botan_rng_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_pk_op_sign_finish = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_1868cc56df0cf25f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_verify_create@ +foreign import ccall unsafe "hs_bindgen_1757cd01887c1354" hs_bindgen_1757cd01887c1354 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pk_op_verify_t) -> Botan_pubkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_verify_create #-} +{-| __C declaration:__ @botan_pk_op_verify_create@ + + __defined at:__ @botan\/ffi.h:1998:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_verify_create :: Ptr.FunPtr ((Ptr.Ptr Botan_pk_op_verify_t) -> Botan_pubkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_pk_op_verify_create = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_1757cd01887c1354 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_verify_destroy@ +foreign import ccall unsafe "hs_bindgen_f50806c7e6129331" hs_bindgen_f50806c7e6129331 :: + IO (Ptr.FunPtr (Botan_pk_op_verify_t -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_verify_destroy #-} +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pk_op_verify_destroy@ + +__defined at:__ @botan\/ffi.h:2006:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_verify_destroy :: Ptr.FunPtr (Botan_pk_op_verify_t -> IO FC.CInt) +botan_pk_op_verify_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_f50806c7e6129331 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_verify_update@ +foreign import ccall unsafe "hs_bindgen_04adf6e168739264" hs_bindgen_04adf6e168739264 :: + IO (Ptr.FunPtr (Botan_pk_op_verify_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_verify_update #-} +{-| __C declaration:__ @botan_pk_op_verify_update@ + + __defined at:__ @botan\/ffi.h:2008:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_verify_update :: Ptr.FunPtr (Botan_pk_op_verify_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_pk_op_verify_update = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_04adf6e168739264 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_verify_finish@ +foreign import ccall unsafe "hs_bindgen_6ffccb7aaa93e1ed" hs_bindgen_6ffccb7aaa93e1ed :: + IO (Ptr.FunPtr (Botan_pk_op_verify_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_verify_finish #-} +{-| __C declaration:__ @botan_pk_op_verify_finish@ + + __defined at:__ @botan\/ffi.h:2009:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_verify_finish :: Ptr.FunPtr (Botan_pk_op_verify_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_pk_op_verify_finish = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_6ffccb7aaa93e1ed + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_key_agreement_create@ +foreign import ccall unsafe "hs_bindgen_03bfd87207403d56" hs_bindgen_03bfd87207403d56 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pk_op_ka_t) -> Botan_privkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_key_agreement_create #-} +{-| __C declaration:__ @botan_pk_op_key_agreement_create@ + + __defined at:__ @botan\/ffi.h:2017:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_key_agreement_create :: Ptr.FunPtr ((Ptr.Ptr Botan_pk_op_ka_t) -> Botan_privkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_pk_op_key_agreement_create = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_03bfd87207403d56 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_key_agreement_destroy@ +foreign import ccall unsafe "hs_bindgen_c013c9f1c8bc61a3" hs_bindgen_c013c9f1c8bc61a3 :: + IO (Ptr.FunPtr (Botan_pk_op_ka_t -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_key_agreement_destroy #-} +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pk_op_key_agreement_destroy@ + +__defined at:__ @botan\/ffi.h:2022:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_key_agreement_destroy :: Ptr.FunPtr (Botan_pk_op_ka_t -> IO FC.CInt) +botan_pk_op_key_agreement_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_c013c9f1c8bc61a3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_key_agreement_export_public@ +foreign import ccall unsafe "hs_bindgen_a540bd6936f0454a" hs_bindgen_a540bd6936f0454a :: + IO (Ptr.FunPtr (Botan_privkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_key_agreement_export_public #-} +{-| __C declaration:__ @botan_pk_op_key_agreement_export_public@ + + __defined at:__ @botan\/ffi.h:2024:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_key_agreement_export_public :: Ptr.FunPtr (Botan_privkey_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_pk_op_key_agreement_export_public = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_a540bd6936f0454a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_key_agreement_view_public@ +foreign import ccall unsafe "hs_bindgen_05ed81244394c4ef" hs_bindgen_05ed81244394c4ef :: + IO (Ptr.FunPtr (Botan_privkey_t -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_key_agreement_view_public #-} +{-| __C declaration:__ @botan_pk_op_key_agreement_view_public@ + + __defined at:__ @botan\/ffi.h:2027:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_key_agreement_view_public :: Ptr.FunPtr (Botan_privkey_t -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt) +botan_pk_op_key_agreement_view_public = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_05ed81244394c4ef + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_key_agreement_size@ +foreign import ccall unsafe "hs_bindgen_46ffaf28b3c6001f" hs_bindgen_46ffaf28b3c6001f :: + IO (Ptr.FunPtr (Botan_pk_op_ka_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_key_agreement_size #-} +{-| __C declaration:__ @botan_pk_op_key_agreement_size@ + + __defined at:__ @botan\/ffi.h:2029:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_key_agreement_size :: Ptr.FunPtr (Botan_pk_op_ka_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_pk_op_key_agreement_size = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_46ffaf28b3c6001f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_key_agreement@ +foreign import ccall unsafe "hs_bindgen_572e2f07c92c8c9a" hs_bindgen_572e2f07c92c8c9a :: + IO (Ptr.FunPtr (Botan_pk_op_ka_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_key_agreement #-} +{-| __C declaration:__ @botan_pk_op_key_agreement@ + + __defined at:__ @botan\/ffi.h:2032:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_key_agreement :: Ptr.FunPtr (Botan_pk_op_ka_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_pk_op_key_agreement = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_572e2f07c92c8c9a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_kem_encrypt_create@ +foreign import ccall unsafe "hs_bindgen_a7c7d09a78c15f88" hs_bindgen_a7c7d09a78c15f88 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pk_op_kem_encrypt_t) -> Botan_pubkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_kem_encrypt_create #-} +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create@ + + __defined at:__ @botan\/ffi.h:2046:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_encrypt_create :: Ptr.FunPtr ((Ptr.Ptr Botan_pk_op_kem_encrypt_t) -> Botan_pubkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_pk_op_kem_encrypt_create = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_a7c7d09a78c15f88 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_339b633117d71578" hs_bindgen_339b633117d71578 :: + IO (Ptr.FunPtr (Botan_pk_op_kem_encrypt_t -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_kem_encrypt_destroy #-} +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pk_op_kem_encrypt_destroy@ + +__defined at:__ @botan\/ffi.h:2051:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_encrypt_destroy :: Ptr.FunPtr (Botan_pk_op_kem_encrypt_t -> IO FC.CInt) +botan_pk_op_kem_encrypt_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_339b633117d71578 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_1ee345bb291ea896" hs_bindgen_1ee345bb291ea896 :: + IO (Ptr.FunPtr (Botan_pk_op_kem_encrypt_t -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_kem_encrypt_shared_key_length #-} +{-| __C declaration:__ @botan_pk_op_kem_encrypt_shared_key_length@ + + __defined at:__ @botan\/ffi.h:2054:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_encrypt_shared_key_length :: Ptr.FunPtr (Botan_pk_op_kem_encrypt_t -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_pk_op_kem_encrypt_shared_key_length = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_1ee345bb291ea896 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall unsafe "hs_bindgen_76e74b3cba8b8abc" hs_bindgen_76e74b3cba8b8abc :: + IO (Ptr.FunPtr (Botan_pk_op_kem_encrypt_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_kem_encrypt_encapsulated_key_length #-} +{-| __C declaration:__ @botan_pk_op_kem_encrypt_encapsulated_key_length@ + + __defined at:__ @botan\/ffi.h:2059:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_encrypt_encapsulated_key_length :: Ptr.FunPtr (Botan_pk_op_kem_encrypt_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_pk_op_kem_encrypt_encapsulated_key_length = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_76e74b3cba8b8abc + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall unsafe "hs_bindgen_180e3841f0e84d47" hs_bindgen_180e3841f0e84d47 :: + IO (Ptr.FunPtr (Botan_pk_op_kem_encrypt_t -> Botan_rng_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_kem_encrypt_create_shared_key #-} +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create_shared_key@ + + __defined at:__ @botan\/ffi.h:2063:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_encrypt_create_shared_key :: Ptr.FunPtr (Botan_pk_op_kem_encrypt_t -> Botan_rng_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_pk_op_kem_encrypt_create_shared_key = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_180e3841f0e84d47 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_kem_decrypt_create@ +foreign import ccall unsafe "hs_bindgen_e35cde16dae81ce7" hs_bindgen_e35cde16dae81ce7 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_pk_op_kem_decrypt_t) -> Botan_privkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_kem_decrypt_create #-} +{-| __C declaration:__ @botan_pk_op_kem_decrypt_create@ + + __defined at:__ @botan\/ffi.h:2076:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_decrypt_create :: Ptr.FunPtr ((Ptr.Ptr Botan_pk_op_kem_decrypt_t) -> Botan_privkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_pk_op_kem_decrypt_create = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_e35cde16dae81ce7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall unsafe "hs_bindgen_55cb104ed643c5ad" hs_bindgen_55cb104ed643c5ad :: + IO (Ptr.FunPtr (Botan_pk_op_kem_decrypt_t -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_kem_decrypt_destroy #-} +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pk_op_kem_decrypt_destroy@ + +__defined at:__ @botan\/ffi.h:2081:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_decrypt_destroy :: Ptr.FunPtr (Botan_pk_op_kem_decrypt_t -> IO FC.CInt) +botan_pk_op_kem_decrypt_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_55cb104ed643c5ad + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall unsafe "hs_bindgen_669e16a4cc558909" hs_bindgen_669e16a4cc558909 :: + IO (Ptr.FunPtr (Botan_pk_op_kem_decrypt_t -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_kem_decrypt_shared_key_length #-} +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key_length@ + + __defined at:__ @botan\/ffi.h:2084:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_decrypt_shared_key_length :: Ptr.FunPtr (Botan_pk_op_kem_decrypt_t -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_pk_op_kem_decrypt_shared_key_length = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_669e16a4cc558909 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall unsafe "hs_bindgen_4a6e9d10f3a8d9ce" hs_bindgen_4a6e9d10f3a8d9ce :: + IO (Ptr.FunPtr (Botan_pk_op_kem_decrypt_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_pk_op_kem_decrypt_shared_key #-} +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key@ + + __defined at:__ @botan\/ffi.h:2089:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_decrypt_shared_key :: Ptr.FunPtr (Botan_pk_op_kem_decrypt_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_pk_op_kem_decrypt_shared_key = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_4a6e9d10f3a8d9ce + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_pkcs_hash_id@ +foreign import ccall unsafe "hs_bindgen_c730a2502e9617ec" hs_bindgen_c730a2502e9617ec :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_pkcs_hash_id #-} +{-| Signature Scheme Utility Functions + +__C declaration:__ @botan_pkcs_hash_id@ + +__defined at:__ @botan\/ffi.h:2102:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pkcs_hash_id :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_pkcs_hash_id = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_c730a2502e9617ec + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mceies_encrypt@ +foreign import ccall unsafe "hs_bindgen_ad56a88e093aa71a" hs_bindgen_ad56a88e093aa71a :: + IO (Ptr.FunPtr (Botan_pubkey_t -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_mceies_encrypt #-} +{-| __C declaration:__ @botan_mceies_encrypt@ + + __defined at:__ @botan\/ffi.h:2109:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mceies_encrypt :: Ptr.FunPtr (Botan_pubkey_t -> Botan_rng_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_mceies_encrypt = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_ad56a88e093aa71a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_mceies_decrypt@ +foreign import ccall unsafe "hs_bindgen_a2af1895dfa311c0" hs_bindgen_a2af1895dfa311c0 :: + IO (Ptr.FunPtr (Botan_privkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_mceies_decrypt #-} +{-| __C declaration:__ @botan_mceies_decrypt@ + + __defined at:__ @botan\/ffi.h:2124:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mceies_decrypt :: Ptr.FunPtr (Botan_privkey_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_mceies_decrypt = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_a2af1895dfa311c0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_load@ +foreign import ccall unsafe "hs_bindgen_90b5bd94f82a2f5c" hs_bindgen_90b5bd94f82a2f5c :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_x509_cert_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_load #-} +{-| __C declaration:__ @botan_x509_cert_load@ + + __defined at:__ @botan\/ffi.h:2139:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_load :: Ptr.FunPtr ((Ptr.Ptr Botan_x509_cert_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_x509_cert_load = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_90b5bd94f82a2f5c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_load_file@ +foreign import ccall unsafe "hs_bindgen_65bc088cae2fc6bd" hs_bindgen_65bc088cae2fc6bd :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_x509_cert_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_load_file #-} +{-| __C declaration:__ @botan_x509_cert_load_file@ + + __defined at:__ @botan\/ffi.h:2140:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_load_file :: Ptr.FunPtr ((Ptr.Ptr Botan_x509_cert_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_x509_cert_load_file = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_65bc088cae2fc6bd + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_destroy@ +foreign import ccall unsafe "hs_bindgen_d4e57cc964bce224" hs_bindgen_d4e57cc964bce224 :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_destroy #-} +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_x509_cert_destroy@ + +__defined at:__ @botan\/ffi.h:2145:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_destroy :: Ptr.FunPtr (Botan_x509_cert_t -> IO FC.CInt) +botan_x509_cert_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_d4e57cc964bce224 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_dup@ +foreign import ccall unsafe "hs_bindgen_93c17181643e11dc" hs_bindgen_93c17181643e11dc :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_x509_cert_t) -> Botan_x509_cert_t -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_dup #-} +{-| __C declaration:__ @botan_x509_cert_dup@ + + __defined at:__ @botan\/ffi.h:2147:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_dup :: Ptr.FunPtr ((Ptr.Ptr Botan_x509_cert_t) -> Botan_x509_cert_t -> IO FC.CInt) +botan_x509_cert_dup = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_93c17181643e11dc + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_get_time_starts@ +foreign import ccall unsafe "hs_bindgen_e824f19f7372702c" hs_bindgen_e824f19f7372702c :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_get_time_starts #-} +{-| __C declaration:__ @botan_x509_cert_get_time_starts@ + + __defined at:__ @botan\/ffi.h:2150:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_time_starts :: Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_x509_cert_get_time_starts = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_e824f19f7372702c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_get_time_expires@ +foreign import ccall unsafe "hs_bindgen_5f7855c1abe287cf" hs_bindgen_5f7855c1abe287cf :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_get_time_expires #-} +{-| __C declaration:__ @botan_x509_cert_get_time_expires@ + + __defined at:__ @botan\/ffi.h:2151:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_time_expires :: Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_x509_cert_get_time_expires = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_5f7855c1abe287cf + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_not_before@ +foreign import ccall unsafe "hs_bindgen_939a179d3c38b5d9" hs_bindgen_939a179d3c38b5d9 :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word64) -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_not_before #-} +{-| __C declaration:__ @botan_x509_cert_not_before@ + + __defined at:__ @botan\/ffi.h:2153:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_not_before :: Ptr.FunPtr (Botan_x509_cert_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word64) -> IO FC.CInt) +botan_x509_cert_not_before = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_939a179d3c38b5d9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_not_after@ +foreign import ccall unsafe "hs_bindgen_0188e8d184185a74" hs_bindgen_0188e8d184185a74 :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word64) -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_not_after #-} +{-| __C declaration:__ @botan_x509_cert_not_after@ + + __defined at:__ @botan\/ffi.h:2154:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_not_after :: Ptr.FunPtr (Botan_x509_cert_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word64) -> IO FC.CInt) +botan_x509_cert_not_after = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_0188e8d184185a74 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_get_fingerprint@ +foreign import ccall unsafe "hs_bindgen_e9e3d18a9a741c08" hs_bindgen_e9e3d18a9a741c08 :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_get_fingerprint #-} +{-| __C declaration:__ @botan_x509_cert_get_fingerprint@ + + __defined at:__ @botan\/ffi.h:2158:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_fingerprint :: Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_x509_cert_get_fingerprint = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_e9e3d18a9a741c08 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_get_serial_number@ +foreign import ccall unsafe "hs_bindgen_450a79ba02db15ea" hs_bindgen_450a79ba02db15ea :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_get_serial_number #-} +{-| __C declaration:__ @botan_x509_cert_get_serial_number@ + + __defined at:__ @botan\/ffi.h:2160:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_serial_number :: Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_x509_cert_get_serial_number = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_450a79ba02db15ea + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_get_authority_key_id@ +foreign import ccall unsafe "hs_bindgen_eaf836400afdab30" hs_bindgen_eaf836400afdab30 :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_get_authority_key_id #-} +{-| __C declaration:__ @botan_x509_cert_get_authority_key_id@ + + __defined at:__ @botan\/ffi.h:2161:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_authority_key_id :: Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_x509_cert_get_authority_key_id = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_eaf836400afdab30 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_get_subject_key_id@ +foreign import ccall unsafe "hs_bindgen_70a56fc82dc6e800" hs_bindgen_70a56fc82dc6e800 :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_get_subject_key_id #-} +{-| __C declaration:__ @botan_x509_cert_get_subject_key_id@ + + __defined at:__ @botan\/ffi.h:2162:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_subject_key_id :: Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_x509_cert_get_subject_key_id = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_70a56fc82dc6e800 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_get_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_97cd49a61d81e9f7" hs_bindgen_97cd49a61d81e9f7 :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_get_public_key_bits #-} +{-| __C declaration:__ @botan_x509_cert_get_public_key_bits@ + + __defined at:__ @botan\/ffi.h:2164:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_public_key_bits :: Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_x509_cert_get_public_key_bits = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_97cd49a61d81e9f7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_view_public_key_bits@ +foreign import ccall unsafe "hs_bindgen_328970478465ff7a" hs_bindgen_328970478465ff7a :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_view_public_key_bits #-} +{-| __C declaration:__ @botan_x509_cert_view_public_key_bits@ + + __defined at:__ @botan\/ffi.h:2167:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_view_public_key_bits :: Ptr.FunPtr (Botan_x509_cert_t -> Botan_view_ctx -> Botan_view_bin_fn -> IO FC.CInt) +botan_x509_cert_view_public_key_bits = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_328970478465ff7a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_get_public_key@ +foreign import ccall unsafe "hs_bindgen_bc0cf71118bc46b1" hs_bindgen_bc0cf71118bc46b1 :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> (Ptr.Ptr Botan_pubkey_t) -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_get_public_key #-} +{-| __C declaration:__ @botan_x509_cert_get_public_key@ + + __defined at:__ @botan\/ffi.h:2169:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_public_key :: Ptr.FunPtr (Botan_x509_cert_t -> (Ptr.Ptr Botan_pubkey_t) -> IO FC.CInt) +botan_x509_cert_get_public_key = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_bc0cf71118bc46b1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_get_issuer_dn@ +foreign import ccall unsafe "hs_bindgen_90a9ae6e4d751f24" hs_bindgen_90a9ae6e4d751f24 :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_get_issuer_dn #-} +{-| __C declaration:__ @botan_x509_cert_get_issuer_dn@ + + __defined at:__ @botan\/ffi.h:2173:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_issuer_dn :: Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_x509_cert_get_issuer_dn = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_90a9ae6e4d751f24 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_get_subject_dn@ +foreign import ccall unsafe "hs_bindgen_6ec710a33e1b291c" hs_bindgen_6ec710a33e1b291c :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_get_subject_dn #-} +{-| __C declaration:__ @botan_x509_cert_get_subject_dn@ + + __defined at:__ @botan\/ffi.h:2178:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_subject_dn :: Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_x509_cert_get_subject_dn = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_6ec710a33e1b291c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_to_string@ +foreign import ccall unsafe "hs_bindgen_4ac1233e2898431e" hs_bindgen_4ac1233e2898431e :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_to_string #-} +{-| __C declaration:__ @botan_x509_cert_to_string@ + + __defined at:__ @botan\/ffi.h:2181:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_to_string :: Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_x509_cert_to_string = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_4ac1233e2898431e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_view_as_string@ +foreign import ccall unsafe "hs_bindgen_bf603a8f7c5a89e4" hs_bindgen_bf603a8f7c5a89e4 :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> Botan_view_ctx -> Botan_view_str_fn -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_view_as_string #-} +{-| __C declaration:__ @botan_x509_cert_view_as_string@ + + __defined at:__ @botan\/ffi.h:2184:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_view_as_string :: Ptr.FunPtr (Botan_x509_cert_t -> Botan_view_ctx -> Botan_view_str_fn -> IO FC.CInt) +botan_x509_cert_view_as_string = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_bf603a8f7c5a89e4 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_allowed_usage@ +foreign import ccall unsafe "hs_bindgen_57884a5ec41821b3" hs_bindgen_57884a5ec41821b3 :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> FC.CUInt -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_allowed_usage #-} +{-| __C declaration:__ @botan_x509_cert_allowed_usage@ + + __defined at:__ @botan\/ffi.h:2200:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_allowed_usage :: Ptr.FunPtr (Botan_x509_cert_t -> FC.CUInt -> IO FC.CInt) +botan_x509_cert_allowed_usage = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_57884a5ec41821b3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_hostname_match@ +foreign import ccall unsafe "hs_bindgen_dbfa554b1a5383f4" hs_bindgen_dbfa554b1a5383f4 :: + IO (Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_hostname_match #-} +{-| Check if the certificate matches the specified hostname via alternative name or CN match. RFC 5280 wildcards also supported. + +__C declaration:__ @botan_x509_cert_hostname_match@ + +__defined at:__ @botan\/ffi.h:2206:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_hostname_match :: Ptr.FunPtr (Botan_x509_cert_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_x509_cert_hostname_match = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_dbfa554b1a5383f4 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_verify@ +foreign import ccall unsafe "hs_bindgen_da95152583276b76" hs_bindgen_da95152583276b76 :: + IO (Ptr.FunPtr ((Ptr.Ptr FC.CInt) -> Botan_x509_cert_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word64 -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_verify #-} +{-| Returns 0 if the validation was successful, 1 if validation failed, and negative on error. A status code with details is written to *validation_result + + Intermediates or trusted lists can be null Trusted path can be null + +__C declaration:__ @botan_x509_cert_verify@ + +__defined at:__ @botan\/ffi.h:2217:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_verify :: Ptr.FunPtr ((Ptr.Ptr FC.CInt) -> Botan_x509_cert_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word64 -> IO FC.CInt) +botan_x509_cert_verify = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_da95152583276b76 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_validation_status@ +foreign import ccall unsafe "hs_bindgen_148af65d4487ec87" hs_bindgen_148af65d4487ec87 :: + IO (Ptr.FunPtr (FC.CInt -> IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar))) + +{-# NOINLINE botan_x509_cert_validation_status #-} +{-| Returns a pointer to a static character string explaining the status code, or else NULL if unknown. + +__C declaration:__ @botan_x509_cert_validation_status@ + +__defined at:__ @botan\/ffi.h:2232:36@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_validation_status :: Ptr.FunPtr (FC.CInt -> IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar)) +botan_x509_cert_validation_status = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_148af65d4487ec87 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_crl_load_file@ +foreign import ccall unsafe "hs_bindgen_b6f98f6a4b3cfd2d" hs_bindgen_b6f98f6a4b3cfd2d :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_x509_crl_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_x509_crl_load_file #-} +{-| __C declaration:__ @botan_x509_crl_load_file@ + + __defined at:__ @botan\/ffi.h:2240:29@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_crl_load_file :: Ptr.FunPtr ((Ptr.Ptr Botan_x509_crl_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_x509_crl_load_file = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_b6f98f6a4b3cfd2d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_crl_load@ +foreign import ccall unsafe "hs_bindgen_6bf65f61b856c504" hs_bindgen_6bf65f61b856c504 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_x509_crl_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_x509_crl_load #-} +{-| __C declaration:__ @botan_x509_crl_load@ + + __defined at:__ @botan\/ffi.h:2242:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_crl_load :: Ptr.FunPtr ((Ptr.Ptr Botan_x509_crl_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_x509_crl_load = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_6bf65f61b856c504 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_crl_destroy@ +foreign import ccall unsafe "hs_bindgen_3c2c8c0c2a8833d6" hs_bindgen_3c2c8c0c2a8833d6 :: + IO (Ptr.FunPtr (Botan_x509_crl_t -> IO FC.CInt)) + +{-# NOINLINE botan_x509_crl_destroy #-} +{-| __C declaration:__ @botan_x509_crl_destroy@ + + __defined at:__ @botan\/ffi.h:2244:29@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_crl_destroy :: Ptr.FunPtr (Botan_x509_crl_t -> IO FC.CInt) +botan_x509_crl_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_3c2c8c0c2a8833d6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_is_revoked@ +foreign import ccall unsafe "hs_bindgen_6c34bc2cf5d2eed3" hs_bindgen_6c34bc2cf5d2eed3 :: + IO (Ptr.FunPtr (Botan_x509_crl_t -> Botan_x509_cert_t -> IO FC.CInt)) + +{-# NOINLINE botan_x509_is_revoked #-} +{-| Given a CRL and a certificate, check if the certificate is revoked on that particular CRL + +__C declaration:__ @botan_x509_is_revoked@ + +__defined at:__ @botan\/ffi.h:2250:29@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_x509_is_revoked :: Ptr.FunPtr (Botan_x509_crl_t -> Botan_x509_cert_t -> IO FC.CInt) +botan_x509_is_revoked = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_6c34bc2cf5d2eed3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_x509_cert_verify_with_crl@ +foreign import ccall unsafe "hs_bindgen_f2be10a2c2ac745d" hs_bindgen_f2be10a2c2ac745d :: + IO (Ptr.FunPtr ((Ptr.Ptr FC.CInt) -> Botan_x509_cert_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_crl_t) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word64 -> IO FC.CInt)) + +{-# NOINLINE botan_x509_cert_verify_with_crl #-} +{-| Different flavor of `botan_x509_cert_verify`, supports revocation lists. CRLs are passed as an array, same as intermediates and trusted CAs + +__C declaration:__ @botan_x509_cert_verify_with_crl@ + +__defined at:__ @botan\/ffi.h:2257:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_verify_with_crl :: Ptr.FunPtr ((Ptr.Ptr FC.CInt) -> Botan_x509_cert_t -> (HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_crl_t) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.Word64 -> IO FC.CInt) +botan_x509_cert_verify_with_crl = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_f2be10a2c2ac745d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_key_wrap3394@ +foreign import ccall unsafe "hs_bindgen_725ec8a238172824" hs_bindgen_725ec8a238172824 :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_key_wrap3394 #-} +{-| Key wrapping as per RFC 3394 + +__C declaration:__ @botan_key_wrap3394@ + +__defined at:__ @botan\/ffi.h:2275:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_key_wrap3394 :: Ptr.FunPtr ((HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_key_wrap3394 = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_725ec8a238172824 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_key_unwrap3394@ +foreign import ccall unsafe "hs_bindgen_1e70b087cb0f31a0" hs_bindgen_1e70b087cb0f31a0 :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_key_unwrap3394 #-} +{-| __C declaration:__ @botan_key_unwrap3394@ + + __defined at:__ @botan\/ffi.h:2284:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_key_unwrap3394 :: Ptr.FunPtr ((HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_key_unwrap3394 = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_1e70b087cb0f31a0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_nist_kw_enc@ +foreign import ccall unsafe "hs_bindgen_5bc731b094387ec1" hs_bindgen_5bc731b094387ec1 :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> FC.CInt -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_nist_kw_enc #-} +{-| __C declaration:__ @botan_nist_kw_enc@ + + __defined at:__ @botan\/ffi.h:2292:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_nist_kw_enc :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> FC.CInt -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_nist_kw_enc = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_5bc731b094387ec1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_nist_kw_dec@ +foreign import ccall unsafe "hs_bindgen_2a651c18df5cbf36" hs_bindgen_2a651c18df5cbf36 :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> FC.CInt -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_nist_kw_dec #-} +{-| __C declaration:__ @botan_nist_kw_dec@ + + __defined at:__ @botan\/ffi.h:2302:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_nist_kw_dec :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> FC.CInt -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_nist_kw_dec = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_2a651c18df5cbf36 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_hotp_init@ +foreign import ccall unsafe "hs_bindgen_255b4816589a1a3a" hs_bindgen_255b4816589a1a3a :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_hotp_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_hotp_init #-} +{-| Initialize a HOTP instance + +__C declaration:__ @botan_hotp_init@ + +__defined at:__ @botan\/ffi.h:2321:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_init :: Ptr.FunPtr ((Ptr.Ptr Botan_hotp_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_hotp_init = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_255b4816589a1a3a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_hotp_destroy@ +foreign import ccall unsafe "hs_bindgen_15c24af2c7ebd682" hs_bindgen_15c24af2c7ebd682 :: + IO (Ptr.FunPtr (Botan_hotp_t -> IO FC.CInt)) + +{-# NOINLINE botan_hotp_destroy #-} +{-| Destroy a HOTP instance + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_hotp_destroy@ + +__defined at:__ @botan\/ffi.h:2328:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_destroy :: Ptr.FunPtr (Botan_hotp_t -> IO FC.CInt) +botan_hotp_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_15c24af2c7ebd682 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_hotp_generate@ +foreign import ccall unsafe "hs_bindgen_93005e59379181bd" hs_bindgen_93005e59379181bd :: + IO (Ptr.FunPtr (Botan_hotp_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word32) -> HsBindgen.Runtime.Prelude.Word64 -> IO FC.CInt)) + +{-# NOINLINE botan_hotp_generate #-} +{-| Generate a HOTP code for the provided counter + +__C declaration:__ @botan_hotp_generate@ + +__defined at:__ @botan\/ffi.h:2334:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_generate :: Ptr.FunPtr (Botan_hotp_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word32) -> HsBindgen.Runtime.Prelude.Word64 -> IO FC.CInt) +botan_hotp_generate = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_93005e59379181bd + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_hotp_check@ +foreign import ccall unsafe "hs_bindgen_5091c0251d013055" hs_bindgen_5091c0251d013055 :: + IO (Ptr.FunPtr (Botan_hotp_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word64) -> HsBindgen.Runtime.Prelude.Word32 -> HsBindgen.Runtime.Prelude.Word64 -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_hotp_check #-} +{-| Verify a HOTP code + +__C declaration:__ @botan_hotp_check@ + +__defined at:__ @botan\/ffi.h:2340:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_check :: Ptr.FunPtr (Botan_hotp_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word64) -> HsBindgen.Runtime.Prelude.Word32 -> HsBindgen.Runtime.Prelude.Word64 -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_hotp_check = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_5091c0251d013055 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_totp_init@ +foreign import ccall unsafe "hs_bindgen_e33f4fce1ba2dad6" hs_bindgen_e33f4fce1ba2dad6 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_totp_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_totp_init #-} +{-| Initialize a TOTP instance + +__C declaration:__ @botan_totp_init@ + +__defined at:__ @botan\/ffi.h:2353:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_init :: Ptr.FunPtr ((Ptr.Ptr Botan_totp_t) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_totp_init = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_e33f4fce1ba2dad6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_totp_destroy@ +foreign import ccall unsafe "hs_bindgen_a3fc04f39d9d2667" hs_bindgen_a3fc04f39d9d2667 :: + IO (Ptr.FunPtr (Botan_totp_t -> IO FC.CInt)) + +{-# NOINLINE botan_totp_destroy #-} +{-| Destroy a TOTP instance + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_totp_destroy@ + +__defined at:__ @botan\/ffi.h:2361:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_destroy :: Ptr.FunPtr (Botan_totp_t -> IO FC.CInt) +botan_totp_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_a3fc04f39d9d2667 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_totp_generate@ +foreign import ccall unsafe "hs_bindgen_4ece7d58da3e0513" hs_bindgen_4ece7d58da3e0513 :: + IO (Ptr.FunPtr (Botan_totp_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word32) -> HsBindgen.Runtime.Prelude.Word64 -> IO FC.CInt)) + +{-# NOINLINE botan_totp_generate #-} +{-| Generate a TOTP code for the provided timestamp + + [__@totp@ /(input)/__]: the TOTP object + + [__@totp_code@ /(input)/__]: the OTP code will be written here + + [__@timestamp@ /(input)/__]: the current local timestamp + +__C declaration:__ @botan_totp_generate@ + +__defined at:__ @botan\/ffi.h:2370:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_generate :: Ptr.FunPtr (Botan_totp_t -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word32) -> HsBindgen.Runtime.Prelude.Word64 -> IO FC.CInt) +botan_totp_generate = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_4ece7d58da3e0513 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_totp_check@ +foreign import ccall unsafe "hs_bindgen_39aa9ff55a3f8c2a" hs_bindgen_39aa9ff55a3f8c2a :: + IO (Ptr.FunPtr (Botan_totp_t -> HsBindgen.Runtime.Prelude.Word32 -> HsBindgen.Runtime.Prelude.Word64 -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_totp_check #-} +{-| Verify a TOTP code + + [__@totp@ /(input)/__]: the TOTP object + + [__@totp_code@ /(input)/__]: the presented OTP + + [__@timestamp@ /(input)/__]: the current local timestamp + + [__@acceptable_clock_drift@ /(input)/__]: specifies the acceptable amount of clock drift (in terms of time steps) between the two hosts. + +__C declaration:__ @botan_totp_check@ + +__defined at:__ @botan\/ffi.h:2381:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_check :: Ptr.FunPtr (Botan_totp_t -> HsBindgen.Runtime.Prelude.Word32 -> HsBindgen.Runtime.Prelude.Word64 -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_totp_check = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_39aa9ff55a3f8c2a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_fpe_fe1_init@ +foreign import ccall unsafe "hs_bindgen_33169960837b229f" hs_bindgen_33169960837b229f :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_fpe_t) -> Botan_mp_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt)) + +{-# NOINLINE botan_fpe_fe1_init #-} +{-| __C declaration:__ @botan_fpe_fe1_init@ + + __defined at:__ @botan\/ffi.h:2392:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_fpe_fe1_init :: Ptr.FunPtr ((Ptr.Ptr Botan_fpe_t) -> Botan_mp_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.Word32 -> IO FC.CInt) +botan_fpe_fe1_init = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_33169960837b229f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_fpe_destroy@ +foreign import ccall unsafe "hs_bindgen_788618f5ea6e026f" hs_bindgen_788618f5ea6e026f :: + IO (Ptr.FunPtr (Botan_fpe_t -> IO FC.CInt)) + +{-# NOINLINE botan_fpe_destroy #-} +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_fpe_destroy@ + +__defined at:__ @botan\/ffi.h:2399:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_fpe_destroy :: Ptr.FunPtr (Botan_fpe_t -> IO FC.CInt) +botan_fpe_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_788618f5ea6e026f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_fpe_encrypt@ +foreign import ccall unsafe "hs_bindgen_6f135e0855c9732a" hs_bindgen_6f135e0855c9732a :: + IO (Ptr.FunPtr (Botan_fpe_t -> Botan_mp_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_fpe_encrypt #-} +{-| __C declaration:__ @botan_fpe_encrypt@ + + __defined at:__ @botan\/ffi.h:2402:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_fpe_encrypt :: Ptr.FunPtr (Botan_fpe_t -> Botan_mp_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_fpe_encrypt = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_6f135e0855c9732a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_fpe_decrypt@ +foreign import ccall unsafe "hs_bindgen_5f8669fc88e60d08" hs_bindgen_5f8669fc88e60d08 :: + IO (Ptr.FunPtr (Botan_fpe_t -> Botan_mp_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt)) + +{-# NOINLINE botan_fpe_decrypt #-} +{-| __C declaration:__ @botan_fpe_decrypt@ + + __defined at:__ @botan\/ffi.h:2405:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_fpe_decrypt :: Ptr.FunPtr (Botan_fpe_t -> Botan_mp_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) +botan_fpe_decrypt = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_5f8669fc88e60d08 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_srp6_server_session_init@ +foreign import ccall unsafe "hs_bindgen_402d3c45d024c542" hs_bindgen_402d3c45d024c542 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_srp6_server_session_t) -> IO FC.CInt)) + +{-# NOINLINE botan_srp6_server_session_init #-} +{-| Initialize an SRP-6 server session object + + [__@srp6@ /(input)/__]: SRP-6 server session object + +__C declaration:__ @botan_srp6_server_session_init@ + +__defined at:__ @botan\/ffi.h:2417:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_srp6_server_session_init :: Ptr.FunPtr ((Ptr.Ptr Botan_srp6_server_session_t) -> IO FC.CInt) +botan_srp6_server_session_init = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_402d3c45d024c542 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_srp6_server_session_destroy@ +foreign import ccall unsafe "hs_bindgen_98f22da826ed2a46" hs_bindgen_98f22da826ed2a46 :: + IO (Ptr.FunPtr (Botan_srp6_server_session_t -> IO FC.CInt)) + +{-# NOINLINE botan_srp6_server_session_destroy #-} +{-| Frees all resources of the SRP-6 server session object + + [__@srp6@ /(input)/__]: SRP-6 server session object + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_srp6_server_session_destroy@ + +__defined at:__ @botan\/ffi.h:2425:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_srp6_server_session_destroy :: Ptr.FunPtr (Botan_srp6_server_session_t -> IO FC.CInt) +botan_srp6_server_session_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_98f22da826ed2a46 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_srp6_server_session_step1@ +foreign import ccall unsafe "hs_bindgen_ac3cf36add9e261f" hs_bindgen_ac3cf36add9e261f :: + IO (Ptr.FunPtr (Botan_srp6_server_session_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> Botan_rng_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_srp6_server_session_step1 #-} +{-| SRP-6 Server side step 1 + + [__@srp6@ /(input)/__]: SRP-6 server session object + + [__@verifier@ /(input)/__]: the verification value saved from client registration + + [__@verifier_len@ /(input)/__]: SRP-6 verifier value length + + [__@group_id@ /(input)/__]: the SRP group id + + [__@hash_id@ /(input)/__]: the SRP hash in use + + [__@rng_obj@ /(input)/__]: a random number generator object + + [__@B_pub@ /(input)/__]: out buffer to store the SRP-6 B value + + [__@B_pub_len@ /(input)/__]: SRP-6 B value length + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_srp6_server_session_step1@ + +__defined at:__ @botan\/ffi.h:2440:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_srp6_server_session_step1 :: Ptr.FunPtr (Botan_srp6_server_session_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> Botan_rng_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_srp6_server_session_step1 = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_ac3cf36add9e261f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_srp6_server_session_step2@ +foreign import ccall unsafe "hs_bindgen_d6dce8f96b54dfab" hs_bindgen_d6dce8f96b54dfab :: + IO (Ptr.FunPtr (Botan_srp6_server_session_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_srp6_server_session_step2 #-} +{-| SRP-6 Server side step 2 + + [__@srp6@ /(input)/__]: SRP-6 server session object + + [__@A@ /(input)/__]: the client's value + + [__@A_len@ /(input)/__]: the client's value length + + [__@key@ /(input)/__]: out buffer to store the symmetric key value + + [__@key_len@ /(input)/__]: symmetric key length + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_srp6_server_session_step2@ + +__defined at:__ @botan\/ffi.h:2459:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_srp6_server_session_step2 :: Ptr.FunPtr (Botan_srp6_server_session_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_srp6_server_session_step2 = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_d6dce8f96b54dfab + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_srp6_generate_verifier@ +foreign import ccall unsafe "hs_bindgen_b4d734a990fc8e30" hs_bindgen_b4d734a990fc8e30 :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_srp6_generate_verifier #-} +{-| Generate a new SRP-6 verifier + + [__@identifier@ /(input)/__]: a username or other client identifier + + [__@password@ /(input)/__]: the secret used to authenticate user + + [__@salt@ /(input)/__]: a randomly chosen value, at least 128 bits long + + [__@salt_len@ /(input)/__]: the length of salt + + [__@group_id@ /(input)/__]: specifies the shared SRP group + + [__@hash_id@ /(input)/__]: specifies a secure hash function + + [__@verifier@ /(input)/__]: out buffer to store the SRP-6 verifier value + + [__@verifier_len@ /(input)/__]: SRP-6 verifier value length + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_srp6_generate_verifier@ + +__defined at:__ @botan\/ffi.h:2475:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_srp6_generate_verifier :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_srp6_generate_verifier = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_b4d734a990fc8e30 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_srp6_client_agree@ +foreign import ccall unsafe "hs_bindgen_0de98bfbb47eb1e0" hs_bindgen_0de98bfbb47eb1e0 :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> Botan_rng_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_srp6_client_agree #-} +{-| SRP6a Client side + + [__@username@ /(input)/__]: the username we are attempting login for + + [__@password@ /(input)/__]: the password we are attempting to use + + [__@group_id@ /(input)/__]: specifies the shared SRP group + + [__@hash_id@ /(input)/__]: specifies a secure hash function + + [__@salt@ /(input)/__]: is the salt value sent by the server + + [__@salt_len@ /(input)/__]: the length of salt + + [__@B@ /(input)/__]: is the server's public value + + [__@B_len@ /(input)/__]: is the server's public value length + + [__@rng_obj@ /(input)/__]: is a random number generator object + + [__@A@ /(input)/__]: out buffer to store the SRP-6 A value + + [__@A_len@ /(input)/__]: SRP-6 A verifier value length + + [__@K@ /(input)/__]: out buffer to store the symmetric value + + [__@K_len@ /(input)/__]: symmetric key length + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_srp6_client_agree@ + +__defined at:__ @botan\/ffi.h:2502:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_srp6_client_agree :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> Botan_rng_t -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_srp6_client_agree = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_0de98bfbb47eb1e0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_srp6_group_size@ +foreign import ccall unsafe "hs_bindgen_e4da6a77552e4c97" hs_bindgen_e4da6a77552e4c97 :: + IO (Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt)) + +{-# NOINLINE botan_srp6_group_size #-} +{-| Return the size, in bytes, of the prime associated with group_id + +__C declaration:__ @botan_srp6_group_size@ + +__defined at:__ @botan\/ffi.h:2520:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_srp6_group_size :: Ptr.FunPtr ((HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.CSize) -> IO FC.CInt) +botan_srp6_group_size = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_e4da6a77552e4c97 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_zfec_encode@ +foreign import ccall unsafe "hs_bindgen_8b41059bd8566012" hs_bindgen_8b41059bd8566012 :: + IO (Ptr.FunPtr (HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8)) -> IO FC.CInt)) + +{-# NOINLINE botan_zfec_encode #-} +{-| Encode some bytes with certain ZFEC parameters. + + [__@K@ /(input)/__]: the number of shares needed for recovery + + [__@N@ /(input)/__]: the number of shares generated + + [__@input@ /(input)/__]: the data to FEC + + [__@size@ /(input)/__]: the length in bytes of input, which must be a multiple of K + + [__@outputs@ /(input)/__]: An out parameter pointing to a fully allocated array of size [N][size / K]. For all n in range, an encoded block will be written to the memory starting at outputs[n][0]. + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_zfec_encode@ + +__defined at:__ @botan\/ffi.h:2541:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_zfec_encode :: Ptr.FunPtr (HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8)) -> IO FC.CInt) +botan_zfec_encode = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_8b41059bd8566012 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_zfec_decode@ +foreign import ccall unsafe "hs_bindgen_d24d81ad9bae341e" hs_bindgen_d24d81ad9bae341e :: + IO (Ptr.FunPtr (HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.ConstPtr.ConstPtr (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8)) -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8)) -> IO FC.CInt)) + +{-# NOINLINE botan_zfec_decode #-} +{-| Decode some previously encoded shares using certain ZFEC parameters. + + [__@K@ /(input)/__]: the number of shares needed for recovery + + [__@N@ /(input)/__]: the total number of shares + + [__@indexes@ /(input)/__]: The index into the encoder's outputs for the corresponding element of the inputs array. Must be of length K. + + [__@inputs@ /(input)/__]: K previously encoded shares to decode + + [__@shareSize@ /(input)/__]: the length in bytes of each input + + [__@outputs@ /(input)/__]: An out parameter pointing to a fully allocated array of size [K][shareSize]. For all k in range, a decoded block will written to the memory starting at outputs[k][0]. + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_zfec_decode@ + +__defined at:__ @botan\/ffi.h:2562:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_zfec_decode :: Ptr.FunPtr (HsBindgen.Runtime.Prelude.CSize -> HsBindgen.Runtime.Prelude.CSize -> (HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.CSize) -> (HsBindgen.Runtime.ConstPtr.ConstPtr (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8)) -> HsBindgen.Runtime.Prelude.CSize -> (Ptr.Ptr (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8)) -> IO FC.CInt) +botan_zfec_decode = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_d24d81ad9bae341e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_tpm2_supports_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_ceb7e3637775844f" hs_bindgen_ceb7e3637775844f :: + IO (Ptr.FunPtr (IO FC.CInt)) + +{-# NOINLINE botan_tpm2_supports_crypto_backend #-} +{-| Checks if Botan's TSS2 crypto backend can be used in this build + + __returns:__ 1 if the crypto backend can be enabled + +__C declaration:__ @botan_tpm2_supports_crypto_backend@ + +__defined at:__ @botan\/ffi.h:2587:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_supports_crypto_backend :: Ptr.FunPtr (IO FC.CInt) +botan_tpm2_supports_crypto_backend = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_ceb7e3637775844f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_tpm2_ctx_init@ +foreign import ccall unsafe "hs_bindgen_cdac01065f5e8ff7" hs_bindgen_cdac01065f5e8ff7 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_tpm2_ctx_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_tpm2_ctx_init #-} +{-| Initialize a TPM2 context + + [__@ctx_out@ /(input)/__]: output TPM2 context + + [__@tcti_nameconf@ /(input)/__]: TCTI config (may be nullptr) + + __returns:__ 0 on success + +__C declaration:__ @botan_tpm2_ctx_init@ + +__defined at:__ @botan\/ffi.h:2595:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_ctx_init :: Ptr.FunPtr ((Ptr.Ptr Botan_tpm2_ctx_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_tpm2_ctx_init = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_cdac01065f5e8ff7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_tpm2_ctx_init_ex@ +foreign import ccall unsafe "hs_bindgen_f76a9ee39200405b" hs_bindgen_f76a9ee39200405b :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_tpm2_ctx_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt)) + +{-# NOINLINE botan_tpm2_ctx_init_ex #-} +{-| Initialize a TPM2 context + + [__@ctx_out@ /(input)/__]: output TPM2 context + + [__@tcti_name@ /(input)/__]: TCTI name (may be nullptr) + + [__@tcti_conf@ /(input)/__]: TCTI config (may be nullptr) + + __returns:__ 0 on success + +__C declaration:__ @botan_tpm2_ctx_init_ex@ + +__defined at:__ @botan\/ffi.h:2605:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_ctx_init_ex :: Ptr.FunPtr ((Ptr.Ptr Botan_tpm2_ctx_t) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) -> IO FC.CInt) +botan_tpm2_ctx_init_ex = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_f76a9ee39200405b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_tpm2_ctx_from_esys@ +foreign import ccall unsafe "hs_bindgen_895e134f71d8e859" hs_bindgen_895e134f71d8e859 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_tpm2_ctx_t) -> (Ptr.Ptr ESYS_CONTEXT) -> IO FC.CInt)) + +{-# NOINLINE botan_tpm2_ctx_from_esys #-} +{-| Wrap an existing ESYS_CONTEXT for use in Botan. Note that destroying the created botan_tpm2_ctx_t won't finalize @esys_ctx@ + + [__@ctx_out@ /(input)/__]: output TPM2 context + + [__@esys_ctx@ /(input)/__]: ESYS_CONTEXT to wrap + + __returns:__ 0 on success + +__C declaration:__ @botan_tpm2_ctx_from_esys@ + +__defined at:__ @botan\/ffi.h:2616:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_ctx_from_esys :: Ptr.FunPtr ((Ptr.Ptr Botan_tpm2_ctx_t) -> (Ptr.Ptr ESYS_CONTEXT) -> IO FC.CInt) +botan_tpm2_ctx_from_esys = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_895e134f71d8e859 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_tpm2_ctx_enable_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_25d7938cd8bdfb49" hs_bindgen_25d7938cd8bdfb49 :: + IO (Ptr.FunPtr (Botan_tpm2_ctx_t -> Botan_rng_t -> IO FC.CInt)) + +{-# NOINLINE botan_tpm2_ctx_enable_crypto_backend #-} +{-| Enable Botan's TSS2 crypto backend that replaces the cryptographic functions required for the communication with the TPM with implementations provided by Botan instead of using TSS' defaults OpenSSL or mbedTLS. Note that the provided @rng@ should not be dependent on the TPM and the caller must ensure that it remains usable for the lifetime of the @ctx.@ + + [__@ctx@ /(input)/__]: TPM2 context + + [__@rng@ /(input)/__]: random number generator to be used by the crypto backend + +__C declaration:__ @botan_tpm2_ctx_enable_crypto_backend@ + +__defined at:__ @botan\/ffi.h:2628:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_ctx_enable_crypto_backend :: Ptr.FunPtr (Botan_tpm2_ctx_t -> Botan_rng_t -> IO FC.CInt) +botan_tpm2_ctx_enable_crypto_backend = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_25d7938cd8bdfb49 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_tpm2_ctx_destroy@ +foreign import ccall unsafe "hs_bindgen_f822c75b8be3c657" hs_bindgen_f822c75b8be3c657 :: + IO (Ptr.FunPtr (Botan_tpm2_ctx_t -> IO FC.CInt)) + +{-# NOINLINE botan_tpm2_ctx_destroy #-} +{-| Frees all resources of a TPM2 context + + [__@ctx@ /(input)/__]: TPM2 context + + __returns:__ 0 on success + +__C declaration:__ @botan_tpm2_ctx_destroy@ + +__defined at:__ @botan\/ffi.h:2635:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_ctx_destroy :: Ptr.FunPtr (Botan_tpm2_ctx_t -> IO FC.CInt) +botan_tpm2_ctx_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_f822c75b8be3c657 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_tpm2_enable_crypto_backend@ +foreign import ccall unsafe "hs_bindgen_c654cb837f606f61" hs_bindgen_c654cb837f606f61 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_tpm2_crypto_backend_state_t) -> (Ptr.Ptr ESYS_CONTEXT) -> Botan_rng_t -> IO FC.CInt)) + +{-# NOINLINE botan_tpm2_enable_crypto_backend #-} +{-| Use this if you just need Botan's crypto backend but do not want to wrap any other ESYS functionality using Botan's TPM2 wrapper. A Crypto Backend State is created that the user needs to keep alive for as long as the crypto backend is used and needs to be destroyed after. Note that the provided @rng@ should not be dependent on the TPM and the caller must ensure that it remains usable for the lifetime of the @esys_ctx.@ + + [__@cbs_out@ /(input)/__]: To be created Crypto Backend State + + [__@esys_ctx@ /(input)/__]: TPM2 context + + [__@rng@ /(input)/__]: random number generator to be used by the crypto backend + +__C declaration:__ @botan_tpm2_enable_crypto_backend@ + +__defined at:__ @botan\/ffi.h:2649:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_enable_crypto_backend :: Ptr.FunPtr ((Ptr.Ptr Botan_tpm2_crypto_backend_state_t) -> (Ptr.Ptr ESYS_CONTEXT) -> Botan_rng_t -> IO FC.CInt) +botan_tpm2_enable_crypto_backend = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_c654cb837f606f61 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_tpm2_crypto_backend_state_destroy@ +foreign import ccall unsafe "hs_bindgen_006409ec43e3d201" hs_bindgen_006409ec43e3d201 :: + IO (Ptr.FunPtr (Botan_tpm2_crypto_backend_state_t -> IO FC.CInt)) + +{-# NOINLINE botan_tpm2_crypto_backend_state_destroy #-} +{-| Frees all resources of a TPM2 Crypto Callback State Note that this does not attempt to de-register the crypto backend, it just frees the resource pointed to by @cbs.@ Use the ESAPI function ``Esys_SetCryptoCallbacks(ctx, nullptr)`` to deregister manually. + + [__@cbs@ /(input)/__]: TPM2 Crypto Callback State + + __returns:__ 0 on success + +__C declaration:__ @botan_tpm2_crypto_backend_state_destroy@ + +__defined at:__ @botan\/ffi.h:2661:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_crypto_backend_state_destroy :: Ptr.FunPtr (Botan_tpm2_crypto_backend_state_t -> IO FC.CInt) +botan_tpm2_crypto_backend_state_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_006409ec43e3d201 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_tpm2_rng_init@ +foreign import ccall unsafe "hs_bindgen_41fef8a1febfc817" hs_bindgen_41fef8a1febfc817 :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_rng_t) -> Botan_tpm2_ctx_t -> Botan_tpm2_session_t -> Botan_tpm2_session_t -> Botan_tpm2_session_t -> IO FC.CInt)) + +{-# NOINLINE botan_tpm2_rng_init #-} +{-| Initialize a random number generator object via TPM2 + + [__@rng_out@ /(input)/__]: rng object to create + + [__@ctx@ /(input)/__]: TPM2 context + + [__@s1@ /(input)/__]: the first session to use (optional, may be nullptr) + + [__@s2@ /(input)/__]: the second session to use (optional, may be nullptr) + + [__@s3@ /(input)/__]: the third session to use (optional, may be nullptr) + +__C declaration:__ @botan_tpm2_rng_init@ + +__defined at:__ @botan\/ffi.h:2672:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_rng_init :: Ptr.FunPtr ((Ptr.Ptr Botan_rng_t) -> Botan_tpm2_ctx_t -> Botan_tpm2_session_t -> Botan_tpm2_session_t -> Botan_tpm2_session_t -> IO FC.CInt) +botan_tpm2_rng_init = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_41fef8a1febfc817 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_tpm2_unauthenticated_session_init@ +foreign import ccall unsafe "hs_bindgen_e535b3e61b00c96e" hs_bindgen_e535b3e61b00c96e :: + IO (Ptr.FunPtr ((Ptr.Ptr Botan_tpm2_session_t) -> Botan_tpm2_ctx_t -> IO FC.CInt)) + +{-# NOINLINE botan_tpm2_unauthenticated_session_init #-} +{-| Create an unauthenticated session for use with TPM2 + + [__@session_out@ /(input)/__]: the session object to create + + [__@ctx@ /(input)/__]: TPM2 context + +__C declaration:__ @botan_tpm2_unauthenticated_session_init@ + +__defined at:__ @botan\/ffi.h:2684:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_unauthenticated_session_init :: Ptr.FunPtr ((Ptr.Ptr Botan_tpm2_session_t) -> Botan_tpm2_ctx_t -> IO FC.CInt) +botan_tpm2_unauthenticated_session_init = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_e535b3e61b00c96e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_get_botan_tpm2_session_destroy@ +foreign import ccall unsafe "hs_bindgen_cece6c071f8cb644" hs_bindgen_cece6c071f8cb644 :: + IO (Ptr.FunPtr (Botan_tpm2_session_t -> IO FC.CInt)) + +{-# NOINLINE botan_tpm2_session_destroy #-} +{-| Create an unauthenticated session for use with TPM2 + + [__@session@ /(input)/__]: the session object to destroy + +__C declaration:__ @botan_tpm2_session_destroy@ + +__defined at:__ @botan\/ffi.h:2691:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_session_destroy :: Ptr.FunPtr (Botan_tpm2_session_t -> IO FC.CInt) +botan_tpm2_session_destroy = + GHC.IO.Unsafe.unsafePerformIO hs_bindgen_cece6c071f8cb644 diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_10_0/Safe.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_10_0/Safe.hs new file mode 100644 index 0000000..d95467d --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_10_0/Safe.hs @@ -0,0 +1,15174 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_10_0.Safe where + +import Botan.Bindings.Generated.Botan_3_10_0 +import Data.Void (Void) +import qualified Foreign.C as FC +import qualified GHC.Ptr as Ptr +import qualified HsBindgen.Runtime.ConstantArray +import qualified HsBindgen.Runtime.ConstPtr +import qualified HsBindgen.Runtime.IncompleteArray +import qualified HsBindgen.Runtime.Prelude +import Prelude (IO) + +$(HsBindgen.Runtime.Prelude.addCSource (HsBindgen.Runtime.Prelude.unlines + [ "#include " + , "char const *hs_bindgen_674a346c95817ba0 (" + , " signed int arg1" + , ")" + , "{" + , " return botan_error_description(arg1);" + , "}" + , "char const *hs_bindgen_a39014984c4001f0 (void)" + , "{" + , " return botan_error_last_exception_message();" + , "}" + , "uint32_t hs_bindgen_716e115ca1acfb16 (void)" + , "{" + , " return botan_ffi_api_version();" + , "}" + , "signed int hs_bindgen_88d727dfe5884f5a (" + , " uint32_t arg1" + , ")" + , "{" + , " return botan_ffi_supports_api(arg1);" + , "}" + , "char const *hs_bindgen_1834aa15e35b1ab8 (void)" + , "{" + , " return botan_version_string();" + , "}" + , "uint32_t hs_bindgen_0bd7c3bb9f87e9f8 (void)" + , "{" + , " return botan_version_major();" + , "}" + , "uint32_t hs_bindgen_dca9bce2039b1d20 (void)" + , "{" + , " return botan_version_minor();" + , "}" + , "uint32_t hs_bindgen_565710906ee227b8 (void)" + , "{" + , " return botan_version_patch();" + , "}" + , "uint32_t hs_bindgen_36ed0710c553c820 (void)" + , "{" + , " return botan_version_datestamp();" + , "}" + , "signed int hs_bindgen_ccc8584ed0ebc1ac (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_constant_time_compare(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a840e2ad27819685 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_same_mem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_725152703eb144ee (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_scrub_mem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d7eecc45a5eff4d8 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_hex_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_3d9157b0a7d10dc8 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_hex_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_a692880a13331584 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_6c863b4a5d75d1fa (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_c56c39d9762e1b7d (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_rng_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cdbb0b7f9a0cae46 (" + , " botan_rng_t *arg1," + , " char const *arg2," + , " void *arg3," + , " signed int (*arg4) (" + , " void *arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")," + , " signed int (*arg5) (" + , " void *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")," + , " void (*arg6) (" + , " void *arg1" + , ")" + , ")" + , "{" + , " return botan_rng_init_custom(arg1, arg2, arg3, arg4, arg5, arg6);" + , "}" + , "signed int hs_bindgen_1426a79f312a45b1 (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_get(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_03e20dbfe07ea825 (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_system_rng_get(arg1, arg2);" + , "}" + , "signed int hs_bindgen_11dfc61663f232fc (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_rng_reseed(arg1, arg2);" + , "}" + , "signed int hs_bindgen_93af501aa8a501a0 (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_reseed_from_rng(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2af20e57dae15bc2 (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_add_entropy(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0739cf8ecee6c77a (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return botan_rng_destroy(arg1);" + , "}" + , "signed int hs_bindgen_de429430f875335c (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_hash_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_49beb39c743f9db1 (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return botan_hash_copy_state(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a06aaf6fb15e6291 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_98cc313856edd0a6 (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_block_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_780e7297be6c91d7 (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_hash_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cb3d2c7c1809cf63 (" + , " botan_hash_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_hash_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_62bdb4019e1aa674 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_clear(arg1);" + , "}" + , "signed int hs_bindgen_2c20324fd78db885 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_destroy(arg1);" + , "}" + , "signed int hs_bindgen_494728fc153a8ebb (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_hash_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4f438e2b05bd73e1 (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mac_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3c53a5094a70b1fe (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mac_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_bc4bb7abb25b9b8a (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c44244423d7721cc (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_nonce(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c3ec4a51d9574cf3 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_88082c08f2ce3cbf (" + , " botan_mac_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mac_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9b0d7aebe6e9e68b (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_clear(arg1);" + , "}" + , "signed int hs_bindgen_f7bfb6ecbc0679b7 (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_mac_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_830322e820c308ca (" + , " botan_mac_t arg1," + , " size_t *arg2," + , " size_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_mac_get_keyspec(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_9f4b77a9315885c6 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_destroy(arg1);" + , "}" + , "signed int hs_bindgen_9348e49a6a5d90e1 (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_cipher_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3f96eb0c2b3b3377 (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_af7b83002f5f22cb (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_854881e7a00b6d47 (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_cipher_valid_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_76ce99782f76e50d (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_tag_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b60fb638db6991b6 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_is_authenticated(arg1);" + , "}" + , "signed int hs_bindgen_cfe1882ab3e5b3a0 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_requires_entire_message(arg1);" + , "}" + , "signed int hs_bindgen_2b6d0b934813a9ce (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_default_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_34758c3b1f7437c3 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a6706bcf0aa8fc98 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_ideal_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_22043dea16f6befd (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_query_keylen(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5f8b4812c0e5b9a6 (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_cipher_get_keyspec(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_5c8f6fcab0d9b4cc (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_047b9a47a2ceee2d (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_reset(arg1);" + , "}" + , "signed int hs_bindgen_628ef17c8615ae67 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_associated_data(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c8d9d5d9b9140bfb (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_start(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f45fe0ede0bc75cb (" + , " botan_cipher_t arg1," + , " uint32_t arg2," + , " uint8_t *arg3," + , " size_t arg4," + , " size_t *arg5," + , " uint8_t const *arg6," + , " size_t arg7," + , " size_t *arg8" + , ")" + , "{" + , " return botan_cipher_update(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_1fc624b3362cb087 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_3a7b8c5ad61e5ed3 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_9f3b8249d993e435 (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t arg3," + , " char const *arg4," + , " uint8_t const *arg5," + , " size_t arg6," + , " size_t arg7" + , ")" + , "{" + , " return botan_pbkdf(arg1, arg2, arg3, arg4, arg5, arg6, arg7);" + , "}" + , "signed int hs_bindgen_c5e8e8964ae5d489 (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t arg3," + , " char const *arg4," + , " uint8_t const *arg5," + , " size_t arg6," + , " size_t arg7," + , " size_t *arg8" + , ")" + , "{" + , " return botan_pbkdf_timed(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_22bc1e37a86288e3 (" + , " char const *arg1," + , " size_t arg2," + , " size_t arg3," + , " size_t arg4," + , " uint8_t *arg5," + , " size_t arg6," + , " char const *arg7," + , " size_t arg8," + , " uint8_t const *arg9," + , " size_t arg10" + , ")" + , "{" + , " return botan_pwdhash(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10);" + , "}" + , "signed int hs_bindgen_0ebccbd88fead954 (" + , " char const *arg1," + , " uint32_t arg2," + , " size_t *arg3," + , " size_t *arg4," + , " size_t *arg5," + , " uint8_t *arg6," + , " size_t arg7," + , " char const *arg8," + , " size_t arg9," + , " uint8_t const *arg10," + , " size_t arg11" + , ")" + , "{" + , " return botan_pwdhash_timed(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11);" + , "}" + , "signed int hs_bindgen_426d5a8064a94e86 (" + , " uint8_t *arg1," + , " size_t arg2," + , " char const *arg3," + , " uint8_t const *arg4," + , " size_t arg5," + , " size_t arg6," + , " size_t arg7," + , " size_t arg8" + , ")" + , "{" + , " return botan_scrypt(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_ad22e3006ce78c18 (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t arg3," + , " uint8_t const *arg4," + , " size_t arg5," + , " uint8_t const *arg6," + , " size_t arg7," + , " uint8_t const *arg8," + , " size_t arg9" + , ")" + , "{" + , " return botan_kdf(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9);" + , "}" + , "signed int hs_bindgen_5be294fc1f744410 (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_block_cipher_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_874229da57e41721 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_066330fa9d926b40 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_1ab28e43b865e680 (" + , " botan_block_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_block_cipher_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d216821f82384b60 (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_block_size(arg1);" + , "}" + , "signed int hs_bindgen_2129b77904e08dd5 (" + , " botan_block_cipher_t arg1," + , " uint8_t const *arg2," + , " uint8_t *arg3," + , " size_t arg4" + , ")" + , "{" + , " return botan_block_cipher_encrypt_blocks(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_161cc5ee15a2aefd (" + , " botan_block_cipher_t arg1," + , " uint8_t const *arg2," + , " uint8_t *arg3," + , " size_t arg4" + , ")" + , "{" + , " return botan_block_cipher_decrypt_blocks(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_3c55ea589bf343a9 (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_block_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6d20924a0258bbd8 (" + , " botan_block_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_block_cipher_get_keyspec(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_96c56cbf80170572 (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return botan_mp_init(arg1);" + , "}" + , "signed int hs_bindgen_b7bc7189cae3210f (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_4f2c5bdaf9de1ce5 (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return botan_mp_to_hex(arg1, arg2);" + , "}" + , "signed int hs_bindgen_db436c38eb825fc4 (" + , " botan_mp_t arg1," + , " botan_view_ctx arg2," + , " botan_view_str_fn arg3" + , ")" + , "{" + , " return botan_mp_view_hex(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2a7f143a0c47660e (" + , " botan_mp_t arg1," + , " uint8_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_mp_to_str(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_f3e67b601bcbfd8e (" + , " botan_mp_t arg1," + , " uint8_t arg2," + , " botan_view_ctx arg3," + , " botan_view_str_fn arg4" + , ")" + , "{" + , " return botan_mp_view_str(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_4dc266fe87c22f01 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_clear(arg1);" + , "}" + , "signed int hs_bindgen_b8eaa4b6bb3c33af (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return botan_mp_set_from_int(arg1, arg2);" + , "}" + , "signed int hs_bindgen_008dd18c6b44e4e4 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_set_from_mp(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8a59003eb03e4438 (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_mp_set_from_str(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c8ae74b3ce7364c4 (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_set_from_radix_str(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4ecda0f5e1e98466 (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bits(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cc685a18a51cd230 (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bytes(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4f211b10aa5e06f0 (" + , " botan_mp_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mp_to_bin(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e75aa7d4b4de2709 (" + , " botan_mp_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return botan_mp_view_bin(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2aadb7449c8b62d8 (" + , " botan_mp_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_from_bin(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3c17bfec33ab9f6a (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return botan_mp_to_uint32(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5952537f5c2f718e (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_positive(arg1);" + , "}" + , "signed int hs_bindgen_cce10bb1417b8a2b (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_negative(arg1);" + , "}" + , "signed int hs_bindgen_846625f56a235469 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_flip_sign(arg1);" + , "}" + , "signed int hs_bindgen_ffab3281662d828c (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_zero(arg1);" + , "}" + , "signed int hs_bindgen_e9f50a61b83a8bd1 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_odd(arg1);" + , "}" + , "signed int hs_bindgen_abaf274d2bb0975d (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_even(arg1);" + , "}" + , "signed int hs_bindgen_4bc3c38aff64609d (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_add_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3c6a65f2a3669a27 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_sub_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_78fb5ba2c1915ba3 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_add(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d75d74c99f8df8c2 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_sub(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_096672e9675d1dd1 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mul(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0ca55e6ac03db945 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return botan_mp_div(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_4452afa470cf6f41 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return botan_mp_mod_mul(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_8decc1be1b596829 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_374b5c10e9c48cd0 (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cdd3017a82269ed6 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_swap(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0b9a3af6da0e717a (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return botan_mp_powmod(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_f93c1121d6c4a15a (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_lshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3fd9a9ed83ee6fa9 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_49ac766bd5f8cc70 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mod_inverse(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_93f2b3990f775bfd (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rand_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_781b8c36b0d5abc0 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return botan_mp_rand_range(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_efbd25160d6ac184 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_gcd(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_163aadcfe49733b7 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_is_prime(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1d07560d67fc9dcf (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_get_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4b32807359e51131 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_set_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_aa24e15ee69d718d (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_clear_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e831cce360ec811f (" + , " uint8_t *arg1," + , " size_t *arg2," + , " char const *arg3," + , " botan_rng_t arg4," + , " size_t arg5," + , " uint32_t arg6" + , ")" + , "{" + , " return botan_bcrypt_generate(arg1, arg2, arg3, arg4, arg5, arg6);" + , "}" + , "signed int hs_bindgen_af0aa2a0f27ca174 (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_bcrypt_is_valid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5a8a30ec5a725171 (" + , " botan_asn1_oid_t arg1" + , ")" + , "{" + , " return botan_oid_destroy(arg1);" + , "}" + , "signed int hs_bindgen_af444d30898966b1 (" + , " botan_asn1_oid_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_oid_from_string(arg1, arg2);" + , "}" + , "signed int hs_bindgen_30620e48e9719aea (" + , " botan_asn1_oid_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_oid_register(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e5db9582cd06ac10 (" + , " botan_asn1_oid_t arg1," + , " botan_view_ctx arg2," + , " botan_view_str_fn arg3" + , ")" + , "{" + , " return botan_oid_view_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_23da4c6da78b12f9 (" + , " botan_asn1_oid_t arg1," + , " botan_view_ctx arg2," + , " botan_view_str_fn arg3" + , ")" + , "{" + , " return botan_oid_view_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d62d6e3bde826b6c (" + , " botan_asn1_oid_t arg1," + , " botan_asn1_oid_t arg2" + , ")" + , "{" + , " return botan_oid_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_531549478b4c9337 (" + , " signed int *arg1," + , " botan_asn1_oid_t arg2," + , " botan_asn1_oid_t arg3" + , ")" + , "{" + , " return botan_oid_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_73c68e58b8e1ff49 (" + , " botan_ec_group_t arg1" + , ")" + , "{" + , " return botan_ec_group_destroy(arg1);" + , "}" + , "signed int hs_bindgen_77878d8b9ae91193 (" + , " signed int *arg1" + , ")" + , "{" + , " return botan_ec_group_supports_application_specific_group(arg1);" + , "}" + , "signed int hs_bindgen_cde7d4a60e0006d4 (" + , " char const *arg1," + , " signed int *arg2" + , ")" + , "{" + , " return botan_ec_group_supports_named_group(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d1a1d8e9ef348ab2 (" + , " botan_ec_group_t *arg1," + , " botan_asn1_oid_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4," + , " botan_mp_t arg5," + , " botan_mp_t arg6," + , " botan_mp_t arg7," + , " botan_mp_t arg8" + , ")" + , "{" + , " return botan_ec_group_from_params(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_862a8ae85723b6d8 (" + , " botan_ec_group_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_ec_group_from_ber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a36f5161ec9ae4c9 (" + , " botan_ec_group_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_ec_group_from_pem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1313584dc40eaa68 (" + , " botan_ec_group_t *arg1," + , " botan_asn1_oid_t arg2" + , ")" + , "{" + , " return botan_ec_group_from_oid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9f1b14f933173a2a (" + , " botan_ec_group_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_ec_group_from_name(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6462e2dea34cc509 (" + , " botan_ec_group_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return botan_ec_group_view_der(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a456f52ed198da2d (" + , " botan_ec_group_t arg1," + , " botan_view_ctx arg2," + , " botan_view_str_fn arg3" + , ")" + , "{" + , " return botan_ec_group_view_pem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_dbbb8c95ef81dcc2 (" + , " botan_asn1_oid_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_curve_oid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cfec78db72f3824a (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cf7c78293a1fd5a7 (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_a(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ec4ec060ad735dfb (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_b(arg1, arg2);" + , "}" + , "signed int hs_bindgen_43ed004b02947e3c (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_g_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e6105c1727c5fe33 (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_g_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c4a3d86c1597a7dc (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_order(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c2d7d14a4f1e5c58 (" + , " botan_ec_group_t arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7d32d894609870e8 (" + , " botan_privkey_t *arg1," + , " char const *arg2," + , " char const *arg3," + , " botan_rng_t arg4" + , ")" + , "{" + , " return botan_privkey_create(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_5ef04a39f397b64a (" + , " botan_privkey_t *arg1," + , " char const *arg2," + , " botan_ec_group_t arg3," + , " botan_rng_t arg4" + , ")" + , "{" + , " return botan_ec_privkey_create(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_07a952b016c2da3f (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_privkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_603228f94ec49da0 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_create_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_debb18c6f685cb6d (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_56dd6464b5970559 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_946ecbe665144a70 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return botan_privkey_create_mceliece(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_ec6953abf189e790 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_dh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f71a2a2bc2b72db1 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return botan_privkey_create_dsa(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_4f3e5d9d817e0f25 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return botan_privkey_create_elgamal(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_dc71b913869d88de (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " char const *arg5" + , ")" + , "{" + , " return botan_privkey_load(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_5f78ed104dfce2dc (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return botan_privkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_6cde1c7175f53040 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_privkey_export(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_276a84dbeb71eef7 (" + , " botan_privkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return botan_privkey_view_der(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_941bb107c2609a11 (" + , " botan_privkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_str_fn arg3" + , ")" + , "{" + , " return botan_privkey_view_pem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c69bb1d3988e8b91 (" + , " botan_privkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return botan_privkey_view_raw(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_db9baf875c7b3823 (" + , " botan_privkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_privkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7db17f1381cef441 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2," + , " size_t *arg3," + , " botan_rng_t arg4," + , " char const *arg5," + , " char const *arg6," + , " uint32_t arg7" + , ")" + , "{" + , " return botan_privkey_export_encrypted(arg1, arg2, arg3, arg4, arg5, arg6, arg7);" + , "}" + , "signed int hs_bindgen_857d9dc424e3010c (" + , " botan_privkey_t arg1," + , " uint8_t *arg2," + , " size_t *arg3," + , " botan_rng_t arg4," + , " char const *arg5," + , " uint32_t arg6," + , " size_t *arg7," + , " char const *arg8," + , " char const *arg9," + , " uint32_t arg10" + , ")" + , "{" + , " return botan_privkey_export_encrypted_pbkdf_msec(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10);" + , "}" + , "signed int hs_bindgen_953f5358489d75b5 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2," + , " size_t *arg3," + , " botan_rng_t arg4," + , " char const *arg5," + , " size_t arg6," + , " char const *arg7," + , " char const *arg8," + , " uint32_t arg9" + , ")" + , "{" + , " return botan_privkey_export_encrypted_pbkdf_iter(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9);" + , "}" + , "signed int hs_bindgen_b17b63c4781a4f3b (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " char const *arg3," + , " char const *arg4," + , " char const *arg5," + , " size_t arg6," + , " botan_view_ctx arg7," + , " botan_view_bin_fn arg8" + , ")" + , "{" + , " return botan_privkey_view_encrypted_der(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_c080328b1c91543d (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " char const *arg3," + , " char const *arg4," + , " char const *arg5," + , " size_t arg6," + , " botan_view_ctx arg7," + , " botan_view_bin_fn arg8" + , ")" + , "{" + , " return botan_privkey_view_encrypted_der_timed(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_0061c370a51581cd (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " char const *arg3," + , " char const *arg4," + , " char const *arg5," + , " size_t arg6," + , " botan_view_ctx arg7," + , " botan_view_str_fn arg8" + , ")" + , "{" + , " return botan_privkey_view_encrypted_pem(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_724a34975e6bac1d (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " char const *arg3," + , " char const *arg4," + , " char const *arg5," + , " size_t arg6," + , " botan_view_ctx arg7," + , " botan_view_str_fn arg8" + , ")" + , "{" + , " return botan_privkey_view_encrypted_pem_timed(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_5e0f3194350ec603 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_865bcf26ad1f818e (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_export_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c8cf3f1a95f958a0 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_pubkey_export(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_775998ab9af1e258 (" + , " botan_pubkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return botan_pubkey_view_der(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ecf5648df252eed7 (" + , " botan_pubkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_str_fn arg3" + , ")" + , "{" + , " return botan_pubkey_view_pem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_218f5dce06915408 (" + , " botan_pubkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return botan_pubkey_view_raw(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f03718e0bec258e6 (" + , " botan_pubkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pubkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_53d40f10669f3325 (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_pubkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_538e54b547b44695 (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pubkey_estimated_strength(arg1, arg2);" + , "}" + , "signed int hs_bindgen_36d297abacf97506 (" + , " botan_pubkey_t arg1," + , " char const *arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_pubkey_fingerprint(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_836ed0a9de8599e3 (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_8fdaca611e714b99 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pubkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_83cc67581b420888 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5254b1ff4366d0cb (" + , " botan_asn1_oid_t *arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_oid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8ebda0fbd4ed52a5 (" + , " botan_asn1_oid_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_oid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0438e835bb3f0808 (" + , " botan_privkey_t arg1," + , " signed int *arg2" + , ")" + , "{" + , " return botan_privkey_stateful_operation(arg1, arg2);" + , "}" + , "signed int hs_bindgen_018a622dfe1a5b82 (" + , " botan_privkey_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_privkey_remaining_operations(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4558cf7114e691d0 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return botan_privkey_load_rsa(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_de3a763a77803697 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_rsa_pkcs1(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8c6e347bc50d9b01 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_45d0d27d9ee30750 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f1c0410daf338f85 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_d(arg1, arg2);" + , "}" + , "signed int hs_bindgen_540e5a1df4b83792 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b00ad968be20663b (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7541ed07d1ee2383 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_privkey_rsa_get_privkey(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_8a480b79c2f776ba (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ffea902a25d8492d (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5544c01c4c522c69 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_92ca0d5f22217666 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4," + , " botan_mp_t arg5" + , ")" + , "{" + , " return botan_privkey_load_dsa(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_a8f7f6bc293cfb1c (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4," + , " botan_mp_t arg5" + , ")" + , "{" + , " return botan_pubkey_load_dsa(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_20b20cce22c9d79c (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_dsa_get_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_486bcee2f452535d (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_be65a92628c3aeb8 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7e373a95a4d132df (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_g(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cd907a6937d58555 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_68bc7511a25290e6 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return botan_privkey_load_dh(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_78c72a52e1c27faa (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return botan_pubkey_load_dh(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_fb8a55d8270d035a (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return botan_pubkey_load_elgamal(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_76d98887b1fdfa9f (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return botan_privkey_load_elgamal(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_25f8e61028f0c621 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e07b11e9bdf1f2ba (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0aead06041190518 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e917d88be838ce2a (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e6ad0fdb795a43dc (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_edf18d7668656016 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d6a6b44e49e9c9af (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3ddf94b65636c7d1 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a50da55663b862ce (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_814d1e12ebe4f1ce (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4aa388bec83151d1 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_004e5597e3da8280 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8ee775c7edb7b557 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b3ba7d3d7438bee4 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_12f07c7ce0c7d5ea (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_20d5ff7580e96d7c (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_15eae39fc62c8a3d (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_privkey_load_ml_dsa(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_2d01810e83aa8a0b (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_pubkey_load_ml_dsa(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_3c920a482cea76a0 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c64a6e3464873893 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_54fb30c6fd1e5b2e (" + , " botan_privkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return botan_privkey_view_kyber_raw_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_575bf53367494b77 (" + , " botan_pubkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return botan_pubkey_view_kyber_raw_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b104bee8b06dcc13 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_privkey_load_frodokem(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_b78db855d46bc6be (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_pubkey_load_frodokem(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_6fb5a6f17de8a52e (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_privkey_load_classic_mceliece(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_4f1916d57923ded5 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_pubkey_load_classic_mceliece(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_8c3816880cd32c42 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_privkey_load_ml_kem(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_b3db615ea2f674d6 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_pubkey_load_ml_kem(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_a53c3acb438deed8 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_privkey_load_slh_dsa(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_21765f4b71b5f144 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_pubkey_load_slh_dsa(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_a17a0150424b9802 (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_ecc_key_used_explicit_encoding(arg1);" + , "}" + , "signed int hs_bindgen_9a60c39e9bc9cefa (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d4a757df41968763 (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_pubkey_load_ecdsa(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_4ca1dbf8be8baf8a (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_pubkey_load_ecdsa_sec1(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_647db9dba6bd3eb2 (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_pubkey_load_ecdh(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_f59b82b6a523d958 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_pubkey_load_ecdh_sec1(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_c59d2bfba4ee1b70 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_08eec35853c0ebd2 (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_pubkey_load_sm2(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_95db0499dd7c6d42 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_pubkey_load_sm2_sec1(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_4ae84e665daba0a6 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0689ba490032d58e (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_pubkey_load_sm2_enc(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_e2957a0c82f0adc1 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2_enc(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_18a4514ca54959bd (" + , " uint8_t *arg1," + , " size_t *arg2," + , " char const *arg3," + , " char const *arg4," + , " botan_pubkey_t arg5" + , ")" + , "{" + , " return botan_pubkey_sm2_compute_za(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_1efa363d742e232c (" + , " botan_pubkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return botan_pubkey_view_ec_public_point(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a237becd494be50f (" + , " botan_pk_op_encrypt_t *arg1," + , " botan_pubkey_t arg2," + , " char const *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_pk_op_encrypt_create(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_942070c822aef8b2 (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_ef48fb8d4e678a66 (" + , " botan_pk_op_encrypt_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pk_op_encrypt_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_71278cb0ffbb1d8a (" + , " botan_pk_op_encrypt_t arg1," + , " botan_rng_t arg2," + , " uint8_t *arg3," + , " size_t *arg4," + , " uint8_t const *arg5," + , " size_t arg6" + , ")" + , "{" + , " return botan_pk_op_encrypt(arg1, arg2, arg3, arg4, arg5, arg6);" + , "}" + , "signed int hs_bindgen_cdc5b50b8c9adb96 (" + , " botan_pk_op_decrypt_t *arg1," + , " botan_privkey_t arg2," + , " char const *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_pk_op_decrypt_create(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_549d727a297dd52b (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_6f575d2942feed56 (" + , " botan_pk_op_decrypt_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pk_op_decrypt_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_83aff817205f6458 (" + , " botan_pk_op_decrypt_t arg1," + , " uint8_t *arg2," + , " size_t *arg3," + , " uint8_t const *arg4," + , " size_t arg5" + , ")" + , "{" + , " return botan_pk_op_decrypt(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_e106ac87a4993fc6 (" + , " botan_pk_op_sign_t *arg1," + , " botan_privkey_t arg2," + , " char const *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_pk_op_sign_create(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_95a2280f1c6ce436 (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return botan_pk_op_sign_destroy(arg1);" + , "}" + , "signed int hs_bindgen_529676cf0ae1bc1c (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_sign_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c8246a1430db1da3 (" + , " botan_pk_op_sign_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pk_op_sign_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_57e67729367442ae (" + , " botan_pk_op_sign_t arg1," + , " botan_rng_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_pk_op_sign_finish(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_9da0fdbaab2818dc (" + , " botan_pk_op_verify_t *arg1," + , " botan_pubkey_t arg2," + , " char const *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_pk_op_verify_create(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_61a3ae415d8b557b (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return botan_pk_op_verify_destroy(arg1);" + , "}" + , "signed int hs_bindgen_edc0c2afd53b79df (" + , " botan_pk_op_verify_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pk_op_verify_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6274313fbf6a6740 (" + , " botan_pk_op_verify_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pk_op_verify_finish(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_44f49efb44587724 (" + , " botan_pk_op_ka_t *arg1," + , " botan_privkey_t arg2," + , " char const *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_pk_op_key_agreement_create(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_5f7200fca8de29a5 (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return botan_pk_op_key_agreement_destroy(arg1);" + , "}" + , "signed int hs_bindgen_9ac39b84f0b2233c (" + , " botan_privkey_t arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pk_op_key_agreement_export_public(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c7fa9af5a0f2b9fd (" + , " botan_privkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return botan_pk_op_key_agreement_view_public(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_764191993ba692aa (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_key_agreement_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5ebdd2ddabbc314e (" + , " botan_pk_op_ka_t arg1," + , " uint8_t *arg2," + , " size_t *arg3," + , " uint8_t const *arg4," + , " size_t arg5," + , " uint8_t const *arg6," + , " size_t arg7" + , ")" + , "{" + , " return botan_pk_op_key_agreement(arg1, arg2, arg3, arg4, arg5, arg6, arg7);" + , "}" + , "signed int hs_bindgen_35913176bcb3cea3 (" + , " botan_pk_op_kem_encrypt_t *arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_create(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_97a72ad565d4d0c2 (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_50b4818aca399ad3 (" + , " botan_pk_op_kem_encrypt_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_shared_key_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_04aa55eecb2dfce1 (" + , " botan_pk_op_kem_encrypt_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_encapsulated_key_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2c76d8024cf8314b (" + , " botan_pk_op_kem_encrypt_t arg1," + , " botan_rng_t arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " size_t arg5," + , " uint8_t *arg6," + , " size_t *arg7," + , " uint8_t *arg8," + , " size_t *arg9" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_create_shared_key(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9);" + , "}" + , "signed int hs_bindgen_4dcb91b1342efbf4 (" + , " botan_pk_op_kem_decrypt_t *arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_create(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_870d58786ded28a5 (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_cc5c38a3296d91c7 (" + , " botan_pk_op_kem_decrypt_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_shared_key_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bb3be93ef9fa2162 (" + , " botan_pk_op_kem_decrypt_t arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " uint8_t const *arg4," + , " size_t arg5," + , " size_t arg6," + , " uint8_t *arg7," + , " size_t *arg8" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_shared_key(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_ba59d24c326c07a2 (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pkcs_hash_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6da1107999cc1b24 (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " char const *arg3," + , " uint8_t const *arg4," + , " size_t arg5," + , " uint8_t const *arg6," + , " size_t arg7," + , " uint8_t *arg8," + , " size_t *arg9" + , ")" + , "{" + , " return botan_mceies_encrypt(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9);" + , "}" + , "signed int hs_bindgen_d7c8e90e36fae205 (" + , " botan_privkey_t arg1," + , " char const *arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " uint8_t const *arg5," + , " size_t arg6," + , " uint8_t *arg7," + , " size_t *arg8" + , ")" + , "{" + , " return botan_mceies_decrypt(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_22c5a07482ca7fe4 (" + , " botan_x509_cert_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_cert_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_01c806f9b53ba785 (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9176bb3e02576e72 (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return botan_x509_cert_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d49b9b026a0dcf7d (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_cert_dup(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b006781d497bdb95 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_starts(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b02ee020cf332052 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_expires(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_214fc5ad7e0268ba (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_before(arg1, arg2);" + , "}" + , "signed int hs_bindgen_650ce790b6c17758 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_after(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e71fd85b8a9f0f93 (" + , " botan_x509_cert_t arg1," + , " char const *arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_x509_cert_get_fingerprint(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_8e1e2abeeb632ae9 (" + , " botan_x509_cert_t arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_serial_number(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d27d97a2abe2f734 (" + , " botan_x509_cert_t arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_authority_key_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3f88e1fcbb5367fc (" + , " botan_x509_cert_t arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_subject_key_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2492fe9c387adb2d (" + , " botan_x509_cert_t arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_public_key_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c11022522441240c (" + , " botan_x509_cert_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return botan_x509_cert_view_public_key_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8436afa23017a960 (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_get_public_key(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0d58ef297f6a45eb (" + , " botan_x509_cert_t arg1," + , " char const *arg2," + , " size_t arg3," + , " uint8_t *arg4," + , " size_t *arg5" + , ")" + , "{" + , " return botan_x509_cert_get_issuer_dn(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_557a0ca7a15bc00c (" + , " botan_x509_cert_t arg1," + , " char const *arg2," + , " size_t arg3," + , " uint8_t *arg4," + , " size_t *arg5" + , ")" + , "{" + , " return botan_x509_cert_get_subject_dn(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_043693cb0890dd4d (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_to_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b3e2e5590fd65359 (" + , " botan_x509_cert_t arg1," + , " botan_view_ctx arg2," + , " botan_view_str_fn arg3" + , ")" + , "{" + , " return botan_x509_cert_view_as_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_338a2c6c3d470654 (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return botan_x509_cert_allowed_usage(arg1, arg2);" + , "}" + , "signed int hs_bindgen_874eb6327b84819b (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_hostname_match(arg1, arg2);" + , "}" + , "signed int hs_bindgen_97c92b676cb76cac (" + , " signed int *arg1," + , " botan_x509_cert_t arg2," + , " botan_x509_cert_t const *arg3," + , " size_t arg4," + , " botan_x509_cert_t const *arg5," + , " size_t arg6," + , " char const *arg7," + , " size_t arg8," + , " char const *arg9," + , " uint64_t arg10" + , ")" + , "{" + , " return botan_x509_cert_verify(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10);" + , "}" + , "char const *hs_bindgen_4953127fc1716bff (" + , " signed int arg1" + , ")" + , "{" + , " return botan_x509_cert_validation_status(arg1);" + , "}" + , "signed int hs_bindgen_b79c776589ef9db1 (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_crl_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b12726b53f98a4fc (" + , " botan_x509_crl_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_crl_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b5f95758016db096 (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return botan_x509_crl_destroy(arg1);" + , "}" + , "signed int hs_bindgen_cf00cb48e44b74fc (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_is_revoked(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b8636ca2b76c25c8 (" + , " signed int *arg1," + , " botan_x509_cert_t arg2," + , " botan_x509_cert_t const *arg3," + , " size_t arg4," + , " botan_x509_cert_t const *arg5," + , " size_t arg6," + , " botan_x509_crl_t const *arg7," + , " size_t arg8," + , " char const *arg9," + , " size_t arg10," + , " char const *arg11," + , " uint64_t arg12" + , ")" + , "{" + , " return botan_x509_cert_verify_with_crl(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11, arg12);" + , "}" + , "signed int hs_bindgen_50515d5583a09e9e (" + , " uint8_t const *arg1," + , " size_t arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " uint8_t *arg5," + , " size_t *arg6" + , ")" + , "{" + , " return botan_key_wrap3394(arg1, arg2, arg3, arg4, arg5, arg6);" + , "}" + , "signed int hs_bindgen_e86e57f6db14669b (" + , " uint8_t const *arg1," + , " size_t arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " uint8_t *arg5," + , " size_t *arg6" + , ")" + , "{" + , " return botan_key_unwrap3394(arg1, arg2, arg3, arg4, arg5, arg6);" + , "}" + , "signed int hs_bindgen_50989a00271773ac (" + , " char const *arg1," + , " signed int arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " uint8_t const *arg5," + , " size_t arg6," + , " uint8_t *arg7," + , " size_t *arg8" + , ")" + , "{" + , " return botan_nist_kw_enc(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_b82965d6858ca236 (" + , " char const *arg1," + , " signed int arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " uint8_t const *arg5," + , " size_t arg6," + , " uint8_t *arg7," + , " size_t *arg8" + , ")" + , "{" + , " return botan_nist_kw_dec(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_852c5838ad09c290 (" + , " botan_hotp_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4," + , " size_t arg5" + , ")" + , "{" + , " return botan_hotp_init(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_d3c3b633a3cf124d (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return botan_hotp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_4a89c0aa91eaaf40 (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_hotp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b683ed0d4ec6c5a1 (" + , " botan_hotp_t arg1," + , " uint64_t *arg2," + , " uint32_t arg3," + , " uint64_t arg4," + , " size_t arg5" + , ")" + , "{" + , " return botan_hotp_check(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_972c57250b3c82bb (" + , " botan_totp_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4," + , " size_t arg5," + , " size_t arg6" + , ")" + , "{" + , " return botan_totp_init(arg1, arg2, arg3, arg4, arg5, arg6);" + , "}" + , "signed int hs_bindgen_ca6fee243b1e3577 (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return botan_totp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_457c8b55f8083369 (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_totp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_40ceed308c27d4fe (" + , " botan_totp_t arg1," + , " uint32_t arg2," + , " uint64_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return botan_totp_check(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_e98bfe7438ca4285 (" + , " botan_fpe_t *arg1," + , " botan_mp_t arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " size_t arg5," + , " uint32_t arg6" + , ")" + , "{" + , " return botan_fpe_fe1_init(arg1, arg2, arg3, arg4, arg5, arg6);" + , "}" + , "signed int hs_bindgen_b9aff20b0fb962d9 (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return botan_fpe_destroy(arg1);" + , "}" + , "signed int hs_bindgen_c666ef92203c7884 (" + , " botan_fpe_t arg1," + , " botan_mp_t arg2," + , " uint8_t const *arg3," + , " size_t arg4" + , ")" + , "{" + , " return botan_fpe_encrypt(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_6105239524583e42 (" + , " botan_fpe_t arg1," + , " botan_mp_t arg2," + , " uint8_t const *arg3," + , " size_t arg4" + , ")" + , "{" + , " return botan_fpe_decrypt(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_e0503e53e90fffa8 (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return botan_srp6_server_session_init(arg1);" + , "}" + , "signed int hs_bindgen_c6c1ec03c1693fa9 (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return botan_srp6_server_session_destroy(arg1);" + , "}" + , "signed int hs_bindgen_2fcfbb2deeb49da7 (" + , " botan_srp6_server_session_t arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4," + , " char const *arg5," + , " botan_rng_t arg6," + , " uint8_t *arg7," + , " size_t *arg8" + , ")" + , "{" + , " return botan_srp6_server_session_step1(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_0efb4c6864585f21 (" + , " botan_srp6_server_session_t arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " uint8_t *arg4," + , " size_t *arg5" + , ")" + , "{" + , " return botan_srp6_server_session_step2(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_59607beb933ef898 (" + , " char const *arg1," + , " char const *arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " char const *arg5," + , " char const *arg6," + , " uint8_t *arg7," + , " size_t *arg8" + , ")" + , "{" + , " return botan_srp6_generate_verifier(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_b664473db95a85b9 (" + , " char const *arg1," + , " char const *arg2," + , " char const *arg3," + , " char const *arg4," + , " uint8_t const *arg5," + , " size_t arg6," + , " uint8_t const *arg7," + , " size_t arg8," + , " botan_rng_t arg9," + , " uint8_t *arg10," + , " size_t *arg11," + , " uint8_t *arg12," + , " size_t *arg13" + , ")" + , "{" + , " return botan_srp6_client_agree(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11, arg12, arg13);" + , "}" + , "signed int hs_bindgen_d1fa7894a3d81e81 (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_srp6_group_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7febe65ddc075039 (" + , " size_t arg1," + , " size_t arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " uint8_t **arg5" + , ")" + , "{" + , " return botan_zfec_encode(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_9d044a0dcd4cd660 (" + , " size_t arg1," + , " size_t arg2," + , " size_t const *arg3," + , " uint8_t *const *arg4," + , " size_t arg5," + , " uint8_t **arg6" + , ")" + , "{" + , " return botan_zfec_decode(arg1, arg2, arg3, arg4, arg5, arg6);" + , "}" + , "signed int hs_bindgen_4b07134e29ccacf1 (void)" + , "{" + , " return botan_tpm2_supports_crypto_backend();" + , "}" + , "signed int hs_bindgen_d7d3aef6a1e06649 (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_52725536689991e6 (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_tpm2_ctx_init_ex(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7e25798379877c21 (" + , " botan_tpm2_ctx_t *arg1," + , " struct ESYS_CONTEXT *arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_from_esys(arg1, arg2);" + , "}" + , "signed int hs_bindgen_64815a0555a55c1e (" + , " botan_tpm2_ctx_t arg1," + , " botan_rng_t arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_enable_crypto_backend(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6fc65e7cadce387b (" + , " botan_tpm2_ctx_t arg1" + , ")" + , "{" + , " return botan_tpm2_ctx_destroy(arg1);" + , "}" + , "signed int hs_bindgen_eb450047e23423af (" + , " botan_tpm2_crypto_backend_state_t *arg1," + , " struct ESYS_CONTEXT *arg2," + , " botan_rng_t arg3" + , ")" + , "{" + , " return botan_tpm2_enable_crypto_backend(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5f0c3d836ccabcf9 (" + , " botan_tpm2_crypto_backend_state_t arg1" + , ")" + , "{" + , " return botan_tpm2_crypto_backend_state_destroy(arg1);" + , "}" + , "signed int hs_bindgen_16a884ec96f98d6e (" + , " botan_rng_t *arg1," + , " botan_tpm2_ctx_t arg2," + , " botan_tpm2_session_t arg3," + , " botan_tpm2_session_t arg4," + , " botan_tpm2_session_t arg5" + , ")" + , "{" + , " return botan_tpm2_rng_init(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_f647fd9481a906cf (" + , " botan_tpm2_session_t *arg1," + , " botan_tpm2_ctx_t arg2" + , ")" + , "{" + , " return botan_tpm2_unauthenticated_session_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_002a582452ce8be7 (" + , " botan_tpm2_session_t arg1" + , ")" + , "{" + , " return botan_tpm2_session_destroy(arg1);" + , "}" + ])) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_error_description@ +foreign import ccall safe "hs_bindgen_674a346c95817ba0" hs_bindgen_674a346c95817ba0 :: + FC.CInt + -> IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) + +{-| Convert an error code into a string. Returns "Unknown error" if the error code is not a known one. + +__C declaration:__ @botan_error_description@ + +__defined at:__ @botan\/ffi.h:176:36@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_error_description :: + FC.CInt + -- ^ __C declaration:__ @err@ + -> IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_error_description = hs_bindgen_674a346c95817ba0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_error_last_exception_message@ +foreign import ccall safe "hs_bindgen_a39014984c4001f0" hs_bindgen_a39014984c4001f0 :: + IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) + +{-| Return the message of the last exception caught in this thread. + + This pointer can/will be reallocated or overwritten the next time this thread calls any other Botan FFI function and must be copied to persistent storage first. + +__C declaration:__ @botan_error_last_exception_message@ + +__defined at:__ @botan\/ffi.h:185:36@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_error_last_exception_message :: IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_error_last_exception_message = + hs_bindgen_a39014984c4001f0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_ffi_api_version@ +foreign import ccall safe "hs_bindgen_716e115ca1acfb16" hs_bindgen_716e115ca1acfb16 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the version of the currently supported FFI API. This is expressed in the form YYYYMMDD of the release date of this version of the API. + +__C declaration:__ @botan_ffi_api_version@ + +__defined at:__ @botan\/ffi.h:192:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_api_version :: IO HsBindgen.Runtime.Prelude.Word32 +botan_ffi_api_version = hs_bindgen_716e115ca1acfb16 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_ffi_supports_api@ +foreign import ccall safe "hs_bindgen_88d727dfe5884f5a" hs_bindgen_88d727dfe5884f5a :: + HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| Return 0 (ok) if the version given is one this library supports. botan_ffi_supports_api(botan_ffi_api_version()) will always return 0. + +__C declaration:__ @botan_ffi_supports_api@ + +__defined at:__ @botan\/ffi.h:198:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_supports_api :: + HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @api_version@ + -> IO FC.CInt +botan_ffi_supports_api = hs_bindgen_88d727dfe5884f5a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_version_string@ +foreign import ccall safe "hs_bindgen_1834aa15e35b1ab8" hs_bindgen_1834aa15e35b1ab8 :: + IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) + +{-| Return a free-form version string, e.g., 2.0.0 + +__C declaration:__ @botan_version_string@ + +__defined at:__ @botan\/ffi.h:203:36@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_string :: IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_version_string = hs_bindgen_1834aa15e35b1ab8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_version_major@ +foreign import ccall safe "hs_bindgen_0bd7c3bb9f87e9f8" hs_bindgen_0bd7c3bb9f87e9f8 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the major version of the library + +__C declaration:__ @botan_version_major@ + +__defined at:__ @botan\/ffi.h:208:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_major :: IO HsBindgen.Runtime.Prelude.Word32 +botan_version_major = hs_bindgen_0bd7c3bb9f87e9f8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_version_minor@ +foreign import ccall safe "hs_bindgen_dca9bce2039b1d20" hs_bindgen_dca9bce2039b1d20 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the minor version of the library + +__C declaration:__ @botan_version_minor@ + +__defined at:__ @botan\/ffi.h:213:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_minor :: IO HsBindgen.Runtime.Prelude.Word32 +botan_version_minor = hs_bindgen_dca9bce2039b1d20 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_version_patch@ +foreign import ccall safe "hs_bindgen_565710906ee227b8" hs_bindgen_565710906ee227b8 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the patch version of the library + +__C declaration:__ @botan_version_patch@ + +__defined at:__ @botan\/ffi.h:218:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_patch :: IO HsBindgen.Runtime.Prelude.Word32 +botan_version_patch = hs_bindgen_565710906ee227b8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_version_datestamp@ +foreign import ccall safe "hs_bindgen_36ed0710c553c820" hs_bindgen_36ed0710c553c820 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the date this version was released as an integer. + + Returns 0 if the library was not built from an official release + +__C declaration:__ @botan_version_datestamp@ + +__defined at:__ @botan\/ffi.h:225:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_datestamp :: IO HsBindgen.Runtime.Prelude.Word32 +botan_version_datestamp = hs_bindgen_36ed0710c553c820 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_constant_time_compare@ +foreign import ccall safe "hs_bindgen_ccc8584ed0ebc1ac" hs_bindgen_ccc8584ed0ebc1ac :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Returns 0 if x[0..len] == y[0..len], or otherwise -1 + +__C declaration:__ @botan_constant_time_compare@ + +__defined at:__ @botan\/ffi.h:230:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_constant_time_compare :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @x@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @y@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> IO FC.CInt +botan_constant_time_compare = + hs_bindgen_ccc8584ed0ebc1ac + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_same_mem@ +foreign import ccall safe "hs_bindgen_a840e2ad27819685" hs_bindgen_a840e2ad27819685 :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Deprecated equivalent to botan_constant_time_compare + +__C declaration:__ @botan_same_mem@ + +__defined at:__ @botan\/ffi.h:236:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_same_mem :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @x@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @y@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> IO FC.CInt +botan_same_mem = hs_bindgen_a840e2ad27819685 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_scrub_mem@ +foreign import ccall safe "hs_bindgen_725152703eb144ee" hs_bindgen_725152703eb144ee :: + Ptr.Ptr Void + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Clear out memory using a system specific approach to bypass elision by the compiler (currently using RtlSecureZeroMemory or tricks with volatile pointers). + +__C declaration:__ @botan_scrub_mem@ + +__defined at:__ @botan\/ffi.h:242:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_scrub_mem :: + Ptr.Ptr Void + -- ^ __C declaration:__ @mem@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @bytes@ + -> IO FC.CInt +botan_scrub_mem = hs_bindgen_725152703eb144ee + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_hex_encode@ +foreign import ccall safe "hs_bindgen_d7eecc45a5eff4d8" hs_bindgen_d7eecc45a5eff4d8 :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| Perform hex encoding + + [__@x@ /(input)/__]: is some binary data + + [__@len@ /(input)/__]: length of x in bytes + + [__@out@ /(input)/__]: an array of at least x*2 bytes + + [__@flags@ /(input)/__]: flags out be upper or lower case? + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hex_encode@ + +__defined at:__ @botan\/ffi.h:257:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hex_encode :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@x@ /(input)/__]: is some binary data + + __C declaration:__ @x@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@len@ /(input)/__]: length of x in bytes + + __C declaration:__ @len@ + -} + -> Ptr.Ptr FC.CChar + {- ^ + + [__@out@ /(input)/__]: an array of at least x*2 bytes + + __C declaration:__ @out@ + -} + -> HsBindgen.Runtime.Prelude.Word32 + {- ^ + + [__@flags@ /(input)/__]: flags out be upper or lower case? + + __C declaration:__ @flags@ + -} + -> IO FC.CInt +botan_hex_encode = hs_bindgen_d7eecc45a5eff4d8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_hex_decode@ +foreign import ccall safe "hs_bindgen_3d9157b0a7d10dc8" hs_bindgen_3d9157b0a7d10dc8 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Perform hex decoding + + [__@hex_str@ /(input)/__]: a string of hex chars (whitespace is ignored) + + [__@in_len@ /(input)/__]: the length of hex_str + + [__@out@ /(input)/__]: the output buffer should be at least strlen(hex_str)/2 bytes + + [__@out_len@ /(input)/__]: the size of the output buffer on input, set to the number of bytes written + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hex_decode@ + +__defined at:__ @botan\/ffi.h:267:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hex_decode :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@hex_str@ /(input)/__]: a string of hex chars (whitespace is ignored) + + __C declaration:__ @hex_str@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@in_len@ /(input)/__]: the length of hex_str + + __C declaration:__ @in_len@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: the output buffer should be at least strlen(hex_str)/2 bytes + + __C declaration:__ @out@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_len@ /(input)/__]: the size of the output buffer on input, set to the number of bytes written + + __C declaration:__ @out_len@ + -} + -> IO FC.CInt +botan_hex_decode = hs_bindgen_3d9157b0a7d10dc8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_base64_encode@ +foreign import ccall safe "hs_bindgen_a692880a13331584" hs_bindgen_a692880a13331584 :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Perform base64 encoding + + [__@x@ /(input)/__]: the input data + + [__@len@ /(input)/__]: the length of x + + [__@out@ /(input)/__]: the output buffer + + [__@out_len@ /(input)/__]: the size of the output buffer on input, set to the number of bytes written + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_base64_encode@ + +__defined at:__ @botan\/ffi.h:279:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_base64_encode :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@x@ /(input)/__]: the input data + + __C declaration:__ @x@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@len@ /(input)/__]: the length of x + + __C declaration:__ @len@ + -} + -> Ptr.Ptr FC.CChar + {- ^ + + [__@out@ /(input)/__]: the output buffer + + __C declaration:__ @out@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_len@ /(input)/__]: the size of the output buffer on input, set to the number of bytes written + + __C declaration:__ @out_len@ + -} + -> IO FC.CInt +botan_base64_encode = hs_bindgen_a692880a13331584 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_base64_decode@ +foreign import ccall safe "hs_bindgen_6c863b4a5d75d1fa" hs_bindgen_6c863b4a5d75d1fa :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Perform base64 decoding + +__C declaration:__ @botan_base64_decode@ + +__defined at:__ @botan\/ffi.h:284:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_base64_decode :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @base64_str@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @in_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_base64_decode = hs_bindgen_6c863b4a5d75d1fa + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_rng_init@ +foreign import ccall safe "hs_bindgen_c56c39d9762e1b7d" hs_bindgen_c56c39d9762e1b7d :: + Ptr.Ptr Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Initialize a random number generator object + + [__@rng@ /(input)/__]: rng object + + [__@rng_type@ /(input)/__]: type of the rng, possible values: "system": system RNG "esdm-full": ESDM RNG (fully seeded) "esdm-pr": ESDM RNG (w. prediction resistance) "user": userspace RNG "user-threadsafe": userspace RNG, with internal locking "rdrand": directly read RDRAND Set rng_type to null to let the library choose some default. + +__C declaration:__ @botan_rng_init@ + +__defined at:__ @botan\/ffi.h:303:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_init :: + Ptr.Ptr Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: rng object + + __C declaration:__ @rng@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@rng_type@ /(input)/__]: type of the rng, possible values: "system": system RNG "esdm-full": ESDM RNG (fully seeded) "esdm-pr": ESDM RNG (w. prediction resistance) "user": userspace RNG "user-threadsafe": userspace RNG, with internal locking "rdrand": directly read RDRAND Set rng_type to null to let the library choose some default. + + __C declaration:__ @rng_type@ + -} + -> IO FC.CInt +botan_rng_init = hs_bindgen_c56c39d9762e1b7d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_rng_init_custom@ +foreign import ccall safe "hs_bindgen_cdbb0b7f9a0cae46" hs_bindgen_cdbb0b7f9a0cae46 :: + Ptr.Ptr Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Ptr.Ptr Void + -> Ptr.FunPtr ((Ptr.Ptr Void) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) + -> Ptr.FunPtr ((Ptr.Ptr Void) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) + -> Ptr.FunPtr ((Ptr.Ptr Void) -> IO ()) + -> IO FC.CInt + +{-| Initialize a custom random number generator from a set of callback functions + + [__@rng_out@ /(input)/__]: rng object to create + + [__@rng_name@ /(input)/__]: name of the rng + + [__@context@ /(input)/__]: An application-specific context passed to the callback functions + + [__@get_cb@ /(input)/__]: Callback for getting random bytes from the rng, return 0 for success + + [__@add_entropy_cb@ /(input)/__]: Callback for adding entropy to the rng, return 0 for success, may be NULL + + [__@destroy_cb@ /(input)/__]: Callback called when rng is destroyed, may be NULL + +__C declaration:__ @botan_rng_init_custom@ + +__defined at:__ @botan\/ffi.h:315:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_init_custom :: + Ptr.Ptr Botan_rng_t + {- ^ + + [__@rng_out@ /(input)/__]: rng object to create + + __C declaration:__ @rng_out@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@rng_name@ /(input)/__]: name of the rng + + __C declaration:__ @rng_name@ + -} + -> Ptr.Ptr Void + {- ^ + + [__@context@ /(input)/__]: An application-specific context passed to the callback functions + + __C declaration:__ @context@ + -} + -> Ptr.FunPtr ((Ptr.Ptr Void) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) + {- ^ + + [__@get_cb@ /(input)/__]: Callback for getting random bytes from the rng, return 0 for success + + __C declaration:__ @get_cb@ + -} + -> Ptr.FunPtr ((Ptr.Ptr Void) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) + {- ^ + + [__@add_entropy_cb@ /(input)/__]: Callback for adding entropy to the rng, return 0 for success, may be NULL + + __C declaration:__ @add_entropy_cb@ + -} + -> Ptr.FunPtr ((Ptr.Ptr Void) -> IO ()) + {- ^ + + [__@destroy_cb@ /(input)/__]: Callback called when rng is destroyed, may be NULL + + __C declaration:__ @destroy_cb@ + -} + -> IO FC.CInt +botan_rng_init_custom = hs_bindgen_cdbb0b7f9a0cae46 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_rng_get@ +foreign import ccall safe "hs_bindgen_1426a79f312a45b1" hs_bindgen_1426a79f312a45b1 :: + Botan_rng_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get random bytes from a random number generator + + [__@rng@ /(input)/__]: rng object + + [__@out@ /(input)/__]: output buffer of size out_len + + [__@out_len@ /(input)/__]: number of requested bytes + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_rng_get@ + +__defined at:__ @botan\/ffi.h:330:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_get :: + Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: rng object + + __C declaration:__ @rng@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: output buffer of size out_len + + __C declaration:__ @out@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_len@ /(input)/__]: number of requested bytes + + __C declaration:__ @out_len@ + -} + -> IO FC.CInt +botan_rng_get = hs_bindgen_1426a79f312a45b1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_system_rng_get@ +foreign import ccall safe "hs_bindgen_03e20dbfe07ea825" hs_bindgen_03e20dbfe07ea825 :: + Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get random bytes from system random number generator + + [__@out@ /(input)/__]: output buffer of size out_len + + [__@out_len@ /(input)/__]: number of requested bytes + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_system_rng_get@ + +__defined at:__ @botan\/ffi.h:339:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_system_rng_get :: + Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: output buffer of size out_len + + __C declaration:__ @out@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_len@ /(input)/__]: number of requested bytes + + __C declaration:__ @out_len@ + -} + -> IO FC.CInt +botan_system_rng_get = hs_bindgen_03e20dbfe07ea825 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_rng_reseed@ +foreign import ccall safe "hs_bindgen_11dfc61663f232fc" hs_bindgen_11dfc61663f232fc :: + Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Reseed a random number generator Uses the System_RNG as a seed generator. + + [__@rng@ /(input)/__]: rng object + + [__@bits@ /(input)/__]: number of bits to reseed with + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_rng_reseed@ + +__defined at:__ @botan\/ffi.h:349:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_reseed :: + Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: rng object + + __C declaration:__ @rng@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@bits@ /(input)/__]: number of bits to reseed with + + __C declaration:__ @bits@ + -} + -> IO FC.CInt +botan_rng_reseed = hs_bindgen_11dfc61663f232fc + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_rng_reseed_from_rng@ +foreign import ccall safe "hs_bindgen_93af501aa8a501a0" hs_bindgen_93af501aa8a501a0 :: + Botan_rng_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Reseed a random number generator + + [__@rng@ /(input)/__]: rng object + + [__@source_rng@ /(input)/__]: the rng that will be read from + + [__@bits@ /(input)/__]: number of bits to reseed with + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_rng_reseed_from_rng@ + +__defined at:__ @botan\/ffi.h:359:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_reseed_from_rng :: + Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: rng object + + __C declaration:__ @rng@ + -} + -> Botan_rng_t + {- ^ + + [__@source_rng@ /(input)/__]: the rng that will be read from + + __C declaration:__ @source_rng@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@bits@ /(input)/__]: number of bits to reseed with + + __C declaration:__ @bits@ + -} + -> IO FC.CInt +botan_rng_reseed_from_rng = + hs_bindgen_93af501aa8a501a0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_rng_add_entropy@ +foreign import ccall safe "hs_bindgen_2af20e57dae15bc2" hs_bindgen_2af20e57dae15bc2 :: + Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Add some seed material to a random number generator + + [__@rng@ /(input)/__]: rng object + + [__@entropy@ /(input)/__]: the data to add + + [__@entropy_len@ /(input)/__]: length of entropy buffer + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_rng_add_entropy@ + +__defined at:__ @botan\/ffi.h:369:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_add_entropy :: + Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: rng object + + __C declaration:__ @rng@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@entropy@ /(input)/__]: the data to add + + __C declaration:__ @entropy@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@entropy_len@ /(input)/__]: length of entropy buffer + + __C declaration:__ @entropy_len@ + -} + -> IO FC.CInt +botan_rng_add_entropy = hs_bindgen_2af20e57dae15bc2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_rng_destroy@ +foreign import ccall safe "hs_bindgen_0739cf8ecee6c77a" hs_bindgen_0739cf8ecee6c77a :: + Botan_rng_t + -> IO FC.CInt + +{-| Frees all resources of the random number generator object + + [__@rng@ /(input)/__]: rng object + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_rng_destroy@ + +__defined at:__ @botan\/ffi.h:376:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_destroy :: + Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: rng object + + __C declaration:__ @rng@ + -} + -> IO FC.CInt +botan_rng_destroy = hs_bindgen_0739cf8ecee6c77a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_hash_init@ +foreign import ccall safe "hs_bindgen_de429430f875335c" hs_bindgen_de429430f875335c :: + Ptr.Ptr Botan_hash_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| Initialize a hash function object + + [__@hash@ /(input)/__]: hash object + + [__@hash_name@ /(input)/__]: name of the hash function, e.g., "SHA-384" + + [__@flags@ /(input)/__]: should be 0 in current API revision, all other uses are reserved and return BOTAN_FFI_ERROR_BAD_FLAG + +__C declaration:__ @botan_hash_init@ + +__defined at:__ @botan\/ffi.h:390:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_init :: + Ptr.Ptr Botan_hash_t + {- ^ + + [__@hash@ /(input)/__]: hash object + + __C declaration:__ @hash@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@hash_name@ /(input)/__]: name of the hash function, e.g., "SHA-384" + + __C declaration:__ @hash_name@ + -} + -> HsBindgen.Runtime.Prelude.Word32 + {- ^ + + [__@flags@ /(input)/__]: should be 0 in current API revision, all other uses are reserved and return BOTAN_FFI_ERROR_BAD_FLAG + + __C declaration:__ @flags@ + -} + -> IO FC.CInt +botan_hash_init = hs_bindgen_de429430f875335c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_hash_copy_state@ +foreign import ccall safe "hs_bindgen_49beb39c743f9db1" hs_bindgen_49beb39c743f9db1 :: + Ptr.Ptr Botan_hash_t + -> Botan_hash_t + -> IO FC.CInt + +{-| Copy the state of a hash function object + + [__@dest@ /(input)/__]: destination hash object + + [__@source@ /(input)/__]: source hash object + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_copy_state@ + +__defined at:__ @botan\/ffi.h:398:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_copy_state :: + Ptr.Ptr Botan_hash_t + {- ^ + + [__@dest@ /(input)/__]: destination hash object + + __C declaration:__ @dest@ + -} + -> Botan_hash_t + {- ^ + + [__@source@ /(input)/__]: source hash object + + __C declaration:__ @source@ + -} + -> IO FC.CInt +botan_hash_copy_state = hs_bindgen_49beb39c743f9db1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_hash_output_length@ +foreign import ccall safe "hs_bindgen_a06aaf6fb15e6291" hs_bindgen_a06aaf6fb15e6291 :: + Botan_hash_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Writes the output length of the hash function to *output_length + + [__@hash@ /(input)/__]: hash object + + [__@output_length@ /(input)/__]: output buffer to hold the hash function output length + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_output_length@ + +__defined at:__ @botan\/ffi.h:406:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_output_length :: + Botan_hash_t + {- ^ + + [__@hash@ /(input)/__]: hash object + + __C declaration:__ @hash@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@output_length@ /(input)/__]: output buffer to hold the hash function output length + + __C declaration:__ @output_length@ + -} + -> IO FC.CInt +botan_hash_output_length = + hs_bindgen_a06aaf6fb15e6291 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_hash_block_size@ +foreign import ccall safe "hs_bindgen_98cc313856edd0a6" hs_bindgen_98cc313856edd0a6 :: + Botan_hash_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Writes the block size of the hash function to *block_size + + [__@hash@ /(input)/__]: hash object + + [__@block_size@ /(input)/__]: output buffer to hold the hash function output length + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_block_size@ + +__defined at:__ @botan\/ffi.h:414:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_block_size :: + Botan_hash_t + {- ^ + + [__@hash@ /(input)/__]: hash object + + __C declaration:__ @hash@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@block_size@ /(input)/__]: output buffer to hold the hash function output length + + __C declaration:__ @block_size@ + -} + -> IO FC.CInt +botan_hash_block_size = hs_bindgen_98cc313856edd0a6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_hash_update@ +foreign import ccall safe "hs_bindgen_780e7297be6c91d7" hs_bindgen_780e7297be6c91d7 :: + Botan_hash_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Send more input to the hash function + + [__@hash@ /(input)/__]: hash object + + [__@in@ /(input)/__]: input buffer + + [__@in_len@ /(input)/__]: number of bytes to read from the input buffer + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_update@ + +__defined at:__ @botan\/ffi.h:423:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_update :: + Botan_hash_t + {- ^ + + [__@hash@ /(input)/__]: hash object + + __C declaration:__ @hash@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @in'@ + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@in_len@ /(input)/__]: number of bytes to read from the input buffer + + __C declaration:__ @in_len@ + -} + -> IO FC.CInt +botan_hash_update = hs_bindgen_780e7297be6c91d7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_hash_final@ +foreign import ccall safe "hs_bindgen_cb3d2c7c1809cf63" hs_bindgen_cb3d2c7c1809cf63 :: + Botan_hash_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| Finalizes the hash computation and writes the output to out[0:botan_hash_output_length()] then reinitializes for computing another digest as if botan_hash_clear had been called. + + [__@hash@ /(input)/__]: hash object + + [__@out@ /(input)/__]: output buffer + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_final@ + +__defined at:__ @botan\/ffi.h:433:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_final :: + Botan_hash_t + {- ^ + + [__@hash@ /(input)/__]: hash object + + __C declaration:__ @hash@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: output buffer + + __C declaration:__ @out@ + -} + -> IO FC.CInt +botan_hash_final = hs_bindgen_cb3d2c7c1809cf63 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_hash_clear@ +foreign import ccall safe "hs_bindgen_62bdb4019e1aa674" hs_bindgen_62bdb4019e1aa674 :: + Botan_hash_t + -> IO FC.CInt + +{-| Reinitializes the state of the hash computation. A hash can be computed (with update/final) immediately. + + [__@hash@ /(input)/__]: hash object + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_clear@ + +__defined at:__ @botan\/ffi.h:441:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_clear :: + Botan_hash_t + {- ^ + + [__@hash@ /(input)/__]: hash object + + __C declaration:__ @hash@ + -} + -> IO FC.CInt +botan_hash_clear = hs_bindgen_62bdb4019e1aa674 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_hash_destroy@ +foreign import ccall safe "hs_bindgen_2c20324fd78db885" hs_bindgen_2c20324fd78db885 :: + Botan_hash_t + -> IO FC.CInt + +{-| Frees all resources of the hash object + + [__@hash@ /(input)/__]: hash object + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_hash_destroy@ + +__defined at:__ @botan\/ffi.h:448:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_destroy :: + Botan_hash_t + {- ^ + + [__@hash@ /(input)/__]: hash object + + __C declaration:__ @hash@ + -} + -> IO FC.CInt +botan_hash_destroy = hs_bindgen_2c20324fd78db885 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_hash_name@ +foreign import ccall safe "hs_bindgen_494728fc153a8ebb" hs_bindgen_494728fc153a8ebb :: + Botan_hash_t + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get the name of this hash function + + [__@hash@ /(input)/__]: the object to read + + [__@name@ /(input)/__]: output buffer + + [__@name_len@ /(input)/__]: on input, the length of buffer, on success the number of bytes written + +__C declaration:__ @botan_hash_name@ + +__defined at:__ @botan\/ffi.h:456:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_name :: + Botan_hash_t + {- ^ + + [__@hash@ /(input)/__]: the object to read + + __C declaration:__ @hash@ + -} + -> Ptr.Ptr FC.CChar + {- ^ + + [__@name@ /(input)/__]: output buffer + + __C declaration:__ @name@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@name_len@ /(input)/__]: on input, the length of buffer, on success the number of bytes written + + __C declaration:__ @name_len@ + -} + -> IO FC.CInt +botan_hash_name = hs_bindgen_494728fc153a8ebb + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mac_init@ +foreign import ccall safe "hs_bindgen_4f438e2b05bd73e1" hs_bindgen_4f438e2b05bd73e1 :: + Ptr.Ptr Botan_mac_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| Initialize a message authentication code object + + [__@mac@ /(input)/__]: mac object + + [__@mac_name@ /(input)/__]: name of the hash function, e.g., "HMAC(SHA-384)" + + [__@flags@ /(input)/__]: should be 0 in current API revision, all other uses are reserved and return a negative value (error code) + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_init@ + +__defined at:__ @botan\/ffi.h:471:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_init :: + Ptr.Ptr Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: mac object + + __C declaration:__ @mac@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@mac_name@ /(input)/__]: name of the hash function, e.g., "HMAC(SHA-384)" + + __C declaration:__ @mac_name@ + -} + -> HsBindgen.Runtime.Prelude.Word32 + {- ^ + + [__@flags@ /(input)/__]: should be 0 in current API revision, all other uses are reserved and return a negative value (error code) + + __C declaration:__ @flags@ + -} + -> IO FC.CInt +botan_mac_init = hs_bindgen_4f438e2b05bd73e1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mac_output_length@ +foreign import ccall safe "hs_bindgen_3c53a5094a70b1fe" hs_bindgen_3c53a5094a70b1fe :: + Botan_mac_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Writes the output length of the message authentication code to *output_length + + [__@mac@ /(input)/__]: mac object + + [__@output_length@ /(input)/__]: output buffer to hold the MAC output length + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_output_length@ + +__defined at:__ @botan\/ffi.h:479:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_output_length :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: mac object + + __C declaration:__ @mac@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@output_length@ /(input)/__]: output buffer to hold the MAC output length + + __C declaration:__ @output_length@ + -} + -> IO FC.CInt +botan_mac_output_length = hs_bindgen_3c53a5094a70b1fe + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mac_set_key@ +foreign import ccall safe "hs_bindgen_bc4bb7abb25b9b8a" hs_bindgen_bc4bb7abb25b9b8a :: + Botan_mac_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Sets the key on the MAC + + [__@mac@ /(input)/__]: mac object + + [__@key@ /(input)/__]: buffer holding the key + + [__@key_len@ /(input)/__]: size of the key buffer in bytes + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_set_key@ + +__defined at:__ @botan\/ffi.h:488:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_set_key :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: mac object + + __C declaration:__ @mac@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@key@ /(input)/__]: buffer holding the key + + __C declaration:__ @key@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@key_len@ /(input)/__]: size of the key buffer in bytes + + __C declaration:__ @key_len@ + -} + -> IO FC.CInt +botan_mac_set_key = hs_bindgen_bc4bb7abb25b9b8a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mac_set_nonce@ +foreign import ccall safe "hs_bindgen_c44244423d7721cc" hs_bindgen_c44244423d7721cc :: + Botan_mac_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Sets the nonce on the MAC + + [__@mac@ /(input)/__]: mac object + + [__@nonce@ /(input)/__]: buffer holding the key + + [__@nonce_len@ /(input)/__]: size of the key buffer in bytes + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_set_nonce@ + +__defined at:__ @botan\/ffi.h:497:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_set_nonce :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: mac object + + __C declaration:__ @mac@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@nonce@ /(input)/__]: buffer holding the key + + __C declaration:__ @nonce@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@nonce_len@ /(input)/__]: size of the key buffer in bytes + + __C declaration:__ @nonce_len@ + -} + -> IO FC.CInt +botan_mac_set_nonce = hs_bindgen_c44244423d7721cc + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mac_update@ +foreign import ccall safe "hs_bindgen_c3ec4a51d9574cf3" hs_bindgen_c3ec4a51d9574cf3 :: + Botan_mac_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Send more input to the message authentication code + + [__@mac@ /(input)/__]: mac object + + [__@buf@ /(input)/__]: input buffer + + [__@len@ /(input)/__]: number of bytes to read from the input buffer + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_update@ + +__defined at:__ @botan\/ffi.h:506:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_update :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: mac object + + __C declaration:__ @mac@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@buf@ /(input)/__]: input buffer + + __C declaration:__ @buf@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@len@ /(input)/__]: number of bytes to read from the input buffer + + __C declaration:__ @len@ + -} + -> IO FC.CInt +botan_mac_update = hs_bindgen_c3ec4a51d9574cf3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mac_final@ +foreign import ccall safe "hs_bindgen_88082c08f2ce3cbf" hs_bindgen_88082c08f2ce3cbf :: + Botan_mac_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| Finalizes the MAC computation and writes the output to out[0:botan_mac_output_length()] then reinitializes for computing another MAC as if botan_mac_clear had been called. + + [__@mac@ /(input)/__]: mac object + + [__@out@ /(input)/__]: output buffer + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_final@ + +__defined at:__ @botan\/ffi.h:516:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_final :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: mac object + + __C declaration:__ @mac@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: output buffer + + __C declaration:__ @out@ + -} + -> IO FC.CInt +botan_mac_final = hs_bindgen_88082c08f2ce3cbf + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mac_clear@ +foreign import ccall safe "hs_bindgen_9b0d7aebe6e9e68b" hs_bindgen_9b0d7aebe6e9e68b :: + Botan_mac_t + -> IO FC.CInt + +{-| Reinitializes the state of the MAC computation. A MAC can be computed (with update/final) immediately. + + [__@mac@ /(input)/__]: mac object + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_clear@ + +__defined at:__ @botan\/ffi.h:524:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_clear :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: mac object + + __C declaration:__ @mac@ + -} + -> IO FC.CInt +botan_mac_clear = hs_bindgen_9b0d7aebe6e9e68b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mac_name@ +foreign import ccall safe "hs_bindgen_f7bfb6ecbc0679b7" hs_bindgen_f7bfb6ecbc0679b7 :: + Botan_mac_t + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get the name of this MAC + + [__@mac@ /(input)/__]: the object to read + + [__@name@ /(input)/__]: output buffer + + [__@name_len@ /(input)/__]: on input, the length of buffer, on success the number of bytes written + +__C declaration:__ @botan_mac_name@ + +__defined at:__ @botan\/ffi.h:532:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_name :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: the object to read + + __C declaration:__ @mac@ + -} + -> Ptr.Ptr FC.CChar + {- ^ + + [__@name@ /(input)/__]: output buffer + + __C declaration:__ @name@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@name_len@ /(input)/__]: on input, the length of buffer, on success the number of bytes written + + __C declaration:__ @name_len@ + -} + -> IO FC.CInt +botan_mac_name = hs_bindgen_f7bfb6ecbc0679b7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mac_get_keyspec@ +foreign import ccall safe "hs_bindgen_830322e820c308ca" hs_bindgen_830322e820c308ca :: + Botan_mac_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get the key length limits of this auth code + + [__@mac@ /(input)/__]: the object to read + + [__@out_minimum_keylength@ /(input)/__]: if non-NULL, will be set to minimum keylength of MAC + + [__@out_maximum_keylength@ /(input)/__]: if non-NULL, will be set to maximum keylength of MAC + + [__@out_keylength_modulo@ /(input)/__]: if non-NULL will be set to byte multiple of valid keys + +__C declaration:__ @botan_mac_get_keyspec@ + +__defined at:__ @botan\/ffi.h:542:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_get_keyspec :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: the object to read + + __C declaration:__ @mac@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_minimum_keylength@ /(input)/__]: if non-NULL, will be set to minimum keylength of MAC + + __C declaration:__ @out_minimum_keylength@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_maximum_keylength@ /(input)/__]: if non-NULL, will be set to maximum keylength of MAC + + __C declaration:__ @out_maximum_keylength@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_keylength_modulo@ /(input)/__]: if non-NULL will be set to byte multiple of valid keys + + __C declaration:__ @out_keylength_modulo@ + -} + -> IO FC.CInt +botan_mac_get_keyspec = hs_bindgen_830322e820c308ca + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mac_destroy@ +foreign import ccall safe "hs_bindgen_9f4b77a9315885c6" hs_bindgen_9f4b77a9315885c6 :: + Botan_mac_t + -> IO FC.CInt + +{-| Frees all resources of the MAC object + + [__@mac@ /(input)/__]: mac object + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_mac_destroy@ + +__defined at:__ @botan\/ffi.h:552:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_destroy :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: mac object + + __C declaration:__ @mac@ + -} + -> IO FC.CInt +botan_mac_destroy = hs_bindgen_9f4b77a9315885c6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_cipher_init@ +foreign import ccall safe "hs_bindgen_9348e49a6a5d90e1" hs_bindgen_9348e49a6a5d90e1 :: + Ptr.Ptr Botan_cipher_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| Initialize a cipher object + +__C declaration:__ @botan_cipher_init@ + +__defined at:__ @botan\/ffi.h:566:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_init :: + Ptr.Ptr Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @name@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_cipher_init = hs_bindgen_9348e49a6a5d90e1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_cipher_name@ +foreign import ccall safe "hs_bindgen_3f96eb0c2b3b3377" hs_bindgen_3f96eb0c2b3b3377 :: + Botan_cipher_t + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Return the name of the cipher object + +__C declaration:__ @botan_cipher_name@ + +__defined at:__ @botan\/ffi.h:571:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_name :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> Ptr.Ptr FC.CChar + -- ^ __C declaration:__ @name@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @name_len@ + -> IO FC.CInt +botan_cipher_name = hs_bindgen_3f96eb0c2b3b3377 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_cipher_output_length@ +foreign import ccall safe "hs_bindgen_af7b83002f5f22cb" hs_bindgen_af7b83002f5f22cb :: + Botan_cipher_t + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Return the output length of this cipher, for a particular input length. + +__C declaration:__ @botan_cipher_output_length@ + +__defined at:__ @botan\/ffi.h:576:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_output_length :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @in_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_cipher_output_length = + hs_bindgen_af7b83002f5f22cb + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_cipher_valid_nonce_length@ +foreign import ccall safe "hs_bindgen_854881e7a00b6d47" hs_bindgen_854881e7a00b6d47 :: + Botan_cipher_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Return if the specified nonce length is valid for this cipher + +__C declaration:__ @botan_cipher_valid_nonce_length@ + +__defined at:__ @botan\/ffi.h:581:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_valid_nonce_length :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @nl@ + -> IO FC.CInt +botan_cipher_valid_nonce_length = + hs_bindgen_854881e7a00b6d47 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_cipher_get_tag_length@ +foreign import ccall safe "hs_bindgen_76ce99782f76e50d" hs_bindgen_76ce99782f76e50d :: + Botan_cipher_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get the tag length of the cipher (0 for non-AEAD modes) + +__C declaration:__ @botan_cipher_get_tag_length@ + +__defined at:__ @botan\/ffi.h:586:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_get_tag_length :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @tag_size@ + -> IO FC.CInt +botan_cipher_get_tag_length = + hs_bindgen_76ce99782f76e50d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_cipher_is_authenticated@ +foreign import ccall safe "hs_bindgen_b60fb638db6991b6" hs_bindgen_b60fb638db6991b6 :: + Botan_cipher_t + -> IO FC.CInt + +{-| Returns 1 iff the cipher provides authentication as well as confidentiality. + +__C declaration:__ @botan_cipher_is_authenticated@ + +__defined at:__ @botan\/ffi.h:591:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_is_authenticated :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_is_authenticated = + hs_bindgen_b60fb638db6991b6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_cipher_requires_entire_message@ +foreign import ccall safe "hs_bindgen_cfe1882ab3e5b3a0" hs_bindgen_cfe1882ab3e5b3a0 :: + Botan_cipher_t + -> IO FC.CInt + +{-| Returns 1 iff the cipher requires the entire message before any encryption or decryption can be performed. No output data will be produced in botan_cipher_update() until the final flag is set. + +__C declaration:__ @botan_cipher_requires_entire_message@ + +__defined at:__ @botan\/ffi.h:598:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_requires_entire_message :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_requires_entire_message = + hs_bindgen_cfe1882ab3e5b3a0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_cipher_get_default_nonce_length@ +foreign import ccall safe "hs_bindgen_2b6d0b934813a9ce" hs_bindgen_2b6d0b934813a9ce :: + Botan_cipher_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get the default nonce length of this cipher + +__C declaration:__ @botan_cipher_get_default_nonce_length@ + +__defined at:__ @botan\/ffi.h:603:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_get_default_nonce_length :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @nl@ + -> IO FC.CInt +botan_cipher_get_default_nonce_length = + hs_bindgen_2b6d0b934813a9ce + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_cipher_get_update_granularity@ +foreign import ccall safe "hs_bindgen_34758c3b1f7437c3" hs_bindgen_34758c3b1f7437c3 :: + Botan_cipher_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Return the update granularity of the cipher; botan_cipher_update must be called with blocks of this size, except for the final. + +__C declaration:__ @botan_cipher_get_update_granularity@ + +__defined at:__ @botan\/ffi.h:609:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_get_update_granularity :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ug@ + -> IO FC.CInt +botan_cipher_get_update_granularity = + hs_bindgen_34758c3b1f7437c3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_cipher_get_ideal_update_granularity@ +foreign import ccall safe "hs_bindgen_a6706bcf0aa8fc98" hs_bindgen_a6706bcf0aa8fc98 :: + Botan_cipher_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Return the ideal update granularity of the cipher. This is some multiple of the update granularity, reflecting possibilities for optimization. + +__C declaration:__ @botan_cipher_get_ideal_update_granularity@ + +__defined at:__ @botan\/ffi.h:615:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_get_ideal_update_granularity :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ug@ + -> IO FC.CInt +botan_cipher_get_ideal_update_granularity = + hs_bindgen_a6706bcf0aa8fc98 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_cipher_query_keylen@ +foreign import ccall safe "hs_bindgen_22043dea16f6befd" hs_bindgen_22043dea16f6befd :: + Botan_cipher_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get information about the key lengths. Prefer botan_cipher_get_keyspec + +__C declaration:__ @botan_cipher_query_keylen@ + +__defined at:__ @botan\/ffi.h:621:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_query_keylen :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_minimum_keylength@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_maximum_keylength@ + -> IO FC.CInt +botan_cipher_query_keylen = + hs_bindgen_22043dea16f6befd + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_cipher_get_keyspec@ +foreign import ccall safe "hs_bindgen_5f8b4812c0e5b9a6" hs_bindgen_5f8b4812c0e5b9a6 :: + Botan_cipher_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get information about the supported key lengths. + +__C declaration:__ @botan_cipher_get_keyspec@ + +__defined at:__ @botan\/ffi.h:627:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_get_keyspec :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @min_keylen@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @max_keylen@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @mod_keylen@ + -> IO FC.CInt +botan_cipher_get_keyspec = + hs_bindgen_5f8b4812c0e5b9a6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_cipher_set_key@ +foreign import ccall safe "hs_bindgen_5c8f6fcab0d9b4cc" hs_bindgen_5c8f6fcab0d9b4cc :: + Botan_cipher_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Set the key for this cipher object + +__C declaration:__ @botan_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:632:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_set_key :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> IO FC.CInt +botan_cipher_set_key = hs_bindgen_5c8f6fcab0d9b4cc + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_cipher_reset@ +foreign import ccall safe "hs_bindgen_047b9a47a2ceee2d" hs_bindgen_047b9a47a2ceee2d :: + Botan_cipher_t + -> IO FC.CInt + +{-| Reset the message specific state for this cipher. Without resetting the keys, this resets the nonce, and any state associated with any message bits that have been processed so far. + + It is conceptually equivalent to calling botan_cipher_clear followed by botan_cipher_set_key with the original key. + +__C declaration:__ @botan_cipher_reset@ + +__defined at:__ @botan\/ffi.h:642:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_reset :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_reset = hs_bindgen_047b9a47a2ceee2d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_cipher_set_associated_data@ +foreign import ccall safe "hs_bindgen_628ef17c8615ae67" hs_bindgen_628ef17c8615ae67 :: + Botan_cipher_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Set the associated data. Will fail if cipher is not an AEAD + +__C declaration:__ @botan_cipher_set_associated_data@ + +__defined at:__ @botan\/ffi.h:647:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_set_associated_data :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @ad@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ad_len@ + -> IO FC.CInt +botan_cipher_set_associated_data = + hs_bindgen_628ef17c8615ae67 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_cipher_start@ +foreign import ccall safe "hs_bindgen_c8d9d5d9b9140bfb" hs_bindgen_c8d9d5d9b9140bfb :: + Botan_cipher_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Begin processing a new message using the provided nonce + +__C declaration:__ @botan_cipher_start@ + +__defined at:__ @botan\/ffi.h:652:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_start :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @nonce@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @nonce_len@ + -> IO FC.CInt +botan_cipher_start = hs_bindgen_c8d9d5d9b9140bfb + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_cipher_update@ +foreign import ccall safe "hs_bindgen_f45fe0ede0bc75cb" hs_bindgen_f45fe0ede0bc75cb :: + Botan_cipher_t + -> HsBindgen.Runtime.Prelude.Word32 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_cipher_update' +-} +botan_cipher_update_wrapper :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @output@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @output_size@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @output_written@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @input_bytes@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @input_size@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @input_consumed@ + -> IO FC.CInt +botan_cipher_update_wrapper = + hs_bindgen_f45fe0ede0bc75cb + +{-| + + Encrypt/Decrypt some data and/or finalize the encryption/decryption + + This encrypts as many bytes from @input_bytes@ into @output_bytes@ as possible. Unless ``BOTAN_CIPHER_UPDATE_FLAG_FINAL`` is set, this function will consume bytes in multiples of botan_cipher_get_update_granularity(). @input_consumed@ and @output_written@ will be set accordingly and it is the caller's responsibility to adapt their buffers accordingly before calling this function again. Note that, unless ``BOTAN_CIPHER_UPDATE_FLAG_FINAL`` is set, the cipher will at most generate @input_size@ output bytes. + + Eventually, the caller must set the ``BOTAN_CIPHER_UPDATE_FLAG_FINAL`` flag to indicate that no more input will be provided. This will cause the cipher to consume all given input bytes and produce the final output; or return a ``BOTAN_FFI_ERROR_INSUFFICIENT_BUFFER_SPACE`` error if the given output buffer was too small. In the latter case, @output_written@ will be set to the required buffer size. Calling again with ``BOTAN_CIPHER_UPDATE_FLAG_FINAL``, a big enough buffer and no further input will then produce the final output. + + Note that some ciphers require the entire message to be provided before any output is produced. + + __see:__ botan_cipher_requires_entire_message(). + +__C declaration:__ @botan_cipher_update@ + +__defined at:__ @botan\/ffi.h:679:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_update :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @output@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @output_size@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @output_written@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @input_bytes@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @input_size@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @input_consumed@ + -> IO FC.CInt +botan_cipher_update = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + HsBindgen.Runtime.IncompleteArray.withPtr x5 (\ptr8 -> + hs_bindgen_f45fe0ede0bc75cb x0 x1 x2 x3 x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x6 x7) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_cipher_clear@ +foreign import ccall safe "hs_bindgen_1fc624b3362cb087" hs_bindgen_1fc624b3362cb087 :: + Botan_cipher_t + -> IO FC.CInt + +{-| Reset the key, nonce, AD and all other state on this cipher object + +__C declaration:__ @botan_cipher_clear@ + +__defined at:__ @botan\/ffi.h:691:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_clear :: + Botan_cipher_t + -- ^ __C declaration:__ @hash@ + -> IO FC.CInt +botan_cipher_clear = hs_bindgen_1fc624b3362cb087 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_cipher_destroy@ +foreign import ccall safe "hs_bindgen_3a7b8c5ad61e5ed3" hs_bindgen_3a7b8c5ad61e5ed3 :: + Botan_cipher_t + -> IO FC.CInt + +{-| Destroy the cipher object + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_cipher_destroy@ + +__defined at:__ @botan\/ffi.h:697:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_destroy :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_destroy = hs_bindgen_3a7b8c5ad61e5ed3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pbkdf@ +foreign import ccall safe "hs_bindgen_9f3b8249d993e435" hs_bindgen_9f3b8249d993e435 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pbkdf' +-} +botan_pbkdf_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @pbkdf_algo@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @iterations@ + -> IO FC.CInt +botan_pbkdf_wrapper = hs_bindgen_9f3b8249d993e435 + +{-| __C declaration:__ @botan_pbkdf@ + + __defined at:__ @botan\/ffi.h:716:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pbkdf :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @pbkdf_algo@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @iterations@ + -> IO FC.CInt +botan_pbkdf = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + HsBindgen.Runtime.IncompleteArray.withPtr x4 (\ptr7 -> + hs_bindgen_9f3b8249d993e435 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x5 x6) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pbkdf_timed@ +foreign import ccall safe "hs_bindgen_c5e8e8964ae5d489" hs_bindgen_c5e8e8964ae5d489 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pbkdf_timed' +-} +botan_pbkdf_timed_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@pbkdf_algo@ /(input)/__]: PBKDF algorithm, e.g., "PBKDF2(SHA-256)" + + __C declaration:__ @pbkdf_algo@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: buffer to store the derived key, must be of out_len bytes + + __C declaration:__ @out@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_len@ /(input)/__]: the desired length of the key to produce + + __C declaration:__ @out_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@passphrase@ /(input)/__]: the password to derive the key from + + __C declaration:__ @passphrase@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@salt@ /(input)/__]: a randomly chosen salt + + __C declaration:__ @salt@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@salt_len@ /(input)/__]: length of salt in bytes + + __C declaration:__ @salt_len@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@milliseconds_to_run@ /(input)/__]: if iterations is zero, then instead the PBKDF is run until milliseconds_to_run milliseconds has passed + + __C declaration:__ @milliseconds_to_run@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_iterations_used@ /(input)/__]: set to the number iterations executed + + __C declaration:__ @out_iterations_used@ + -} + -> IO FC.CInt +botan_pbkdf_timed_wrapper = + hs_bindgen_c5e8e8964ae5d489 + +{-| Derive a key from a passphrase, running until msec time has elapsed. + + [__@pbkdf_algo@ /(input)/__]: PBKDF algorithm, e.g., "PBKDF2(SHA-256)" + + [__@out@ /(input)/__]: buffer to store the derived key, must be of out_len bytes + + [__@out_len@ /(input)/__]: the desired length of the key to produce + + [__@passphrase@ /(input)/__]: the password to derive the key from + + [__@salt@ /(input)/__]: a randomly chosen salt + + [__@salt_len@ /(input)/__]: length of salt in bytes + + [__@milliseconds_to_run@ /(input)/__]: if iterations is zero, then instead the PBKDF is run until milliseconds_to_run milliseconds has passed + + [__@out_iterations_used@ /(input)/__]: set to the number iterations executed + + __returns:__ 0 on success, a negative value on failure + + Deprecated: use + + botan_pwdhash_timed(pbkdf_algo, static_cast (ms_to_run), iterations_used, nullptr, nullptr, out, out_len, password, 0, salt, salt_len); + +__C declaration:__ @botan_pbkdf_timed@ + +__defined at:__ @botan\/ffi.h:749:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pbkdf_timed :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@pbkdf_algo@ /(input)/__]: PBKDF algorithm, e.g., "PBKDF2(SHA-256)" + + __C declaration:__ @pbkdf_algo@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: buffer to store the derived key, must be of out_len bytes + + __C declaration:__ @out@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_len@ /(input)/__]: the desired length of the key to produce + + __C declaration:__ @out_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@passphrase@ /(input)/__]: the password to derive the key from + + __C declaration:__ @passphrase@ + -} + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@salt@ /(input)/__]: a randomly chosen salt + + __C declaration:__ @salt@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@salt_len@ /(input)/__]: length of salt in bytes + + __C declaration:__ @salt_len@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@milliseconds_to_run@ /(input)/__]: if iterations is zero, then instead the PBKDF is run until milliseconds_to_run milliseconds has passed + + __C declaration:__ @milliseconds_to_run@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_iterations_used@ /(input)/__]: set to the number iterations executed + + __C declaration:__ @out_iterations_used@ + -} + -> IO FC.CInt +botan_pbkdf_timed = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + HsBindgen.Runtime.IncompleteArray.withPtr x4 (\ptr8 -> + hs_bindgen_c5e8e8964ae5d489 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pwdhash@ +foreign import ccall safe "hs_bindgen_22bc1e37a86288e3" hs_bindgen_22bc1e37a86288e3 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pwdhash' +-} +botan_pwdhash_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @algo@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param1@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param2@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param3@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @passphrase_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> IO FC.CInt +botan_pwdhash_wrapper = hs_bindgen_22bc1e37a86288e3 + +{-| __C declaration:__ @botan_pwdhash@ + + __defined at:__ @botan\/ffi.h:773:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pwdhash :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @algo@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param1@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param2@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param3@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @passphrase_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> IO FC.CInt +botan_pwdhash = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + \x8 -> + \x9 -> + HsBindgen.Runtime.IncompleteArray.withPtr x8 (\ptr10 -> + hs_bindgen_22bc1e37a86288e3 x0 x1 x2 x3 x4 x5 x6 x7 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x9) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pwdhash_timed@ +foreign import ccall safe "hs_bindgen_0ebccbd88fead954" hs_bindgen_0ebccbd88fead954 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pwdhash_timed' +-} +botan_pwdhash_timed_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @algo@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @msec@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param1@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param2@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param3@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @passphrase_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> IO FC.CInt +botan_pwdhash_timed_wrapper = + hs_bindgen_0ebccbd88fead954 + +{-| __C declaration:__ @botan_pwdhash_timed@ + + __defined at:__ @botan\/ffi.h:800:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pwdhash_timed :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @algo@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @msec@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param1@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param2@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param3@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @passphrase_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> IO FC.CInt +botan_pwdhash_timed = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + \x8 -> + \x9 -> + \x10 -> + HsBindgen.Runtime.IncompleteArray.withPtr x9 (\ptr11 -> + hs_bindgen_0ebccbd88fead954 x0 x1 x2 x3 x4 x5 x6 x7 x8 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr11) x10) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_scrypt@ +foreign import ccall safe "hs_bindgen_426d5a8064a94e86" hs_bindgen_426d5a8064a94e86 :: + Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_scrypt' +-} +botan_scrypt_wrapper :: + Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @n@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @r@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @p@ + -> IO FC.CInt +botan_scrypt_wrapper = hs_bindgen_426d5a8064a94e86 + +{-| Derive a key using scrypt Deprecated; use botan_pwdhash("Scrypt", N, r, p, out, out_len, password, 0, salt, salt_len); + +__C declaration:__ @botan_scrypt@ + +__defined at:__ @botan\/ffi.h:819:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_scrypt :: + Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @n@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @r@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @p@ + -> IO FC.CInt +botan_scrypt = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + HsBindgen.Runtime.IncompleteArray.withPtr x3 (\ptr8 -> + hs_bindgen_426d5a8064a94e86 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_kdf@ +foreign import ccall safe "hs_bindgen_ad22e3006ce78c18" hs_bindgen_ad22e3006ce78c18 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_kdf' +-} +botan_kdf_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@kdf_algo@ /(input)/__]: KDF algorithm, e.g., "SP800-56C" + + __C declaration:__ @kdf_algo@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: buffer holding the derived key, must be of length out_len + + __C declaration:__ @out@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_len@ /(input)/__]: the desired output length in bytes + + __C declaration:__ @out_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@secret@ /(input)/__]: the secret input + + __C declaration:__ @secret@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@secret_len@ /(input)/__]: size of secret in bytes + + __C declaration:__ @secret_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@salt@ /(input)/__]: a diversifier + + __C declaration:__ @salt@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@salt_len@ /(input)/__]: size of salt in bytes + + __C declaration:__ @salt_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@label@ /(input)/__]: purpose for the derived keying material + + __C declaration:__ @label@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@label_len@ /(input)/__]: size of label in bytes + + __C declaration:__ @label_len@ + -} + -> IO FC.CInt +botan_kdf_wrapper = hs_bindgen_ad22e3006ce78c18 + +{-| Derive a key + + [__@kdf_algo@ /(input)/__]: KDF algorithm, e.g., "SP800-56C" + + [__@out@ /(input)/__]: buffer holding the derived key, must be of length out_len + + [__@out_len@ /(input)/__]: the desired output length in bytes + + [__@secret@ /(input)/__]: the secret input + + [__@secret_len@ /(input)/__]: size of secret in bytes + + [__@salt@ /(input)/__]: a diversifier + + [__@salt_len@ /(input)/__]: size of salt in bytes + + [__@label@ /(input)/__]: purpose for the derived keying material + + [__@label_len@ /(input)/__]: size of label in bytes + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_kdf@ + +__defined at:__ @botan\/ffi.h:842:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_kdf :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@kdf_algo@ /(input)/__]: KDF algorithm, e.g., "SP800-56C" + + __C declaration:__ @kdf_algo@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: buffer holding the derived key, must be of length out_len + + __C declaration:__ @out@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_len@ /(input)/__]: the desired output length in bytes + + __C declaration:__ @out_len@ + -} + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@secret@ /(input)/__]: the secret input + + __C declaration:__ @secret@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@secret_len@ /(input)/__]: size of secret in bytes + + __C declaration:__ @secret_len@ + -} + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@salt@ /(input)/__]: a diversifier + + __C declaration:__ @salt@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@salt_len@ /(input)/__]: size of salt in bytes + + __C declaration:__ @salt_len@ + -} + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@label@ /(input)/__]: purpose for the derived keying material + + __C declaration:__ @label@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@label_len@ /(input)/__]: size of label in bytes + + __C declaration:__ @label_len@ + -} + -> IO FC.CInt +botan_kdf = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + \x8 -> + HsBindgen.Runtime.IncompleteArray.withPtr x7 (\ptr9 -> + HsBindgen.Runtime.IncompleteArray.withPtr x5 (\ptr10 -> + HsBindgen.Runtime.IncompleteArray.withPtr x3 (\ptr11 -> + hs_bindgen_ad22e3006ce78c18 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr11) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x6 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x8))) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_block_cipher_init@ +foreign import ccall safe "hs_bindgen_5be294fc1f744410" hs_bindgen_5be294fc1f744410 :: + Ptr.Ptr Botan_block_cipher_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Initialize a block cipher object + +__C declaration:__ @botan_block_cipher_init@ + +__defined at:__ @botan\/ffi.h:860:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_init :: + Ptr.Ptr Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cipher_name@ + -> IO FC.CInt +botan_block_cipher_init = hs_bindgen_5be294fc1f744410 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_block_cipher_destroy@ +foreign import ccall safe "hs_bindgen_874229da57e41721" hs_bindgen_874229da57e41721 :: + Botan_block_cipher_t + -> IO FC.CInt + +{-| Destroy a block cipher object + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_block_cipher_destroy@ + +__defined at:__ @botan\/ffi.h:866:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_destroy :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> IO FC.CInt +botan_block_cipher_destroy = + hs_bindgen_874229da57e41721 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_block_cipher_clear@ +foreign import ccall safe "hs_bindgen_066330fa9d926b40" hs_bindgen_066330fa9d926b40 :: + Botan_block_cipher_t + -> IO FC.CInt + +{-| Reinitializes the block cipher + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_block_cipher_clear@ + +__defined at:__ @botan\/ffi.h:872:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_clear :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> IO FC.CInt +botan_block_cipher_clear = + hs_bindgen_066330fa9d926b40 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_block_cipher_set_key@ +foreign import ccall safe "hs_bindgen_1ab28e43b865e680" hs_bindgen_1ab28e43b865e680 :: + Botan_block_cipher_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_block_cipher_set_key' +-} +botan_block_cipher_set_key_wrapper :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> IO FC.CInt +botan_block_cipher_set_key_wrapper = + hs_bindgen_1ab28e43b865e680 + +{-| Set the key for a block cipher instance + +__C declaration:__ @botan_block_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:877:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_set_key :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> IO FC.CInt +botan_block_cipher_set_key = + \x0 -> + \x1 -> + \x2 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr3 -> + hs_bindgen_1ab28e43b865e680 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_block_cipher_block_size@ +foreign import ccall safe "hs_bindgen_d216821f82384b60" hs_bindgen_d216821f82384b60 :: + Botan_block_cipher_t + -> IO FC.CInt + +{-| Return the positive block size of this block cipher, or negative to indicate an error + +__C declaration:__ @botan_block_cipher_block_size@ + +__defined at:__ @botan\/ffi.h:883:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_block_size :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> IO FC.CInt +botan_block_cipher_block_size = + hs_bindgen_d216821f82384b60 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_block_cipher_encrypt_blocks@ +foreign import ccall safe "hs_bindgen_2129b77904e08dd5" hs_bindgen_2129b77904e08dd5 :: + Botan_block_cipher_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_block_cipher_encrypt_blocks' +-} +botan_block_cipher_encrypt_blocks_wrapper :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @in'@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @blocks@ + -> IO FC.CInt +botan_block_cipher_encrypt_blocks_wrapper = + hs_bindgen_2129b77904e08dd5 + +{-| Encrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_encrypt_blocks@ + +__defined at:__ @botan\/ffi.h:889:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_encrypt_blocks :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @in'@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @blocks@ + -> IO FC.CInt +botan_block_cipher_encrypt_blocks = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr4 -> + hs_bindgen_2129b77904e08dd5 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_block_cipher_decrypt_blocks@ +foreign import ccall safe "hs_bindgen_161cc5ee15a2aefd" hs_bindgen_161cc5ee15a2aefd :: + Botan_block_cipher_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_block_cipher_decrypt_blocks' +-} +botan_block_cipher_decrypt_blocks_wrapper :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @in'@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @blocks@ + -> IO FC.CInt +botan_block_cipher_decrypt_blocks_wrapper = + hs_bindgen_161cc5ee15a2aefd + +{-| Decrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_decrypt_blocks@ + +__defined at:__ @botan\/ffi.h:895:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_decrypt_blocks :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @in'@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @blocks@ + -> IO FC.CInt +botan_block_cipher_decrypt_blocks = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr4 -> + hs_bindgen_161cc5ee15a2aefd x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_block_cipher_name@ +foreign import ccall safe "hs_bindgen_3c55ea589bf343a9" hs_bindgen_3c55ea589bf343a9 :: + Botan_block_cipher_t + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get the name of this block cipher + + [__@cipher@ /(input)/__]: the object to read + + [__@name@ /(input)/__]: output buffer + + [__@name_len@ /(input)/__]: on input, the length of buffer, on success the number of bytes written + +__C declaration:__ @botan_block_cipher_name@ + +__defined at:__ @botan\/ffi.h:903:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_name :: + Botan_block_cipher_t + {- ^ + + [__@cipher@ /(input)/__]: the object to read + + __C declaration:__ @cipher@ + -} + -> Ptr.Ptr FC.CChar + {- ^ + + [__@name@ /(input)/__]: output buffer + + __C declaration:__ @name@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@name_len@ /(input)/__]: on input, the length of buffer, on success the number of bytes written + + __C declaration:__ @name_len@ + -} + -> IO FC.CInt +botan_block_cipher_name = hs_bindgen_3c55ea589bf343a9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_block_cipher_get_keyspec@ +foreign import ccall safe "hs_bindgen_6d20924a0258bbd8" hs_bindgen_6d20924a0258bbd8 :: + Botan_block_cipher_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get the key length limits of this block cipher + + [__@cipher@ /(input)/__]: the object to read + + [__@out_minimum_keylength@ /(input)/__]: if non-NULL, will be set to minimum keylength of cipher + + [__@out_maximum_keylength@ /(input)/__]: if non-NULL, will be set to maximum keylength of cipher + + [__@out_keylength_modulo@ /(input)/__]: if non-NULL will be set to byte multiple of valid keys + +__C declaration:__ @botan_block_cipher_get_keyspec@ + +__defined at:__ @botan\/ffi.h:913:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_get_keyspec :: + Botan_block_cipher_t + {- ^ + + [__@cipher@ /(input)/__]: the object to read + + __C declaration:__ @cipher@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_minimum_keylength@ /(input)/__]: if non-NULL, will be set to minimum keylength of cipher + + __C declaration:__ @out_minimum_keylength@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_maximum_keylength@ /(input)/__]: if non-NULL, will be set to maximum keylength of cipher + + __C declaration:__ @out_maximum_keylength@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_keylength_modulo@ /(input)/__]: if non-NULL will be set to byte multiple of valid keys + + __C declaration:__ @out_keylength_modulo@ + -} + -> IO FC.CInt +botan_block_cipher_get_keyspec = + hs_bindgen_6d20924a0258bbd8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_init@ +foreign import ccall safe "hs_bindgen_96c56cbf80170572" hs_bindgen_96c56cbf80170572 :: + Ptr.Ptr Botan_mp_t + -> IO FC.CInt + +{-| Initialize an MPI + +__C declaration:__ @botan_mp_init@ + +__defined at:__ @botan\/ffi.h:926:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_init :: + Ptr.Ptr Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_init = hs_bindgen_96c56cbf80170572 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_destroy@ +foreign import ccall safe "hs_bindgen_b7bc7189cae3210f" hs_bindgen_b7bc7189cae3210f :: + Botan_mp_t + -> IO FC.CInt + +{-| Destroy (deallocate) an MPI + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_mp_destroy@ + +__defined at:__ @botan\/ffi.h:932:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_destroy :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_destroy = hs_bindgen_b7bc7189cae3210f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_to_hex@ +foreign import ccall safe "hs_bindgen_4f2c5bdaf9de1ce5" hs_bindgen_4f2c5bdaf9de1ce5 :: + Botan_mp_t + -> Ptr.Ptr FC.CChar + -> IO FC.CInt + +{-| Convert the MPI to a hex string. Writes up to botan_mp_num_bytes(mp)*2 + 5 bytes + + Prefer botan_mp_view_hex + +__C declaration:__ @botan_mp_to_hex@ + +__defined at:__ @botan\/ffi.h:939:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_to_hex :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> Ptr.Ptr FC.CChar + -- ^ __C declaration:__ @out@ + -> IO FC.CInt +botan_mp_to_hex = hs_bindgen_4f2c5bdaf9de1ce5 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_view_hex@ +foreign import ccall safe "hs_bindgen_db436c38eb825fc4" hs_bindgen_db436c38eb825fc4 :: + Botan_mp_t + -> Botan_view_ctx + -> Botan_view_str_fn + -> IO FC.CInt + +{-| View the hex string encoding of the MPI. + +__C declaration:__ @botan_mp_view_hex@ + +__defined at:__ @botan\/ffi.h:944:29@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_view_hex :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_str_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_mp_view_hex = hs_bindgen_db436c38eb825fc4 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_to_str@ +foreign import ccall safe "hs_bindgen_2a7f143a0c47660e" hs_bindgen_2a7f143a0c47660e :: + Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Convert the MPI to a string. Currently radix == 10 and radix == 16 are supported. + +__C declaration:__ @botan_mp_to_str@ + +__defined at:__ @botan\/ffi.h:949:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_to_str :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @radix@ + -> Ptr.Ptr FC.CChar + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_mp_to_str = hs_bindgen_2a7f143a0c47660e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_view_str@ +foreign import ccall safe "hs_bindgen_f3e67b601bcbfd8e" hs_bindgen_f3e67b601bcbfd8e :: + Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word8 + -> Botan_view_ctx + -> Botan_view_str_fn + -> IO FC.CInt + +{-| View the MPI as a radix-N integer. Currently only radix 10 and radix 16 are supported + +__C declaration:__ @botan_mp_view_str@ + +__defined at:__ @botan\/ffi.h:954:29@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_view_str :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @radix@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_str_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_mp_view_str = hs_bindgen_f3e67b601bcbfd8e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_clear@ +foreign import ccall safe "hs_bindgen_4dc266fe87c22f01" hs_bindgen_4dc266fe87c22f01 :: + Botan_mp_t + -> IO FC.CInt + +{-| Set the MPI to zero + +__C declaration:__ @botan_mp_clear@ + +__defined at:__ @botan\/ffi.h:959:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_clear = hs_bindgen_4dc266fe87c22f01 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_set_from_int@ +foreign import ccall safe "hs_bindgen_b8eaa4b6bb3c33af" hs_bindgen_b8eaa4b6bb3c33af :: + Botan_mp_t + -> FC.CInt + -> IO FC.CInt + +{-| Set the MPI value from an int + +__C declaration:__ @botan_mp_set_from_int@ + +__defined at:__ @botan\/ffi.h:964:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_set_from_int :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> FC.CInt + -- ^ __C declaration:__ @initial_value@ + -> IO FC.CInt +botan_mp_set_from_int = hs_bindgen_b8eaa4b6bb3c33af + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_set_from_mp@ +foreign import ccall safe "hs_bindgen_008dd18c6b44e4e4" hs_bindgen_008dd18c6b44e4e4 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| Set the MPI value from another MP object + +__C declaration:__ @botan_mp_set_from_mp@ + +__defined at:__ @botan\/ffi.h:969:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_set_from_mp :: + Botan_mp_t + -- ^ __C declaration:__ @dest@ + -> Botan_mp_t + -- ^ __C declaration:__ @source@ + -> IO FC.CInt +botan_mp_set_from_mp = hs_bindgen_008dd18c6b44e4e4 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_set_from_str@ +foreign import ccall safe "hs_bindgen_8a59003eb03e4438" hs_bindgen_8a59003eb03e4438 :: + Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Set the MPI value from a string + +__C declaration:__ @botan_mp_set_from_str@ + +__defined at:__ @botan\/ffi.h:974:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_set_from_str :: + Botan_mp_t + -- ^ __C declaration:__ @dest@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @str@ + -> IO FC.CInt +botan_mp_set_from_str = hs_bindgen_8a59003eb03e4438 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_set_from_radix_str@ +foreign import ccall safe "hs_bindgen_c8ae74b3ce7364c4" hs_bindgen_c8ae74b3ce7364c4 :: + Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Set the MPI value from a string with arbitrary radix. For arbitrary being 10 or 16. + +__C declaration:__ @botan_mp_set_from_radix_str@ + +__defined at:__ @botan\/ffi.h:980:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_set_from_radix_str :: + Botan_mp_t + -- ^ __C declaration:__ @dest@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @str@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @radix@ + -> IO FC.CInt +botan_mp_set_from_radix_str = + hs_bindgen_c8ae74b3ce7364c4 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_num_bits@ +foreign import ccall safe "hs_bindgen_4ecda0f5e1e98466" hs_bindgen_4ecda0f5e1e98466 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Return the number of significant bits in the MPI + +__C declaration:__ @botan_mp_num_bits@ + +__defined at:__ @botan\/ffi.h:985:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_num_bits :: + Botan_mp_t + -- ^ __C declaration:__ @n@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @bits@ + -> IO FC.CInt +botan_mp_num_bits = hs_bindgen_4ecda0f5e1e98466 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_num_bytes@ +foreign import ccall safe "hs_bindgen_cc685a18a51cd230" hs_bindgen_cc685a18a51cd230 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Return the number of significant bytes in the MPI + +__C declaration:__ @botan_mp_num_bytes@ + +__defined at:__ @botan\/ffi.h:990:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_num_bytes :: + Botan_mp_t + -- ^ __C declaration:__ @n@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @bytes@ + -> IO FC.CInt +botan_mp_num_bytes = hs_bindgen_cc685a18a51cd230 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_to_bin@ +foreign import ccall safe "hs_bindgen_4f211b10aa5e06f0" hs_bindgen_4f211b10aa5e06f0 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_bin@ + + __defined at:__ @botan\/ffi.h:997:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_to_bin :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @vec@ + -> IO FC.CInt +botan_mp_to_bin = hs_bindgen_4f211b10aa5e06f0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_view_bin@ +foreign import ccall safe "hs_bindgen_e75aa7d4b4de2709" hs_bindgen_e75aa7d4b4de2709 :: + Botan_mp_t + -> Botan_view_ctx + -> Botan_view_bin_fn + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_view_bin@ + + __defined at:__ @botan\/ffi.h:1004:29@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_view_bin :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_bin_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_mp_view_bin = hs_bindgen_e75aa7d4b4de2709 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_from_bin@ +foreign import ccall safe "hs_bindgen_2aadb7449c8b62d8" hs_bindgen_2aadb7449c8b62d8 :: + Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_mp_from_bin' +-} +botan_mp_from_bin_wrapper :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @vec@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @vec_len@ + -> IO FC.CInt +botan_mp_from_bin_wrapper = + hs_bindgen_2aadb7449c8b62d8 + +{-| __C declaration:__ @botan_mp_from_bin@ + + __defined at:__ @botan\/ffi.h:1009:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_from_bin :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @vec@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @vec_len@ + -> IO FC.CInt +botan_mp_from_bin = + \x0 -> + \x1 -> + \x2 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr3 -> + hs_bindgen_2aadb7449c8b62d8 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_to_uint32@ +foreign import ccall safe "hs_bindgen_3c17bfec33ab9f6a" hs_bindgen_3c17bfec33ab9f6a :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_uint32@ + + __defined at:__ @botan\/ffi.h:1014:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_to_uint32 :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @val@ + -> IO FC.CInt +botan_mp_to_uint32 = hs_bindgen_3c17bfec33ab9f6a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_is_positive@ +foreign import ccall safe "hs_bindgen_5952537f5c2f718e" hs_bindgen_5952537f5c2f718e :: + Botan_mp_t + -> IO FC.CInt + +{-| This function should have been named mp_is_non_negative. Returns 1 iff mp is greater than *or equal to* zero. Use botan_mp_is_negative to detect negative numbers, botan_mp_is_zero to check for zero. + +__C declaration:__ @botan_mp_is_positive@ + +__defined at:__ @botan\/ffi.h:1021:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_positive :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_is_positive = hs_bindgen_5952537f5c2f718e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_is_negative@ +foreign import ccall safe "hs_bindgen_cce10bb1417b8a2b" hs_bindgen_cce10bb1417b8a2b :: + Botan_mp_t + -> IO FC.CInt + +{-| Return 1 iff mp is less than 0 + +__C declaration:__ @botan_mp_is_negative@ + +__defined at:__ @botan\/ffi.h:1026:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_negative :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_is_negative = hs_bindgen_cce10bb1417b8a2b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_flip_sign@ +foreign import ccall safe "hs_bindgen_846625f56a235469" hs_bindgen_846625f56a235469 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_flip_sign@ + + __defined at:__ @botan\/ffi.h:1028:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_flip_sign :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_flip_sign = hs_bindgen_846625f56a235469 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_is_zero@ +foreign import ccall safe "hs_bindgen_ffab3281662d828c" hs_bindgen_ffab3281662d828c :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_zero@ + + __defined at:__ @botan\/ffi.h:1030:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_zero :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_is_zero = hs_bindgen_ffab3281662d828c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_is_odd@ +foreign import ccall safe "hs_bindgen_e9f50a61b83a8bd1" hs_bindgen_e9f50a61b83a8bd1 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_odd@ + + __defined at:__ @botan\/ffi.h:1032:76@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_odd :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_is_odd = hs_bindgen_e9f50a61b83a8bd1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_is_even@ +foreign import ccall safe "hs_bindgen_abaf274d2bb0975d" hs_bindgen_abaf274d2bb0975d :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_even@ + + __defined at:__ @botan\/ffi.h:1033:76@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_even :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_is_even = hs_bindgen_abaf274d2bb0975d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_add_u32@ +foreign import ccall safe "hs_bindgen_4bc3c38aff64609d" hs_bindgen_4bc3c38aff64609d :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add_u32@ + + __defined at:__ @botan\/ffi.h:1035:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_add_u32 :: + Botan_mp_t + -- ^ __C declaration:__ @result@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_add_u32 = hs_bindgen_4bc3c38aff64609d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_sub_u32@ +foreign import ccall safe "hs_bindgen_3c6a65f2a3669a27" hs_bindgen_3c6a65f2a3669a27 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub_u32@ + + __defined at:__ @botan\/ffi.h:1036:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_sub_u32 :: + Botan_mp_t + -- ^ __C declaration:__ @result@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_sub_u32 = hs_bindgen_3c6a65f2a3669a27 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_add@ +foreign import ccall safe "hs_bindgen_78fb5ba2c1915ba3" hs_bindgen_78fb5ba2c1915ba3 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add@ + + __defined at:__ @botan\/ffi.h:1038:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_add :: + Botan_mp_t + -- ^ __C declaration:__ @result@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_add = hs_bindgen_78fb5ba2c1915ba3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_sub@ +foreign import ccall safe "hs_bindgen_d75d74c99f8df8c2" hs_bindgen_d75d74c99f8df8c2 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub@ + + __defined at:__ @botan\/ffi.h:1039:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_sub :: + Botan_mp_t + -- ^ __C declaration:__ @result@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_sub = hs_bindgen_d75d74c99f8df8c2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_mul@ +foreign import ccall safe "hs_bindgen_096672e9675d1dd1" hs_bindgen_096672e9675d1dd1 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mul@ + + __defined at:__ @botan\/ffi.h:1040:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_mul :: + Botan_mp_t + -- ^ __C declaration:__ @result@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_mul = hs_bindgen_096672e9675d1dd1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_div@ +foreign import ccall safe "hs_bindgen_0ca55e6ac03db945" hs_bindgen_0ca55e6ac03db945 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_div@ + + __defined at:__ @botan\/ffi.h:1043:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_div :: + Botan_mp_t + -- ^ __C declaration:__ @quotient@ + -> Botan_mp_t + -- ^ __C declaration:__ @remainder@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_div = hs_bindgen_0ca55e6ac03db945 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_mod_mul@ +foreign import ccall safe "hs_bindgen_4452afa470cf6f41" hs_bindgen_4452afa470cf6f41 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mod_mul@ + + __defined at:__ @botan\/ffi.h:1046:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_mod_mul :: + Botan_mp_t + -- ^ __C declaration:__ @result@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> Botan_mp_t + -- ^ __C declaration:__ @mod@ + -> IO FC.CInt +botan_mp_mod_mul = hs_bindgen_4452afa470cf6f41 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_equal@ +foreign import ccall safe "hs_bindgen_8decc1be1b596829" hs_bindgen_8decc1be1b596829 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_equal@ + + __defined at:__ @botan\/ffi.h:1053:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_equal :: + Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_equal = hs_bindgen_8decc1be1b596829 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_cmp@ +foreign import ccall safe "hs_bindgen_374b5c10e9c48cd0" hs_bindgen_374b5c10e9c48cd0 :: + Ptr.Ptr FC.CInt + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_cmp@ + + __defined at:__ @botan\/ffi.h:1060:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_cmp :: + Ptr.Ptr FC.CInt + -- ^ __C declaration:__ @result@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_cmp = hs_bindgen_374b5c10e9c48cd0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_swap@ +foreign import ccall safe "hs_bindgen_cdd3017a82269ed6" hs_bindgen_cdd3017a82269ed6 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_swap@ + + __defined at:__ @botan\/ffi.h:1065:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_swap :: + Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_swap = hs_bindgen_cdd3017a82269ed6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_powmod@ +foreign import ccall safe "hs_bindgen_0b9a3af6da0e717a" hs_bindgen_0b9a3af6da0e717a :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_powmod@ + + __defined at:__ @botan\/ffi.h:1069:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_powmod :: + Botan_mp_t + -- ^ __C declaration:__ @out@ + -> Botan_mp_t + -- ^ __C declaration:__ @base@ + -> Botan_mp_t + -- ^ __C declaration:__ @exponent@ + -> Botan_mp_t + -- ^ __C declaration:__ @modulus@ + -> IO FC.CInt +botan_mp_powmod = hs_bindgen_0b9a3af6da0e717a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_lshift@ +foreign import ccall safe "hs_bindgen_f93c1121d6c4a15a" hs_bindgen_f93c1121d6c4a15a :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_lshift@ + + __defined at:__ @botan\/ffi.h:1071:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_lshift :: + Botan_mp_t + -- ^ __C declaration:__ @out@ + -> Botan_mp_t + -- ^ __C declaration:__ @in'@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @shift@ + -> IO FC.CInt +botan_mp_lshift = hs_bindgen_f93c1121d6c4a15a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_rshift@ +foreign import ccall safe "hs_bindgen_3fd9a9ed83ee6fa9" hs_bindgen_3fd9a9ed83ee6fa9 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rshift@ + + __defined at:__ @botan\/ffi.h:1072:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_rshift :: + Botan_mp_t + -- ^ __C declaration:__ @out@ + -> Botan_mp_t + -- ^ __C declaration:__ @in'@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @shift@ + -> IO FC.CInt +botan_mp_rshift = hs_bindgen_3fd9a9ed83ee6fa9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_mod_inverse@ +foreign import ccall safe "hs_bindgen_49ac766bd5f8cc70" hs_bindgen_49ac766bd5f8cc70 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mod_inverse@ + + __defined at:__ @botan\/ffi.h:1074:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_mod_inverse :: + Botan_mp_t + -- ^ __C declaration:__ @out@ + -> Botan_mp_t + -- ^ __C declaration:__ @in'@ + -> Botan_mp_t + -- ^ __C declaration:__ @modulus@ + -> IO FC.CInt +botan_mp_mod_inverse = hs_bindgen_49ac766bd5f8cc70 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_rand_bits@ +foreign import ccall safe "hs_bindgen_93f2b3990f775bfd" hs_bindgen_93f2b3990f775bfd :: + Botan_mp_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rand_bits@ + + __defined at:__ @botan\/ffi.h:1076:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_rand_bits :: + Botan_mp_t + -- ^ __C declaration:__ @rand_out@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @bits@ + -> IO FC.CInt +botan_mp_rand_bits = hs_bindgen_93f2b3990f775bfd + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_rand_range@ +foreign import ccall safe "hs_bindgen_781b8c36b0d5abc0" hs_bindgen_781b8c36b0d5abc0 :: + Botan_mp_t + -> Botan_rng_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rand_range@ + + __defined at:__ @botan\/ffi.h:1079:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_rand_range :: + Botan_mp_t + -- ^ __C declaration:__ @rand_out@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> Botan_mp_t + -- ^ __C declaration:__ @lower_bound@ + -> Botan_mp_t + -- ^ __C declaration:__ @upper_bound@ + -> IO FC.CInt +botan_mp_rand_range = hs_bindgen_781b8c36b0d5abc0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_gcd@ +foreign import ccall safe "hs_bindgen_efbd25160d6ac184" hs_bindgen_efbd25160d6ac184 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_gcd@ + + __defined at:__ @botan\/ffi.h:1081:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_gcd :: + Botan_mp_t + -- ^ __C declaration:__ @out@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_gcd = hs_bindgen_efbd25160d6ac184 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_is_prime@ +foreign import ccall safe "hs_bindgen_163aadcfe49733b7" hs_bindgen_163aadcfe49733b7 :: + Botan_mp_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Returns 0 if n is not prime Returns 1 if n is prime Returns negative number on error + +__C declaration:__ @botan_mp_is_prime@ + +__defined at:__ @botan\/ffi.h:1088:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_prime :: + Botan_mp_t + -- ^ __C declaration:__ @n@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @test_prob@ + -> IO FC.CInt +botan_mp_is_prime = hs_bindgen_163aadcfe49733b7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_get_bit@ +foreign import ccall safe "hs_bindgen_1d07560d67fc9dcf" hs_bindgen_1d07560d67fc9dcf :: + Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Returns 0 if specified bit of n is not set Returns 1 if specified bit of n is set Returns negative number on error + +__C declaration:__ @botan_mp_get_bit@ + +__defined at:__ @botan\/ffi.h:1095:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_get_bit :: + Botan_mp_t + -- ^ __C declaration:__ @n@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @bit@ + -> IO FC.CInt +botan_mp_get_bit = hs_bindgen_1d07560d67fc9dcf + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_set_bit@ +foreign import ccall safe "hs_bindgen_4b32807359e51131" hs_bindgen_4b32807359e51131 :: + Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Set the specified bit + +__C declaration:__ @botan_mp_set_bit@ + +__defined at:__ @botan\/ffi.h:1100:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_set_bit :: + Botan_mp_t + -- ^ __C declaration:__ @n@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @bit@ + -> IO FC.CInt +botan_mp_set_bit = hs_bindgen_4b32807359e51131 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mp_clear_bit@ +foreign import ccall safe "hs_bindgen_aa24e15ee69d718d" hs_bindgen_aa24e15ee69d718d :: + Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Clear the specified bit + +__C declaration:__ @botan_mp_clear_bit@ + +__defined at:__ @botan\/ffi.h:1105:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear_bit :: + Botan_mp_t + -- ^ __C declaration:__ @n@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @bit@ + -> IO FC.CInt +botan_mp_clear_bit = hs_bindgen_aa24e15ee69d718d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_bcrypt_generate@ +foreign import ccall safe "hs_bindgen_e831cce360ec811f" hs_bindgen_e831cce360ec811f :: + Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| Create a password hash using Bcrypt + + [__@out@ /(input)/__]: buffer holding the password hash, should be of length 64 bytes + + [__@out_len@ /(input)/__]: the desired output length in bytes + + [__@password@ /(input)/__]: the password + + [__@rng@ /(input)/__]: a random number generator + + [__@work_factor@ /(input)/__]: how much work to do to slow down guessing attacks + + [__@flags@ /(input)/__]: should be 0 in current API revision, all other uses are reserved and return BOTAN_FFI_ERROR_BAD_FLAG + + __returns:__ 0 on success, a negative value on failure + + Output is formatted bcrypt $2a$... + + TOD(Botan4) this should use char for the type of `out` + +__C declaration:__ @botan_bcrypt_generate@ + +__defined at:__ @botan\/ffi.h:1125:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_bcrypt_generate :: + Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: buffer holding the password hash, should be of length 64 bytes + + __C declaration:__ @out@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_len@ /(input)/__]: the desired output length in bytes + + __C declaration:__ @out_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@password@ /(input)/__]: the password + + __C declaration:__ @password@ + -} + -> Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: a random number generator + + __C declaration:__ @rng@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@work_factor@ /(input)/__]: how much work to do to slow down guessing attacks + + __C declaration:__ @work_factor@ + -} + -> HsBindgen.Runtime.Prelude.Word32 + {- ^ + + [__@flags@ /(input)/__]: should be 0 in current API revision, all other uses are reserved and return BOTAN_FFI_ERROR_BAD_FLAG + + __C declaration:__ @flags@ + -} + -> IO FC.CInt +botan_bcrypt_generate = hs_bindgen_e831cce360ec811f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_bcrypt_is_valid@ +foreign import ccall safe "hs_bindgen_af0aa2a0f27ca174" hs_bindgen_af0aa2a0f27ca174 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Check a previously created password hash + + [__@pass@ /(input)/__]: the password to check against + + [__@hash@ /(input)/__]: the stored hash to check against + + __returns:__ 0 if if this password/hash combination is valid, 1 if the combination is not valid (but otherwise well formed), negative on error + +__C declaration:__ @botan_bcrypt_is_valid@ + +__defined at:__ @botan\/ffi.h:1136:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_bcrypt_is_valid :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@pass@ /(input)/__]: the password to check against + + __C declaration:__ @pass@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@hash@ /(input)/__]: the stored hash to check against + + __C declaration:__ @hash@ + -} + -> IO FC.CInt +botan_bcrypt_is_valid = hs_bindgen_af0aa2a0f27ca174 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_oid_destroy@ +foreign import ccall safe "hs_bindgen_5a8a30ec5a725171" hs_bindgen_5a8a30ec5a725171 :: + Botan_asn1_oid_t + -> IO FC.CInt + +{-| + + __returns:__ negative number on error, or zero on success + +__C declaration:__ @botan_oid_destroy@ + +__defined at:__ @botan\/ffi.h:1147:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_oid_destroy :: + Botan_asn1_oid_t + -- ^ __C declaration:__ @oid@ + -> IO FC.CInt +botan_oid_destroy = hs_bindgen_5a8a30ec5a725171 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_oid_from_string@ +foreign import ccall safe "hs_bindgen_af444d30898966b1" hs_bindgen_af444d30898966b1 :: + Ptr.Ptr Botan_asn1_oid_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Create an OID from a string, either dot notation (e.g. '1.2.3.4') or a registered name (e.g. 'RSA') + + [__@oid@ /(input)/__]: handle to the resulting OID + + [__@oid_str@ /(input)/__]: the name of the OID to create + + __returns:__ negative number on error, or zero on success + +__C declaration:__ @botan_oid_from_string@ + +__defined at:__ @botan\/ffi.h:1155:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_oid_from_string :: + Ptr.Ptr Botan_asn1_oid_t + {- ^ + + [__@oid@ /(input)/__]: handle to the resulting OID + + __C declaration:__ @oid@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@oid_str@ /(input)/__]: the name of the OID to create + + __C declaration:__ @oid_str@ + -} + -> IO FC.CInt +botan_oid_from_string = hs_bindgen_af444d30898966b1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_oid_register@ +foreign import ccall safe "hs_bindgen_30620e48e9719aea" hs_bindgen_30620e48e9719aea :: + Botan_asn1_oid_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Registers an OID so that it may later be retrieved by name + + __returns:__ negative number on error, or zero on success + +__C declaration:__ @botan_oid_register@ + +__defined at:__ @botan\/ffi.h:1161:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_oid_register :: + Botan_asn1_oid_t + -- ^ __C declaration:__ @oid@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @name@ + -> IO FC.CInt +botan_oid_register = hs_bindgen_30620e48e9719aea + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_oid_view_string@ +foreign import ccall safe "hs_bindgen_e5db9582cd06ac10" hs_bindgen_e5db9582cd06ac10 :: + Botan_asn1_oid_t + -> Botan_view_ctx + -> Botan_view_str_fn + -> IO FC.CInt + +{-| View an OID in dot notation + +__C declaration:__ @botan_oid_view_string@ + +__defined at:__ @botan\/ffi.h:1166:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_oid_view_string :: + Botan_asn1_oid_t + -- ^ __C declaration:__ @oid@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_str_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_oid_view_string = hs_bindgen_e5db9582cd06ac10 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_oid_view_name@ +foreign import ccall safe "hs_bindgen_23da4c6da78b12f9" hs_bindgen_23da4c6da78b12f9 :: + Botan_asn1_oid_t + -> Botan_view_ctx + -> Botan_view_str_fn + -> IO FC.CInt + +{-| View an OIDs registered name if it exists, else its dot notation + +__C declaration:__ @botan_oid_view_name@ + +__defined at:__ @botan\/ffi.h:1171:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_oid_view_name :: + Botan_asn1_oid_t + -- ^ __C declaration:__ @oid@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_str_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_oid_view_name = hs_bindgen_23da4c6da78b12f9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_oid_equal@ +foreign import ccall safe "hs_bindgen_d62d6e3bde826b6c" hs_bindgen_d62d6e3bde826b6c :: + Botan_asn1_oid_t + -> Botan_asn1_oid_t + -> IO FC.CInt + +{-| + + __returns:__ 0 if a != b + + __returns:__ 1 if a == b + + __returns:__ negative number on error + +__C declaration:__ @botan_oid_equal@ + +__defined at:__ @botan\/ffi.h:1178:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_oid_equal :: + Botan_asn1_oid_t + -- ^ __C declaration:__ @a@ + -> Botan_asn1_oid_t + -- ^ __C declaration:__ @b@ + -> IO FC.CInt +botan_oid_equal = hs_bindgen_d62d6e3bde826b6c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_oid_cmp@ +foreign import ccall safe "hs_bindgen_531549478b4c9337" hs_bindgen_531549478b4c9337 :: + Ptr.Ptr FC.CInt + -> Botan_asn1_oid_t + -> Botan_asn1_oid_t + -> IO FC.CInt + +{-| Sets + + [__@result@ /(input)/__]: to comparison result: -1 if a < b, 0 if a == b, 1 if a > b + + __returns:__ negative number on error or zero on success + +__C declaration:__ @botan_oid_cmp@ + +__defined at:__ @botan\/ffi.h:1185:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_oid_cmp :: + Ptr.Ptr FC.CInt + {- ^ + + [__@result@ /(input)/__]: to comparison result: -1 if a < b, 0 if a == b, 1 if a > b + + __C declaration:__ @result@ + -} + -> Botan_asn1_oid_t + -- ^ __C declaration:__ @a@ + -> Botan_asn1_oid_t + -- ^ __C declaration:__ @b@ + -> IO FC.CInt +botan_oid_cmp = hs_bindgen_531549478b4c9337 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_ec_group_destroy@ +foreign import ccall safe "hs_bindgen_73c68e58b8e1ff49" hs_bindgen_73c68e58b8e1ff49 :: + Botan_ec_group_t + -> IO FC.CInt + +{-| + + __returns:__ negative number on error, or zero on success + +__C declaration:__ @botan_ec_group_destroy@ + +__defined at:__ @botan\/ffi.h:1196:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_destroy :: + Botan_ec_group_t + -- ^ __C declaration:__ @ec_group@ + -> IO FC.CInt +botan_ec_group_destroy = hs_bindgen_73c68e58b8e1ff49 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_ec_group_supports_application_specific_group@ +foreign import ccall safe "hs_bindgen_77878d8b9ae91193" hs_bindgen_77878d8b9ae91193 :: + Ptr.Ptr FC.CInt + -> IO FC.CInt + +{-| Checks if in this build configuration it is possible to register an application specific elliptic curve and sets + + [__@out@ /(input)/__]: to 1 if so, 0 otherwise + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_ec_group_supports_application_specific_group@ + +__defined at:__ @botan\/ffi.h:1203:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_supports_application_specific_group :: + Ptr.Ptr FC.CInt + {- ^ + + [__@out@ /(input)/__]: to 1 if so, 0 otherwise + + __C declaration:__ @out@ + -} + -> IO FC.CInt +botan_ec_group_supports_application_specific_group = + hs_bindgen_77878d8b9ae91193 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_ec_group_supports_named_group@ +foreign import ccall safe "hs_bindgen_cde7d4a60e0006d4" hs_bindgen_cde7d4a60e0006d4 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Ptr.Ptr FC.CInt + -> IO FC.CInt + +{-| Checks if in this build configuration botan_ec_group_from_name(group_ptr, name) will succeed and sets + + [__@out@ /(input)/__]: to 1 if so, 0 otherwise. + + __returns:__ negative number on error, or zero on success + +__C declaration:__ @botan_ec_group_supports_named_group@ + +__defined at:__ @botan\/ffi.h:1210:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_supports_named_group :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @name@ + -> Ptr.Ptr FC.CInt + {- ^ + + [__@out@ /(input)/__]: to 1 if so, 0 otherwise. + + __C declaration:__ @out@ + -} + -> IO FC.CInt +botan_ec_group_supports_named_group = + hs_bindgen_cde7d4a60e0006d4 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_ec_group_from_params@ +foreign import ccall safe "hs_bindgen_d1a1d8e9ef348ab2" hs_bindgen_d1a1d8e9ef348ab2 :: + Ptr.Ptr Botan_ec_group_t + -> Botan_asn1_oid_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| Create a new EC Group from parameters + + __/WARNING:/__ use only elliptic curve parameters that you trust + + [__@ec_group@ /(input)/__]: the new object will be placed here + + [__@p@ /(input)/__]: the elliptic curve prime (at most 521 bits) + + [__@a@ /(input)/__]: the elliptic curve a param + + [__@b@ /(input)/__]: the elliptic curve b param + + [__@base_x@ /(input)/__]: the x coordinate of the group generator + + [__@base_y@ /(input)/__]: the y coordinate of the group generator + + [__@order@ /(input)/__]: the order of the group + + __returns:__ negative number on error, or zero on success + +__C declaration:__ @botan_ec_group_from_params@ + +__defined at:__ @botan\/ffi.h:1226:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_from_params :: + Ptr.Ptr Botan_ec_group_t + {- ^ + + [__@ec_group@ /(input)/__]: the new object will be placed here + + __C declaration:__ @ec_group@ + -} + -> Botan_asn1_oid_t + -- ^ __C declaration:__ @oid@ + -> Botan_mp_t + {- ^ + + [__@p@ /(input)/__]: the elliptic curve prime (at most 521 bits) + + __C declaration:__ @p@ + -} + -> Botan_mp_t + {- ^ + + [__@a@ /(input)/__]: the elliptic curve a param + + __C declaration:__ @a@ + -} + -> Botan_mp_t + {- ^ + + [__@b@ /(input)/__]: the elliptic curve b param + + __C declaration:__ @b@ + -} + -> Botan_mp_t + {- ^ + + [__@base_x@ /(input)/__]: the x coordinate of the group generator + + __C declaration:__ @base_x@ + -} + -> Botan_mp_t + {- ^ + + [__@base_y@ /(input)/__]: the y coordinate of the group generator + + __C declaration:__ @base_y@ + -} + -> Botan_mp_t + {- ^ + + [__@order@ /(input)/__]: the order of the group + + __C declaration:__ @order@ + -} + -> IO FC.CInt +botan_ec_group_from_params = + hs_bindgen_d1a1d8e9ef348ab2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_ec_group_from_ber@ +foreign import ccall safe "hs_bindgen_862a8ae85723b6d8" hs_bindgen_862a8ae85723b6d8 :: + Ptr.Ptr Botan_ec_group_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Decode a BER encoded ECC domain parameter set + + [__@ec_group@ /(input)/__]: the new object will be placed here + + [__@ber@ /(input)/__]: encoding + + [__@ber_len@ /(input)/__]: size of the encoding in bytes + + __returns:__ negative number on error, or zero on success + +__C declaration:__ @botan_ec_group_from_ber@ + +__defined at:__ @botan\/ffi.h:1242:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_from_ber :: + Ptr.Ptr Botan_ec_group_t + {- ^ + + [__@ec_group@ /(input)/__]: the new object will be placed here + + __C declaration:__ @ec_group@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@ber@ /(input)/__]: encoding + + __C declaration:__ @ber@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@ber_len@ /(input)/__]: size of the encoding in bytes + + __C declaration:__ @ber_len@ + -} + -> IO FC.CInt +botan_ec_group_from_ber = hs_bindgen_862a8ae85723b6d8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_ec_group_from_pem@ +foreign import ccall safe "hs_bindgen_a36f5161ec9ae4c9" hs_bindgen_a36f5161ec9ae4c9 :: + Ptr.Ptr Botan_ec_group_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Initialize an EC Group from the PEM/ASN.1 encoding + + [__@ec_group@ /(input)/__]: the new object will be placed here + + [__@pem@ /(input)/__]: encoding + + __returns:__ negative number on error, or zero on success + +__C declaration:__ @botan_ec_group_from_pem@ + +__defined at:__ @botan\/ffi.h:1250:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_from_pem :: + Ptr.Ptr Botan_ec_group_t + {- ^ + + [__@ec_group@ /(input)/__]: the new object will be placed here + + __C declaration:__ @ec_group@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@pem@ /(input)/__]: encoding + + __C declaration:__ @pem@ + -} + -> IO FC.CInt +botan_ec_group_from_pem = hs_bindgen_a36f5161ec9ae4c9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_ec_group_from_oid@ +foreign import ccall safe "hs_bindgen_1313584dc40eaa68" hs_bindgen_1313584dc40eaa68 :: + Ptr.Ptr Botan_ec_group_t + -> Botan_asn1_oid_t + -> IO FC.CInt + +{-| Initialize an EC Group from a group named by an object identifier + + [__@ec_group@ /(input)/__]: the new object will be placed here + + [__@oid@ /(input)/__]: a known OID + + __returns:__ negative number on error, or zero on success + +__C declaration:__ @botan_ec_group_from_oid@ + +__defined at:__ @botan\/ffi.h:1258:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_from_oid :: + Ptr.Ptr Botan_ec_group_t + {- ^ + + [__@ec_group@ /(input)/__]: the new object will be placed here + + __C declaration:__ @ec_group@ + -} + -> Botan_asn1_oid_t + {- ^ + + [__@oid@ /(input)/__]: a known OID + + __C declaration:__ @oid@ + -} + -> IO FC.CInt +botan_ec_group_from_oid = hs_bindgen_1313584dc40eaa68 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_ec_group_from_name@ +foreign import ccall safe "hs_bindgen_9f1b14f933173a2a" hs_bindgen_9f1b14f933173a2a :: + Ptr.Ptr Botan_ec_group_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Initialize an EC Group from a common group name (eg "secp256r1") + + [__@ec_group@ /(input)/__]: the new object will be placed here + + [__@name@ /(input)/__]: a known group name + + __returns:__ negative number on error, or zero on success + +__C declaration:__ @botan_ec_group_from_name@ + +__defined at:__ @botan\/ffi.h:1266:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_from_name :: + Ptr.Ptr Botan_ec_group_t + {- ^ + + [__@ec_group@ /(input)/__]: the new object will be placed here + + __C declaration:__ @ec_group@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@name@ /(input)/__]: a known group name + + __C declaration:__ @name@ + -} + -> IO FC.CInt +botan_ec_group_from_name = + hs_bindgen_9f1b14f933173a2a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_ec_group_view_der@ +foreign import ccall safe "hs_bindgen_6462e2dea34cc509" hs_bindgen_6462e2dea34cc509 :: + Botan_ec_group_t + -> Botan_view_ctx + -> Botan_view_bin_fn + -> IO FC.CInt + +{-| View an EC Group in DER encoding + +__C declaration:__ @botan_ec_group_view_der@ + +__defined at:__ @botan\/ffi.h:1272:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_view_der :: + Botan_ec_group_t + -- ^ __C declaration:__ @ec_group@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_bin_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_ec_group_view_der = hs_bindgen_6462e2dea34cc509 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_ec_group_view_pem@ +foreign import ccall safe "hs_bindgen_a456f52ed198da2d" hs_bindgen_a456f52ed198da2d :: + Botan_ec_group_t + -> Botan_view_ctx + -> Botan_view_str_fn + -> IO FC.CInt + +{-| View an EC Group in PEM encoding + +__C declaration:__ @botan_ec_group_view_pem@ + +__defined at:__ @botan\/ffi.h:1278:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_view_pem :: + Botan_ec_group_t + -- ^ __C declaration:__ @ec_group@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_str_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_ec_group_view_pem = hs_bindgen_a456f52ed198da2d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_ec_group_get_curve_oid@ +foreign import ccall safe "hs_bindgen_dbbb8c95ef81dcc2" hs_bindgen_dbbb8c95ef81dcc2 :: + Ptr.Ptr Botan_asn1_oid_t + -> Botan_ec_group_t + -> IO FC.CInt + +{-| Get the curve OID of an EC Group + +__C declaration:__ @botan_ec_group_get_curve_oid@ + +__defined at:__ @botan\/ffi.h:1283:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_get_curve_oid :: + Ptr.Ptr Botan_asn1_oid_t + -- ^ __C declaration:__ @oid@ + -> Botan_ec_group_t + -- ^ __C declaration:__ @ec_group@ + -> IO FC.CInt +botan_ec_group_get_curve_oid = + hs_bindgen_dbbb8c95ef81dcc2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_ec_group_get_p@ +foreign import ccall safe "hs_bindgen_cfec78db72f3824a" hs_bindgen_cfec78db72f3824a :: + Ptr.Ptr Botan_mp_t + -> Botan_ec_group_t + -> IO FC.CInt + +{-| Get the prime modulus of the field + +__C declaration:__ @botan_ec_group_get_p@ + +__defined at:__ @botan\/ffi.h:1288:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_get_p :: + Ptr.Ptr Botan_mp_t + -- ^ __C declaration:__ @p@ + -> Botan_ec_group_t + -- ^ __C declaration:__ @ec_group@ + -> IO FC.CInt +botan_ec_group_get_p = hs_bindgen_cfec78db72f3824a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_ec_group_get_a@ +foreign import ccall safe "hs_bindgen_cf7c78293a1fd5a7" hs_bindgen_cf7c78293a1fd5a7 :: + Ptr.Ptr Botan_mp_t + -> Botan_ec_group_t + -> IO FC.CInt + +{-| Get the a parameter of the elliptic curve equation + +__C declaration:__ @botan_ec_group_get_a@ + +__defined at:__ @botan\/ffi.h:1293:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_get_a :: + Ptr.Ptr Botan_mp_t + -- ^ __C declaration:__ @a@ + -> Botan_ec_group_t + -- ^ __C declaration:__ @ec_group@ + -> IO FC.CInt +botan_ec_group_get_a = hs_bindgen_cf7c78293a1fd5a7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_ec_group_get_b@ +foreign import ccall safe "hs_bindgen_ec4ec060ad735dfb" hs_bindgen_ec4ec060ad735dfb :: + Ptr.Ptr Botan_mp_t + -> Botan_ec_group_t + -> IO FC.CInt + +{-| Get the b parameter of the elliptic curve equation + +__C declaration:__ @botan_ec_group_get_b@ + +__defined at:__ @botan\/ffi.h:1298:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_get_b :: + Ptr.Ptr Botan_mp_t + -- ^ __C declaration:__ @b@ + -> Botan_ec_group_t + -- ^ __C declaration:__ @ec_group@ + -> IO FC.CInt +botan_ec_group_get_b = hs_bindgen_ec4ec060ad735dfb + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_ec_group_get_g_x@ +foreign import ccall safe "hs_bindgen_43ed004b02947e3c" hs_bindgen_43ed004b02947e3c :: + Ptr.Ptr Botan_mp_t + -> Botan_ec_group_t + -> IO FC.CInt + +{-| Get the x coordinate of the base point + +__C declaration:__ @botan_ec_group_get_g_x@ + +__defined at:__ @botan\/ffi.h:1303:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_get_g_x :: + Ptr.Ptr Botan_mp_t + -- ^ __C declaration:__ @g_x@ + -> Botan_ec_group_t + -- ^ __C declaration:__ @ec_group@ + -> IO FC.CInt +botan_ec_group_get_g_x = hs_bindgen_43ed004b02947e3c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_ec_group_get_g_y@ +foreign import ccall safe "hs_bindgen_e6105c1727c5fe33" hs_bindgen_e6105c1727c5fe33 :: + Ptr.Ptr Botan_mp_t + -> Botan_ec_group_t + -> IO FC.CInt + +{-| Get the y coordinate of the base point + +__C declaration:__ @botan_ec_group_get_g_y@ + +__defined at:__ @botan\/ffi.h:1308:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_get_g_y :: + Ptr.Ptr Botan_mp_t + -- ^ __C declaration:__ @g_y@ + -> Botan_ec_group_t + -- ^ __C declaration:__ @ec_group@ + -> IO FC.CInt +botan_ec_group_get_g_y = hs_bindgen_e6105c1727c5fe33 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_ec_group_get_order@ +foreign import ccall safe "hs_bindgen_c4a3d86c1597a7dc" hs_bindgen_c4a3d86c1597a7dc :: + Ptr.Ptr Botan_mp_t + -> Botan_ec_group_t + -> IO FC.CInt + +{-| Get the order of the base point + +__C declaration:__ @botan_ec_group_get_order@ + +__defined at:__ @botan\/ffi.h:1313:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_get_order :: + Ptr.Ptr Botan_mp_t + -- ^ __C declaration:__ @order@ + -> Botan_ec_group_t + -- ^ __C declaration:__ @ec_group@ + -> IO FC.CInt +botan_ec_group_get_order = + hs_bindgen_c4a3d86c1597a7dc + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_ec_group_equal@ +foreign import ccall safe "hs_bindgen_c2d7d14a4f1e5c58" hs_bindgen_c2d7d14a4f1e5c58 :: + Botan_ec_group_t + -> Botan_ec_group_t + -> IO FC.CInt + +{-| + + __returns:__ 0 if curve1 != curve2 + + __returns:__ 1 if curve1 == curve2 + + __returns:__ negative number on error + +__C declaration:__ @botan_ec_group_equal@ + +__defined at:__ @botan\/ffi.h:1320:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_group_equal :: + Botan_ec_group_t + -- ^ __C declaration:__ @curve1@ + -> Botan_ec_group_t + -- ^ __C declaration:__ @curve2@ + -> IO FC.CInt +botan_ec_group_equal = hs_bindgen_c2d7d14a4f1e5c58 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_create@ +foreign import ccall safe "hs_bindgen_7d32d894609870e8" hs_bindgen_7d32d894609870e8 :: + Ptr.Ptr Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Botan_rng_t + -> IO FC.CInt + +{-| Create a new private key + + [__@key@ /(input)/__]: the new object will be placed here + + [__@algo_name@ /(input)/__]: something like "RSA" or "ECDSA" + + [__@algo_params@ /(input)/__]: is specific to the algorithm. For RSA, specifies the modulus bit length. For ECC is the name of the curve. + + [__@rng@ /(input)/__]: a random number generator + +__C declaration:__ @botan_privkey_create@ + +__defined at:__ @botan\/ffi.h:1336:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create :: + Ptr.Ptr Botan_privkey_t + {- ^ + + [__@key@ /(input)/__]: the new object will be placed here + + __C declaration:__ @key@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@algo_name@ /(input)/__]: something like "RSA" or "ECDSA" + + __C declaration:__ @algo_name@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@algo_params@ /(input)/__]: is specific to the algorithm. For RSA, specifies the modulus bit length. For ECC is the name of the curve. + + __C declaration:__ @algo_params@ + -} + -> Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: a random number generator + + __C declaration:__ @rng@ + -} + -> IO FC.CInt +botan_privkey_create = hs_bindgen_7d32d894609870e8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_ec_privkey_create@ +foreign import ccall safe "hs_bindgen_5ef04a39f397b64a" hs_bindgen_5ef04a39f397b64a :: + Ptr.Ptr Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Botan_ec_group_t + -> Botan_rng_t + -> IO FC.CInt + +{-| Create a new ec private key + + [__@key@ /(input)/__]: the new object will be placed here + + [__@algo_name@ /(input)/__]: something like "ECDSA" or "ECDH" + + [__@ec_group@ /(input)/__]: a (possibly application specific) elliptic curve + + [__@rng@ /(input)/__]: a random number generator + +__C declaration:__ @botan_ec_privkey_create@ + +__defined at:__ @botan\/ffi.h:1346:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ec_privkey_create :: + Ptr.Ptr Botan_privkey_t + {- ^ + + [__@key@ /(input)/__]: the new object will be placed here + + __C declaration:__ @key@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@algo_name@ /(input)/__]: something like "ECDSA" or "ECDH" + + __C declaration:__ @algo_name@ + -} + -> Botan_ec_group_t + {- ^ + + [__@ec_group@ /(input)/__]: a (possibly application specific) elliptic curve + + __C declaration:__ @ec_group@ + -} + -> Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: a random number generator + + __C declaration:__ @rng@ + -} + -> IO FC.CInt +botan_ec_privkey_create = hs_bindgen_5ef04a39f397b64a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_check_key@ +foreign import ccall safe "hs_bindgen_07a952b016c2da3f" hs_bindgen_07a952b016c2da3f :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_check_key@ + + __defined at:__ @botan\/ffi.h:1350:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_check_key :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_privkey_check_key = hs_bindgen_07a952b016c2da3f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_create_rsa@ +foreign import ccall safe "hs_bindgen_603228f94ec49da0" hs_bindgen_603228f94ec49da0 :: + Ptr.Ptr Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_create_rsa@ + + __defined at:__ @botan\/ffi.h:1353:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create_rsa :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @n_bits@ + -> IO FC.CInt +botan_privkey_create_rsa = + hs_bindgen_603228f94ec49da0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_create_ecdsa@ +foreign import ccall safe "hs_bindgen_debb18c6f685cb6d" hs_bindgen_debb18c6f685cb6d :: + Ptr.Ptr Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_create_ecdsa@ + + __defined at:__ @botan\/ffi.h:1355:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create_ecdsa :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @params@ + -> IO FC.CInt +botan_privkey_create_ecdsa = + hs_bindgen_debb18c6f685cb6d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_create_ecdh@ +foreign import ccall safe "hs_bindgen_56dd6464b5970559" hs_bindgen_56dd6464b5970559 :: + Ptr.Ptr Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_create_ecdh@ + + __defined at:__ @botan\/ffi.h:1357:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create_ecdh :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @params@ + -> IO FC.CInt +botan_privkey_create_ecdh = + hs_bindgen_56dd6464b5970559 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_create_mceliece@ +foreign import ccall safe "hs_bindgen_946ecbe665144a70" hs_bindgen_946ecbe665144a70 :: + Ptr.Ptr Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_create_mceliece@ + + __defined at:__ @botan\/ffi.h:1359:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create_mceliece :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @n@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @t@ + -> IO FC.CInt +botan_privkey_create_mceliece = + hs_bindgen_946ecbe665144a70 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_create_dh@ +foreign import ccall safe "hs_bindgen_ec6953abf189e790" hs_bindgen_ec6953abf189e790 :: + Ptr.Ptr Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_create_dh@ + + __defined at:__ @botan\/ffi.h:1361:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create_dh :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @param@ + -> IO FC.CInt +botan_privkey_create_dh = hs_bindgen_ec6953abf189e790 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_create_dsa@ +foreign import ccall safe "hs_bindgen_f71a2a2bc2b72db1" hs_bindgen_f71a2a2bc2b72db1 :: + Ptr.Ptr Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Generates DSA key pair. Gives to a caller control over key length and order of a subgroup 'q'. + + [__@key@ /(input)/__]: handler to the resulting key + + [__@rng@ /(input)/__]: initialized PRNG + + [__@pbits@ /(input)/__]: length of the key in bits. Must be between in range (1024, 3072) and multiple of 64. Bit size of the prime 'p' + + [__@qbits@ /(input)/__]: order of the subgroup. Must be in range (160, 256) and multiple of 8 + + __returns:__ BOTAN_FFI_SUCCESS Success, `key' initialized with DSA key + + __returns:__ BOTAN_FFI_ERROR_NULL_POINTER either `key' or `rng' is NULL + + __returns:__ BOTAN_FFI_ERROR_BAD_PARAMETER unexpected value for either `pbits' or `qbits' + + __returns:__ BOTAN_FFI_ERROR_NOT_IMPLEMENTED functionality not implemented + +__C declaration:__ @botan_privkey_create_dsa@ + +__defined at:__ @botan\/ffi.h:1381:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create_dsa :: + Ptr.Ptr Botan_privkey_t + {- ^ + + [__@key@ /(input)/__]: handler to the resulting key + + __C declaration:__ @key@ + -} + -> Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: initialized PRNG + + __C declaration:__ @rng@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@pbits@ /(input)/__]: length of the key in bits. Must be between in range (1024, 3072) and multiple of 64. Bit size of the prime 'p' + + __C declaration:__ @pbits@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@qbits@ /(input)/__]: order of the subgroup. Must be in range (160, 256) and multiple of 8 + + __C declaration:__ @qbits@ + -} + -> IO FC.CInt +botan_privkey_create_dsa = + hs_bindgen_f71a2a2bc2b72db1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_create_elgamal@ +foreign import ccall safe "hs_bindgen_4f3e5d9d817e0f25" hs_bindgen_4f3e5d9d817e0f25 :: + Ptr.Ptr Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Generates ElGamal key pair. Caller has a control over key length and order of a subgroup 'q'. Function is able to use two types of primes: * if pbits-1 == qbits then safe primes are used for key generation * otherwise generation uses group of prime order + + [__@key@ /(input)/__]: handler to the resulting key + + [__@rng@ /(input)/__]: initialized PRNG + + [__@pbits@ /(input)/__]: length of the key in bits. Must be at least 1024 + + [__@qbits@ /(input)/__]: order of the subgroup. Must be at least 160 + + __returns:__ BOTAN_FFI_SUCCESS Success, `key' initialized with DSA key + + __returns:__ BOTAN_FFI_ERROR_NULL_POINTER either `key' or `rng' is NULL + + __returns:__ BOTAN_FFI_ERROR_BAD_PARAMETER unexpected value for either `pbits' or `qbits' + + __returns:__ BOTAN_FFI_ERROR_NOT_IMPLEMENTED functionality not implemented + +__C declaration:__ @botan_privkey_create_elgamal@ + +__defined at:__ @botan\/ffi.h:1403:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_create_elgamal :: + Ptr.Ptr Botan_privkey_t + {- ^ + + [__@key@ /(input)/__]: handler to the resulting key + + __C declaration:__ @key@ + -} + -> Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: initialized PRNG + + __C declaration:__ @rng@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@pbits@ /(input)/__]: length of the key in bits. Must be at least 1024 + + __C declaration:__ @pbits@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@qbits@ /(input)/__]: order of the subgroup. Must be at least 160 + + __C declaration:__ @qbits@ + -} + -> IO FC.CInt +botan_privkey_create_elgamal = + hs_bindgen_4f3e5d9d817e0f25 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_load@ +foreign import ccall safe "hs_bindgen_dc71b913869d88de" hs_bindgen_dc71b913869d88de :: + Ptr.Ptr Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Pointer-based API for 'botan_privkey_load' +-} +botan_privkey_load_wrapper :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @bits@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @password@ + -> IO FC.CInt +botan_privkey_load_wrapper = + hs_bindgen_dc71b913869d88de + +{-| Input currently assumed to be PKCS #8 structure; Set password to NULL to indicate no encryption expected Starting in 2.8.0, the rng parameter is unused and may be set to null + +__C declaration:__ @botan_privkey_load@ + +__defined at:__ @botan\/ffi.h:1411:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @bits@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @password@ + -> IO FC.CInt +botan_privkey_load = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + HsBindgen.Runtime.IncompleteArray.withPtr x2 (\ptr5 -> + hs_bindgen_dc71b913869d88de x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x3 x4) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_destroy@ +foreign import ccall safe "hs_bindgen_5f78ed104dfce2dc" hs_bindgen_5f78ed104dfce2dc :: + Botan_privkey_t + -> IO FC.CInt + +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_privkey_destroy@ + +__defined at:__ @botan\/ffi.h:1416:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_destroy :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_privkey_destroy = hs_bindgen_5f78ed104dfce2dc + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_export@ +foreign import ccall safe "hs_bindgen_6cde1c7175f53040" hs_bindgen_6cde1c7175f53040 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export@ + + __defined at:__ @botan\/ffi.h:1430:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_export :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_privkey_export = hs_bindgen_6cde1c7175f53040 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_view_der@ +foreign import ccall safe "hs_bindgen_276a84dbeb71eef7" hs_bindgen_276a84dbeb71eef7 :: + Botan_privkey_t + -> Botan_view_ctx + -> Botan_view_bin_fn + -> IO FC.CInt + +{-| View the private key's DER encoding + +__C declaration:__ @botan_privkey_view_der@ + +__defined at:__ @botan\/ffi.h:1435:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_view_der :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_bin_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_privkey_view_der = hs_bindgen_276a84dbeb71eef7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_view_pem@ +foreign import ccall safe "hs_bindgen_941bb107c2609a11" hs_bindgen_941bb107c2609a11 :: + Botan_privkey_t + -> Botan_view_ctx + -> Botan_view_str_fn + -> IO FC.CInt + +{-| View the private key's PEM encoding + +__C declaration:__ @botan_privkey_view_pem@ + +__defined at:__ @botan\/ffi.h:1440:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_view_pem :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_str_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_privkey_view_pem = hs_bindgen_941bb107c2609a11 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_view_raw@ +foreign import ccall safe "hs_bindgen_c69bb1d3988e8b91" hs_bindgen_c69bb1d3988e8b91 :: + Botan_privkey_t + -> Botan_view_ctx + -> Botan_view_bin_fn + -> IO FC.CInt + +{-| View the private key's raw encoding + +__C declaration:__ @botan_privkey_view_raw@ + +__defined at:__ @botan\/ffi.h:1445:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_view_raw :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_bin_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_privkey_view_raw = hs_bindgen_c69bb1d3988e8b91 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_algo_name@ +foreign import ccall safe "hs_bindgen_db9baf875c7b3823" hs_bindgen_db9baf875c7b3823 :: + Botan_privkey_t + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_algo_name@ + + __defined at:__ @botan\/ffi.h:1447:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_algo_name :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr FC.CChar + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_privkey_algo_name = hs_bindgen_db9baf875c7b3823 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_export_encrypted@ +foreign import ccall safe "hs_bindgen_7db17f1381cef441" hs_bindgen_7db17f1381cef441 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_encrypted@ + + __defined at:__ @botan\/ffi.h:1454:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_export_encrypted :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @encryption_algo@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_privkey_export_encrypted = + hs_bindgen_7db17f1381cef441 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_export_encrypted_pbkdf_msec@ +foreign import ccall safe "hs_bindgen_857d9dc424e3010c" hs_bindgen_857d9dc424e3010c :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_encrypted_pbkdf_msec@ + + __defined at:__ @botan\/ffi.h:1470:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_export_encrypted_pbkdf_msec :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @pbkdf_msec_runtime@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @pbkdf_iterations_out@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cipher_algo@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @pbkdf_algo@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_privkey_export_encrypted_pbkdf_msec = + hs_bindgen_857d9dc424e3010c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_export_encrypted_pbkdf_iter@ +foreign import ccall safe "hs_bindgen_953f5358489d75b5" hs_bindgen_953f5358489d75b5 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_encrypted_pbkdf_iter@ + + __defined at:__ @botan\/ffi.h:1486:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_export_encrypted_pbkdf_iter :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @pbkdf_iterations@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cipher_algo@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @pbkdf_algo@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_privkey_export_encrypted_pbkdf_iter = + hs_bindgen_953f5358489d75b5 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_view_encrypted_der@ +foreign import ccall safe "hs_bindgen_b17b63c4781a4f3b" hs_bindgen_b17b63c4781a4f3b :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> Botan_view_ctx + -> Botan_view_bin_fn + -> IO FC.CInt + +{-| View the encryption of a private key (binary DER encoding) + + Set cipher_algo, pbkdf_algo to NULL to use defaults Set pbkdf_iterations to 0 to use defaults + +__C declaration:__ @botan_privkey_view_encrypted_der@ + +__defined at:__ @botan\/ffi.h:1503:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_view_encrypted_der :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cipher_algo@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @pbkdf_algo@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @pbkdf_iterations@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_bin_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_privkey_view_encrypted_der = + hs_bindgen_b17b63c4781a4f3b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_view_encrypted_der_timed@ +foreign import ccall safe "hs_bindgen_c080328b1c91543d" hs_bindgen_c080328b1c91543d :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> Botan_view_ctx + -> Botan_view_bin_fn + -> IO FC.CInt + +{-| View the encryption of a private key (binary DER encoding) + + Set cipher_algo, pbkdf_algo to NULL to use defaults + +__C declaration:__ @botan_privkey_view_encrypted_der_timed@ + +__defined at:__ @botan\/ffi.h:1518:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_view_encrypted_der_timed :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cipher_algo@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @pbkdf_algo@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @pbkdf_runtime_msec@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_bin_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_privkey_view_encrypted_der_timed = + hs_bindgen_c080328b1c91543d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_view_encrypted_pem@ +foreign import ccall safe "hs_bindgen_0061c370a51581cd" hs_bindgen_0061c370a51581cd :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> Botan_view_ctx + -> Botan_view_str_fn + -> IO FC.CInt + +{-| View the encryption of a private key (PEM encoding) + + Set cipher_algo, pbkdf_algo to NULL to use defaults Set pbkdf_iterations to 0 to use defaults + +__C declaration:__ @botan_privkey_view_encrypted_pem@ + +__defined at:__ @botan\/ffi.h:1534:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_view_encrypted_pem :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cipher_algo@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @pbkdf_algo@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @pbkdf_iterations@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_str_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_privkey_view_encrypted_pem = + hs_bindgen_0061c370a51581cd + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_view_encrypted_pem_timed@ +foreign import ccall safe "hs_bindgen_724a34975e6bac1d" hs_bindgen_724a34975e6bac1d :: + Botan_privkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> Botan_view_ctx + -> Botan_view_str_fn + -> IO FC.CInt + +{-| View the encryption of a private key (PEM encoding) + + Set cipher_algo, pbkdf_algo to NULL to use defaults + +__C declaration:__ @botan_privkey_view_encrypted_pem_timed@ + +__defined at:__ @botan\/ffi.h:1549:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_view_encrypted_pem_timed :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cipher_algo@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @pbkdf_algo@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @pbkdf_runtime_msec@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_str_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_privkey_view_encrypted_pem_timed = + hs_bindgen_724a34975e6bac1d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_load@ +foreign import ccall safe "hs_bindgen_5e0f3194350ec603" hs_bindgen_5e0f3194350ec603 :: + Ptr.Ptr Botan_pubkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pubkey_load' +-} +botan_pubkey_load_wrapper :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @bits@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> IO FC.CInt +botan_pubkey_load_wrapper = + hs_bindgen_5e0f3194350ec603 + +{-| __C declaration:__ @botan_pubkey_load@ + + __defined at:__ @botan\/ffi.h:1560:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @bits@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> IO FC.CInt +botan_pubkey_load = + \x0 -> + \x1 -> + \x2 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr3 -> + hs_bindgen_5e0f3194350ec603 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_export_pubkey@ +foreign import ccall safe "hs_bindgen_865bcf26ad1f818e" hs_bindgen_865bcf26ad1f818e :: + Ptr.Ptr Botan_pubkey_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_export_pubkey@ + + __defined at:__ @botan\/ffi.h:1562:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_export_pubkey :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @out@ + -> Botan_privkey_t + -- ^ __C declaration:__ @in'@ + -> IO FC.CInt +botan_privkey_export_pubkey = + hs_bindgen_865bcf26ad1f818e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_export@ +foreign import ccall safe "hs_bindgen_c8cf3f1a95f958a0" hs_bindgen_c8cf3f1a95f958a0 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_export@ + + __defined at:__ @botan\/ffi.h:1565:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_export :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_pubkey_export = hs_bindgen_c8cf3f1a95f958a0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_view_der@ +foreign import ccall safe "hs_bindgen_775998ab9af1e258" hs_bindgen_775998ab9af1e258 :: + Botan_pubkey_t + -> Botan_view_ctx + -> Botan_view_bin_fn + -> IO FC.CInt + +{-| View the public key's DER encoding + +__C declaration:__ @botan_pubkey_view_der@ + +__defined at:__ @botan\/ffi.h:1570:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_view_der :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_bin_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_pubkey_view_der = hs_bindgen_775998ab9af1e258 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_view_pem@ +foreign import ccall safe "hs_bindgen_ecf5648df252eed7" hs_bindgen_ecf5648df252eed7 :: + Botan_pubkey_t + -> Botan_view_ctx + -> Botan_view_str_fn + -> IO FC.CInt + +{-| View the public key's PEM encoding + +__C declaration:__ @botan_pubkey_view_pem@ + +__defined at:__ @botan\/ffi.h:1575:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_view_pem :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_str_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_pubkey_view_pem = hs_bindgen_ecf5648df252eed7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_view_raw@ +foreign import ccall safe "hs_bindgen_218f5dce06915408" hs_bindgen_218f5dce06915408 :: + Botan_pubkey_t + -> Botan_view_ctx + -> Botan_view_bin_fn + -> IO FC.CInt + +{-| View the public key's raw encoding + +__C declaration:__ @botan_pubkey_view_raw@ + +__defined at:__ @botan\/ffi.h:1580:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_view_raw :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_bin_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_pubkey_view_raw = hs_bindgen_218f5dce06915408 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_algo_name@ +foreign import ccall safe "hs_bindgen_f03718e0bec258e6" hs_bindgen_f03718e0bec258e6 :: + Botan_pubkey_t + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_algo_name@ + + __defined at:__ @botan\/ffi.h:1582:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_algo_name :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr FC.CChar + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_pubkey_algo_name = hs_bindgen_f03718e0bec258e6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_check_key@ +foreign import ccall safe "hs_bindgen_53d40f10669f3325" hs_bindgen_53d40f10669f3325 :: + Botan_pubkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| Returns 0 if key is valid, negative if invalid key or some other error + +__C declaration:__ @botan_pubkey_check_key@ + +__defined at:__ @botan\/ffi.h:1587:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_check_key :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_pubkey_check_key = hs_bindgen_53d40f10669f3325 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_estimated_strength@ +foreign import ccall safe "hs_bindgen_538e54b547b44695" hs_bindgen_538e54b547b44695 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_estimated_strength@ + + __defined at:__ @botan\/ffi.h:1589:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_estimated_strength :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @estimate@ + -> IO FC.CInt +botan_pubkey_estimated_strength = + hs_bindgen_538e54b547b44695 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_fingerprint@ +foreign import ccall safe "hs_bindgen_36d297abacf97506" hs_bindgen_36d297abacf97506 :: + Botan_pubkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_fingerprint@ + + __defined at:__ @botan\/ffi.h:1592:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_fingerprint :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hash@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_pubkey_fingerprint = + hs_bindgen_36d297abacf97506 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_destroy@ +foreign import ccall safe "hs_bindgen_836ed0a9de8599e3" hs_bindgen_836ed0a9de8599e3 :: + Botan_pubkey_t + -> IO FC.CInt + +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pubkey_destroy@ + +__defined at:__ @botan\/ffi.h:1597:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_destroy :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_destroy = hs_bindgen_836ed0a9de8599e3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_get_field@ +foreign import ccall safe "hs_bindgen_8fdaca611e714b99" hs_bindgen_8fdaca611e714b99 :: + Botan_mp_t + -> Botan_pubkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_get_field@ + + __defined at:__ @botan\/ffi.h:1602:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_get_field :: + Botan_mp_t + -- ^ __C declaration:__ @output@ + -> Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @field_name@ + -> IO FC.CInt +botan_pubkey_get_field = hs_bindgen_8fdaca611e714b99 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_get_field@ +foreign import ccall safe "hs_bindgen_83cc67581b420888" hs_bindgen_83cc67581b420888 :: + Botan_mp_t + -> Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_get_field@ + + __defined at:__ @botan\/ffi.h:1604:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_get_field :: + Botan_mp_t + -- ^ __C declaration:__ @output@ + -> Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @field_name@ + -> IO FC.CInt +botan_privkey_get_field = hs_bindgen_83cc67581b420888 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_oid@ +foreign import ccall safe "hs_bindgen_5254b1ff4366d0cb" hs_bindgen_5254b1ff4366d0cb :: + Ptr.Ptr Botan_asn1_oid_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_oid@ + + __defined at:__ @botan\/ffi.h:1610:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_oid :: + Ptr.Ptr Botan_asn1_oid_t + -- ^ __C declaration:__ @oid@ + -> Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_oid = hs_bindgen_5254b1ff4366d0cb + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_oid@ +foreign import ccall safe "hs_bindgen_8ebda0fbd4ed52a5" hs_bindgen_8ebda0fbd4ed52a5 :: + Ptr.Ptr Botan_asn1_oid_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_oid@ + + __defined at:__ @botan\/ffi.h:1613:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_oid :: + Ptr.Ptr Botan_asn1_oid_t + -- ^ __C declaration:__ @oid@ + -> Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_privkey_oid = hs_bindgen_8ebda0fbd4ed52a5 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_stateful_operation@ +foreign import ccall safe "hs_bindgen_0438e835bb3f0808" hs_bindgen_0438e835bb3f0808 :: + Botan_privkey_t + -> Ptr.Ptr FC.CInt + -> IO FC.CInt + +{-| Checks whether a key is stateful and sets + + [__@out@ /(input)/__]: to 1 if it is, or 0 if the key is not stateful + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_privkey_stateful_operation@ + +__defined at:__ @botan\/ffi.h:1620:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_stateful_operation :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr FC.CInt + {- ^ + + [__@out@ /(input)/__]: to 1 if it is, or 0 if the key is not stateful + + __C declaration:__ @out@ + -} + -> IO FC.CInt +botan_privkey_stateful_operation = + hs_bindgen_0438e835bb3f0808 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_remaining_operations@ +foreign import ccall safe "hs_bindgen_018a622dfe1a5b82" hs_bindgen_018a622dfe1a5b82 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word64 + -> IO FC.CInt + +{-| Gets information on many operations a (stateful) key has remaining and sets + + [__@out@ /(input)/__]: to that value + + __returns:__ 0 on success, a negative value on failure or if the key is not stateful + +__C declaration:__ @botan_privkey_remaining_operations@ + +__defined at:__ @botan\/ffi.h:1627:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_remaining_operations :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word64 + {- ^ + + [__@out@ /(input)/__]: to that value + + __C declaration:__ @out@ + -} + -> IO FC.CInt +botan_privkey_remaining_operations = + hs_bindgen_018a622dfe1a5b82 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_load_rsa@ +foreign import ccall safe "hs_bindgen_4558cf7114e691d0" hs_bindgen_4558cf7114e691d0 :: + Ptr.Ptr Botan_privkey_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_load_rsa@ + + __defined at:__ @botan\/ffi.h:1632:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_rsa :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @p@ + -> Botan_mp_t + -- ^ __C declaration:__ @q@ + -> Botan_mp_t + -- ^ __C declaration:__ @e@ + -> IO FC.CInt +botan_privkey_load_rsa = hs_bindgen_4558cf7114e691d0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_load_rsa_pkcs1@ +foreign import ccall safe "hs_bindgen_de3a763a77803697" hs_bindgen_de3a763a77803697 :: + Ptr.Ptr Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_privkey_load_rsa_pkcs1' +-} +botan_privkey_load_rsa_pkcs1_wrapper :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @bits@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> IO FC.CInt +botan_privkey_load_rsa_pkcs1_wrapper = + hs_bindgen_de3a763a77803697 + +{-| __C declaration:__ @botan_privkey_load_rsa_pkcs1@ + + __defined at:__ @botan\/ffi.h:1634:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_rsa_pkcs1 :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @bits@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> IO FC.CInt +botan_privkey_load_rsa_pkcs1 = + \x0 -> + \x1 -> + \x2 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr3 -> + hs_bindgen_de3a763a77803697 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_rsa_get_p@ +foreign import ccall safe "hs_bindgen_8c6e347bc50d9b01" hs_bindgen_8c6e347bc50d9b01 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_p@ + + __defined at:__ @botan\/ffi.h:1637:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_rsa_get_p :: + Botan_mp_t + -- ^ __C declaration:__ @p@ + -> Botan_privkey_t + -- ^ __C declaration:__ @rsa_key@ + -> IO FC.CInt +botan_privkey_rsa_get_p = hs_bindgen_8c6e347bc50d9b01 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_rsa_get_q@ +foreign import ccall safe "hs_bindgen_45d0d27d9ee30750" hs_bindgen_45d0d27d9ee30750 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_q@ + + __defined at:__ @botan\/ffi.h:1639:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_rsa_get_q :: + Botan_mp_t + -- ^ __C declaration:__ @q@ + -> Botan_privkey_t + -- ^ __C declaration:__ @rsa_key@ + -> IO FC.CInt +botan_privkey_rsa_get_q = hs_bindgen_45d0d27d9ee30750 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_rsa_get_d@ +foreign import ccall safe "hs_bindgen_f1c0410daf338f85" hs_bindgen_f1c0410daf338f85 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_d@ + + __defined at:__ @botan\/ffi.h:1641:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_rsa_get_d :: + Botan_mp_t + -- ^ __C declaration:__ @d@ + -> Botan_privkey_t + -- ^ __C declaration:__ @rsa_key@ + -> IO FC.CInt +botan_privkey_rsa_get_d = hs_bindgen_f1c0410daf338f85 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_rsa_get_n@ +foreign import ccall safe "hs_bindgen_540e5a1df4b83792" hs_bindgen_540e5a1df4b83792 :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1643:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_rsa_get_n :: + Botan_mp_t + -- ^ __C declaration:__ @n@ + -> Botan_privkey_t + -- ^ __C declaration:__ @rsa_key@ + -> IO FC.CInt +botan_privkey_rsa_get_n = hs_bindgen_540e5a1df4b83792 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_rsa_get_e@ +foreign import ccall safe "hs_bindgen_b00ad968be20663b" hs_bindgen_b00ad968be20663b :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1645:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_rsa_get_e :: + Botan_mp_t + -- ^ __C declaration:__ @e@ + -> Botan_privkey_t + -- ^ __C declaration:__ @rsa_key@ + -> IO FC.CInt +botan_privkey_rsa_get_e = hs_bindgen_b00ad968be20663b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_rsa_get_privkey@ +foreign import ccall safe "hs_bindgen_7541ed07d1ee2383" hs_bindgen_7541ed07d1ee2383 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_rsa_get_privkey@ + + __defined at:__ @botan\/ffi.h:1648:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_rsa_get_privkey :: + Botan_privkey_t + -- ^ __C declaration:__ @rsa_key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_privkey_rsa_get_privkey = + hs_bindgen_7541ed07d1ee2383 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_load_rsa@ +foreign import ccall safe "hs_bindgen_8a480b79c2f776ba" hs_bindgen_8a480b79c2f776ba :: + Ptr.Ptr Botan_pubkey_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_load_rsa@ + + __defined at:__ @botan\/ffi.h:1650:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_rsa :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @n@ + -> Botan_mp_t + -- ^ __C declaration:__ @e@ + -> IO FC.CInt +botan_pubkey_load_rsa = hs_bindgen_8a480b79c2f776ba + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_rsa_get_e@ +foreign import ccall safe "hs_bindgen_ffea902a25d8492d" hs_bindgen_ffea902a25d8492d :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_e@ + + __defined at:__ @botan\/ffi.h:1653:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_rsa_get_e :: + Botan_mp_t + -- ^ __C declaration:__ @e@ + -> Botan_pubkey_t + -- ^ __C declaration:__ @rsa_key@ + -> IO FC.CInt +botan_pubkey_rsa_get_e = hs_bindgen_ffea902a25d8492d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_rsa_get_n@ +foreign import ccall safe "hs_bindgen_5544c01c4c522c69" hs_bindgen_5544c01c4c522c69 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_rsa_get_n@ + + __defined at:__ @botan\/ffi.h:1655:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_rsa_get_n :: + Botan_mp_t + -- ^ __C declaration:__ @n@ + -> Botan_pubkey_t + -- ^ __C declaration:__ @rsa_key@ + -> IO FC.CInt +botan_pubkey_rsa_get_n = hs_bindgen_5544c01c4c522c69 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_load_dsa@ +foreign import ccall safe "hs_bindgen_92ca0d5f22217666" hs_bindgen_92ca0d5f22217666 :: + Ptr.Ptr Botan_privkey_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_load_dsa@ + + __defined at:__ @botan\/ffi.h:1661:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_dsa :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @p@ + -> Botan_mp_t + -- ^ __C declaration:__ @q@ + -> Botan_mp_t + -- ^ __C declaration:__ @g@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> IO FC.CInt +botan_privkey_load_dsa = hs_bindgen_92ca0d5f22217666 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_load_dsa@ +foreign import ccall safe "hs_bindgen_a8f7f6bc293cfb1c" hs_bindgen_a8f7f6bc293cfb1c :: + Ptr.Ptr Botan_pubkey_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_load_dsa@ + + __defined at:__ @botan\/ffi.h:1664:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_dsa :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @p@ + -> Botan_mp_t + -- ^ __C declaration:__ @q@ + -> Botan_mp_t + -- ^ __C declaration:__ @g@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_pubkey_load_dsa = hs_bindgen_a8f7f6bc293cfb1c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_dsa_get_x@ +foreign import ccall safe "hs_bindgen_20b20cce22c9d79c" hs_bindgen_20b20cce22c9d79c :: + Botan_mp_t + -> Botan_privkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_dsa_get_x@ + + __defined at:__ @botan\/ffi.h:1667:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_dsa_get_x :: + Botan_mp_t + -- ^ __C declaration:__ @n@ + -> Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_privkey_dsa_get_x = hs_bindgen_20b20cce22c9d79c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_dsa_get_p@ +foreign import ccall safe "hs_bindgen_486bcee2f452535d" hs_bindgen_486bcee2f452535d :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_p@ + + __defined at:__ @botan\/ffi.h:1670:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_dsa_get_p :: + Botan_mp_t + -- ^ __C declaration:__ @p@ + -> Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_dsa_get_p = hs_bindgen_486bcee2f452535d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_dsa_get_q@ +foreign import ccall safe "hs_bindgen_be65a92628c3aeb8" hs_bindgen_be65a92628c3aeb8 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_q@ + + __defined at:__ @botan\/ffi.h:1672:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_dsa_get_q :: + Botan_mp_t + -- ^ __C declaration:__ @q@ + -> Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_dsa_get_q = hs_bindgen_be65a92628c3aeb8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_dsa_get_g@ +foreign import ccall safe "hs_bindgen_7e373a95a4d132df" hs_bindgen_7e373a95a4d132df :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_g@ + + __defined at:__ @botan\/ffi.h:1674:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_dsa_get_g :: + Botan_mp_t + -- ^ __C declaration:__ @d@ + -> Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_dsa_get_g = hs_bindgen_7e373a95a4d132df + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_dsa_get_y@ +foreign import ccall safe "hs_bindgen_cd907a6937d58555" hs_bindgen_cd907a6937d58555 :: + Botan_mp_t + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_dsa_get_y@ + + __defined at:__ @botan\/ffi.h:1676:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_dsa_get_y :: + Botan_mp_t + -- ^ __C declaration:__ @y@ + -> Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_dsa_get_y = hs_bindgen_cd907a6937d58555 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_load_dh@ +foreign import ccall safe "hs_bindgen_68bc7511a25290e6" hs_bindgen_68bc7511a25290e6 :: + Ptr.Ptr Botan_privkey_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_load_dh@ + + __defined at:__ @botan\/ffi.h:1691:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_dh :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @p@ + -> Botan_mp_t + -- ^ __C declaration:__ @g@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> IO FC.CInt +botan_privkey_load_dh = hs_bindgen_68bc7511a25290e6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_load_dh@ +foreign import ccall safe "hs_bindgen_78c72a52e1c27faa" hs_bindgen_78c72a52e1c27faa :: + Ptr.Ptr Botan_pubkey_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| Loads Diffie Hellman public key + + [__@key@ /(input)/__]: variable populated with key material + + [__@p@ /(input)/__]: prime order of a Z_p group + + [__@g@ /(input)/__]: group generator + + [__@y@ /(input)/__]: public key + + __pre condition:__ key is NULL on input + + __post condition:__ function allocates memory and assigns to `key' + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_pubkey_load_dh@ + +__defined at:__ @botan\/ffi.h:1705:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_dh :: + Ptr.Ptr Botan_pubkey_t + {- ^ + + [__@key@ /(input)/__]: variable populated with key material + + __C declaration:__ @key@ + -} + -> Botan_mp_t + {- ^ + + [__@p@ /(input)/__]: prime order of a Z_p group + + __C declaration:__ @p@ + -} + -> Botan_mp_t + {- ^ + + [__@g@ /(input)/__]: group generator + + __C declaration:__ @g@ + -} + -> Botan_mp_t + {- ^ + + [__@y@ /(input)/__]: public key + + __C declaration:__ @y@ + -} + -> IO FC.CInt +botan_pubkey_load_dh = hs_bindgen_78c72a52e1c27faa + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_load_elgamal@ +foreign import ccall safe "hs_bindgen_fb8a55d8270d035a" hs_bindgen_fb8a55d8270d035a :: + Ptr.Ptr Botan_pubkey_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| Loads ElGamal public key + + [__@key@ /(input)/__]: variable populated with key material + + [__@p@ /(input)/__]: prime order of a Z_p group + + [__@g@ /(input)/__]: group generator + + [__@y@ /(input)/__]: public key + + __pre condition:__ key is NULL on input + + __post condition:__ function allocates memory and assigns to `key' + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_pubkey_load_elgamal@ + +__defined at:__ @botan\/ffi.h:1723:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_elgamal :: + Ptr.Ptr Botan_pubkey_t + {- ^ + + [__@key@ /(input)/__]: variable populated with key material + + __C declaration:__ @key@ + -} + -> Botan_mp_t + {- ^ + + [__@p@ /(input)/__]: prime order of a Z_p group + + __C declaration:__ @p@ + -} + -> Botan_mp_t + {- ^ + + [__@g@ /(input)/__]: group generator + + __C declaration:__ @g@ + -} + -> Botan_mp_t + {- ^ + + [__@y@ /(input)/__]: public key + + __C declaration:__ @y@ + -} + -> IO FC.CInt +botan_pubkey_load_elgamal = + hs_bindgen_fb8a55d8270d035a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_load_elgamal@ +foreign import ccall safe "hs_bindgen_76d98887b1fdfa9f" hs_bindgen_76d98887b1fdfa9f :: + Ptr.Ptr Botan_privkey_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| Loads ElGamal private key + + [__@key@ /(input)/__]: variable populated with key material + + [__@p@ /(input)/__]: prime order of a Z_p group + + [__@g@ /(input)/__]: group generator + + [__@x@ /(input)/__]: private key + + __pre condition:__ key is NULL on input + + __post condition:__ function allocates memory and assigns to `key' + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_privkey_load_elgamal@ + +__defined at:__ @botan\/ffi.h:1738:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_elgamal :: + Ptr.Ptr Botan_privkey_t + {- ^ + + [__@key@ /(input)/__]: variable populated with key material + + __C declaration:__ @key@ + -} + -> Botan_mp_t + {- ^ + + [__@p@ /(input)/__]: prime order of a Z_p group + + __C declaration:__ @p@ + -} + -> Botan_mp_t + {- ^ + + [__@g@ /(input)/__]: group generator + + __C declaration:__ @g@ + -} + -> Botan_mp_t + {- ^ + + [__@x@ /(input)/__]: private key + + __C declaration:__ @x@ + -} + -> IO FC.CInt +botan_privkey_load_elgamal = + hs_bindgen_76d98887b1fdfa9f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_load_ed25519@ +foreign import ccall safe "hs_bindgen_25f8e61028f0c621" hs_bindgen_25f8e61028f0c621 :: + Ptr.Ptr Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| Pointer-based API for 'botan_privkey_load_ed25519' +-} +botan_privkey_load_ed25519_wrapper :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @privkey@ + -> IO FC.CInt +botan_privkey_load_ed25519_wrapper = + hs_bindgen_25f8e61028f0c621 + +{-| __C declaration:__ @botan_privkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1744:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_ed25519 :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> (HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @privkey@ + -> IO FC.CInt +botan_privkey_load_ed25519 = + \x0 -> + \x1 -> + HsBindgen.Runtime.ConstantArray.withPtr x1 (\ptr2 -> + hs_bindgen_25f8e61028f0c621 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_load_ed25519@ +foreign import ccall safe "hs_bindgen_e07b11e9bdf1f2ba" hs_bindgen_e07b11e9bdf1f2ba :: + Ptr.Ptr Botan_pubkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pubkey_load_ed25519' +-} +botan_pubkey_load_ed25519_wrapper :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> IO FC.CInt +botan_pubkey_load_ed25519_wrapper = + hs_bindgen_e07b11e9bdf1f2ba + +{-| __C declaration:__ @botan_pubkey_load_ed25519@ + + __defined at:__ @botan\/ffi.h:1746:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_ed25519 :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> (HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> IO FC.CInt +botan_pubkey_load_ed25519 = + \x0 -> + \x1 -> + HsBindgen.Runtime.ConstantArray.withPtr x1 (\ptr2 -> + hs_bindgen_e07b11e9bdf1f2ba x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_ed25519_get_privkey@ +foreign import ccall safe "hs_bindgen_0aead06041190518" hs_bindgen_0aead06041190518 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1749:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_ed25519_get_privkey :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @output@ + -> IO FC.CInt +botan_privkey_ed25519_get_privkey = + hs_bindgen_0aead06041190518 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_ed25519_get_pubkey@ +foreign import ccall safe "hs_bindgen_e917d88be838ce2a" hs_bindgen_e917d88be838ce2a :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1752:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_ed25519_get_pubkey :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> IO FC.CInt +botan_pubkey_ed25519_get_pubkey = + hs_bindgen_e917d88be838ce2a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_load_ed448@ +foreign import ccall safe "hs_bindgen_e6ad0fdb795a43dc" hs_bindgen_e6ad0fdb795a43dc :: + Ptr.Ptr Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| Pointer-based API for 'botan_privkey_load_ed448' +-} +botan_privkey_load_ed448_wrapper :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @privkey@ + -> IO FC.CInt +botan_privkey_load_ed448_wrapper = + hs_bindgen_e6ad0fdb795a43dc + +{-| __C declaration:__ @botan_privkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1758:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_ed448 :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> (HsBindgen.Runtime.ConstantArray.ConstantArray 57) HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @privkey@ + -> IO FC.CInt +botan_privkey_load_ed448 = + \x0 -> + \x1 -> + HsBindgen.Runtime.ConstantArray.withPtr x1 (\ptr2 -> + hs_bindgen_e6ad0fdb795a43dc x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_load_ed448@ +foreign import ccall safe "hs_bindgen_edf18d7668656016" hs_bindgen_edf18d7668656016 :: + Ptr.Ptr Botan_pubkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pubkey_load_ed448' +-} +botan_pubkey_load_ed448_wrapper :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> IO FC.CInt +botan_pubkey_load_ed448_wrapper = + hs_bindgen_edf18d7668656016 + +{-| __C declaration:__ @botan_pubkey_load_ed448@ + + __defined at:__ @botan\/ffi.h:1760:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_ed448 :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> (HsBindgen.Runtime.ConstantArray.ConstantArray 57) HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> IO FC.CInt +botan_pubkey_load_ed448 = + \x0 -> + \x1 -> + HsBindgen.Runtime.ConstantArray.withPtr x1 (\ptr2 -> + hs_bindgen_edf18d7668656016 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_ed448_get_privkey@ +foreign import ccall safe "hs_bindgen_d6a6b44e49e9c9af" hs_bindgen_d6a6b44e49e9c9af :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_ed448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1763:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_ed448_get_privkey :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @output@ + -> IO FC.CInt +botan_privkey_ed448_get_privkey = + hs_bindgen_d6a6b44e49e9c9af + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_ed448_get_pubkey@ +foreign import ccall safe "hs_bindgen_3ddf94b65636c7d1" hs_bindgen_3ddf94b65636c7d1 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ed448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1766:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_ed448_get_pubkey :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> IO FC.CInt +botan_pubkey_ed448_get_pubkey = + hs_bindgen_3ddf94b65636c7d1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_load_x25519@ +foreign import ccall safe "hs_bindgen_a50da55663b862ce" hs_bindgen_a50da55663b862ce :: + Ptr.Ptr Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| Pointer-based API for 'botan_privkey_load_x25519' +-} +botan_privkey_load_x25519_wrapper :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @privkey@ + -> IO FC.CInt +botan_privkey_load_x25519_wrapper = + hs_bindgen_a50da55663b862ce + +{-| __C declaration:__ @botan_privkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1772:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_x25519 :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> (HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @privkey@ + -> IO FC.CInt +botan_privkey_load_x25519 = + \x0 -> + \x1 -> + HsBindgen.Runtime.ConstantArray.withPtr x1 (\ptr2 -> + hs_bindgen_a50da55663b862ce x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_load_x25519@ +foreign import ccall safe "hs_bindgen_814d1e12ebe4f1ce" hs_bindgen_814d1e12ebe4f1ce :: + Ptr.Ptr Botan_pubkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pubkey_load_x25519' +-} +botan_pubkey_load_x25519_wrapper :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> IO FC.CInt +botan_pubkey_load_x25519_wrapper = + hs_bindgen_814d1e12ebe4f1ce + +{-| __C declaration:__ @botan_pubkey_load_x25519@ + + __defined at:__ @botan\/ffi.h:1774:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_x25519 :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> (HsBindgen.Runtime.ConstantArray.ConstantArray 32) HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> IO FC.CInt +botan_pubkey_load_x25519 = + \x0 -> + \x1 -> + HsBindgen.Runtime.ConstantArray.withPtr x1 (\ptr2 -> + hs_bindgen_814d1e12ebe4f1ce x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_x25519_get_privkey@ +foreign import ccall safe "hs_bindgen_4aa388bec83151d1" hs_bindgen_4aa388bec83151d1 :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x25519_get_privkey@ + + __defined at:__ @botan\/ffi.h:1777:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_x25519_get_privkey :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @output@ + -> IO FC.CInt +botan_privkey_x25519_get_privkey = + hs_bindgen_4aa388bec83151d1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_x25519_get_pubkey@ +foreign import ccall safe "hs_bindgen_004e5597e3da8280" hs_bindgen_004e5597e3da8280 :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x25519_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1780:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_x25519_get_pubkey :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> IO FC.CInt +botan_pubkey_x25519_get_pubkey = + hs_bindgen_004e5597e3da8280 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_load_x448@ +foreign import ccall safe "hs_bindgen_8ee775c7edb7b557" hs_bindgen_8ee775c7edb7b557 :: + Ptr.Ptr Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| Pointer-based API for 'botan_privkey_load_x448' +-} +botan_privkey_load_x448_wrapper :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @privkey@ + -> IO FC.CInt +botan_privkey_load_x448_wrapper = + hs_bindgen_8ee775c7edb7b557 + +{-| __C declaration:__ @botan_privkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1786:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_x448 :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> (HsBindgen.Runtime.ConstantArray.ConstantArray 56) HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @privkey@ + -> IO FC.CInt +botan_privkey_load_x448 = + \x0 -> + \x1 -> + HsBindgen.Runtime.ConstantArray.withPtr x1 (\ptr2 -> + hs_bindgen_8ee775c7edb7b557 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_load_x448@ +foreign import ccall safe "hs_bindgen_b3ba7d3d7438bee4" hs_bindgen_b3ba7d3d7438bee4 :: + Ptr.Ptr Botan_pubkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pubkey_load_x448' +-} +botan_pubkey_load_x448_wrapper :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> IO FC.CInt +botan_pubkey_load_x448_wrapper = + hs_bindgen_b3ba7d3d7438bee4 + +{-| __C declaration:__ @botan_pubkey_load_x448@ + + __defined at:__ @botan\/ffi.h:1788:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_x448 :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> (HsBindgen.Runtime.ConstantArray.ConstantArray 56) HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> IO FC.CInt +botan_pubkey_load_x448 = + \x0 -> + \x1 -> + HsBindgen.Runtime.ConstantArray.withPtr x1 (\ptr2 -> + hs_bindgen_b3ba7d3d7438bee4 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr2)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_x448_get_privkey@ +foreign import ccall safe "hs_bindgen_12f07c7ce0c7d5ea" hs_bindgen_12f07c7ce0c7d5ea :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_x448_get_privkey@ + + __defined at:__ @botan\/ffi.h:1791:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_x448_get_privkey :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @output@ + -> IO FC.CInt +botan_privkey_x448_get_privkey = + hs_bindgen_12f07c7ce0c7d5ea + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_x448_get_pubkey@ +foreign import ccall safe "hs_bindgen_20d5ff7580e96d7c" hs_bindgen_20d5ff7580e96d7c :: + Botan_pubkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_x448_get_pubkey@ + + __defined at:__ @botan\/ffi.h:1794:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_x448_get_pubkey :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> IO FC.CInt +botan_pubkey_x448_get_pubkey = + hs_bindgen_20d5ff7580e96d7c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_load_ml_dsa@ +foreign import ccall safe "hs_bindgen_15eae39fc62c8a3d" hs_bindgen_15eae39fc62c8a3d :: + Ptr.Ptr Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Pointer-based API for 'botan_privkey_load_ml_dsa' +-} +botan_privkey_load_ml_dsa_wrapper :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @privkey@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @mldsa_mode@ + -> IO FC.CInt +botan_privkey_load_ml_dsa_wrapper = + hs_bindgen_15eae39fc62c8a3d + +{-| __C declaration:__ @botan_privkey_load_ml_dsa@ + + __defined at:__ @botan\/ffi.h:1801:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_ml_dsa :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @privkey@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @mldsa_mode@ + -> IO FC.CInt +botan_privkey_load_ml_dsa = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr4 -> + hs_bindgen_15eae39fc62c8a3d x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_load_ml_dsa@ +foreign import ccall safe "hs_bindgen_2d01810e83aa8a0b" hs_bindgen_2d01810e83aa8a0b :: + Ptr.Ptr Botan_pubkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pubkey_load_ml_dsa' +-} +botan_pubkey_load_ml_dsa_wrapper :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @mldsa_mode@ + -> IO FC.CInt +botan_pubkey_load_ml_dsa_wrapper = + hs_bindgen_2d01810e83aa8a0b + +{-| __C declaration:__ @botan_pubkey_load_ml_dsa@ + + __defined at:__ @botan\/ffi.h:1804:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_ml_dsa :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @mldsa_mode@ + -> IO FC.CInt +botan_pubkey_load_ml_dsa = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr4 -> + hs_bindgen_2d01810e83aa8a0b x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_load_kyber@ +foreign import ccall safe "hs_bindgen_3c920a482cea76a0" hs_bindgen_3c920a482cea76a0 :: + Ptr.Ptr Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_privkey_load_kyber' +-} +botan_privkey_load_kyber_wrapper :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @privkey@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> IO FC.CInt +botan_privkey_load_kyber_wrapper = + hs_bindgen_3c920a482cea76a0 + +{-| __C declaration:__ @botan_privkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1815:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_kyber :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @privkey@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> IO FC.CInt +botan_privkey_load_kyber = + \x0 -> + \x1 -> + \x2 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr3 -> + hs_bindgen_3c920a482cea76a0 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_load_kyber@ +foreign import ccall safe "hs_bindgen_c64a6e3464873893" hs_bindgen_c64a6e3464873893 :: + Ptr.Ptr Botan_pubkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pubkey_load_kyber' +-} +botan_pubkey_load_kyber_wrapper :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> IO FC.CInt +botan_pubkey_load_kyber_wrapper = + hs_bindgen_c64a6e3464873893 + +{-| __C declaration:__ @botan_pubkey_load_kyber@ + + __defined at:__ @botan\/ffi.h:1818:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_kyber :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> IO FC.CInt +botan_pubkey_load_kyber = + \x0 -> + \x1 -> + \x2 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr3 -> + hs_bindgen_c64a6e3464873893 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_view_kyber_raw_key@ +foreign import ccall safe "hs_bindgen_54fb30c6fd1e5b2e" hs_bindgen_54fb30c6fd1e5b2e :: + Botan_privkey_t + -> Botan_view_ctx + -> Botan_view_bin_fn + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_view_kyber_raw_key@ + + __defined at:__ @botan\/ffi.h:1822:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_view_kyber_raw_key :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_bin_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_privkey_view_kyber_raw_key = + hs_bindgen_54fb30c6fd1e5b2e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_view_kyber_raw_key@ +foreign import ccall safe "hs_bindgen_575bf53367494b77" hs_bindgen_575bf53367494b77 :: + Botan_pubkey_t + -> Botan_view_ctx + -> Botan_view_bin_fn + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_view_kyber_raw_key@ + + __defined at:__ @botan\/ffi.h:1826:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_view_kyber_raw_key :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_bin_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_pubkey_view_kyber_raw_key = + hs_bindgen_575bf53367494b77 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_load_frodokem@ +foreign import ccall safe "hs_bindgen_b104bee8b06dcc13" hs_bindgen_b104bee8b06dcc13 :: + Ptr.Ptr Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Pointer-based API for 'botan_privkey_load_frodokem' +-} +botan_privkey_load_frodokem_wrapper :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @privkey@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @frodo_mode@ + -> IO FC.CInt +botan_privkey_load_frodokem_wrapper = + hs_bindgen_b104bee8b06dcc13 + +{-| Algorithm specific key operation: FrodoKEM + +__C declaration:__ @botan_privkey_load_frodokem@ + +__defined at:__ @botan\/ffi.h:1833:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_frodokem :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @privkey@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @frodo_mode@ + -> IO FC.CInt +botan_privkey_load_frodokem = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr4 -> + hs_bindgen_b104bee8b06dcc13 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_load_frodokem@ +foreign import ccall safe "hs_bindgen_b78db855d46bc6be" hs_bindgen_b78db855d46bc6be :: + Ptr.Ptr Botan_pubkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pubkey_load_frodokem' +-} +botan_pubkey_load_frodokem_wrapper :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @frodo_mode@ + -> IO FC.CInt +botan_pubkey_load_frodokem_wrapper = + hs_bindgen_b78db855d46bc6be + +{-| __C declaration:__ @botan_pubkey_load_frodokem@ + + __defined at:__ @botan\/ffi.h:1836:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_frodokem :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @frodo_mode@ + -> IO FC.CInt +botan_pubkey_load_frodokem = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr4 -> + hs_bindgen_b78db855d46bc6be x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_load_classic_mceliece@ +foreign import ccall safe "hs_bindgen_6fb5a6f17de8a52e" hs_bindgen_6fb5a6f17de8a52e :: + Ptr.Ptr Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Pointer-based API for 'botan_privkey_load_classic_mceliece' +-} +botan_privkey_load_classic_mceliece_wrapper :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @privkey@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cmce_mode@ + -> IO FC.CInt +botan_privkey_load_classic_mceliece_wrapper = + hs_bindgen_6fb5a6f17de8a52e + +{-| Algorithm specific key operation: Classic McEliece + +__C declaration:__ @botan_privkey_load_classic_mceliece@ + +__defined at:__ @botan\/ffi.h:1843:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_classic_mceliece :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @privkey@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cmce_mode@ + -> IO FC.CInt +botan_privkey_load_classic_mceliece = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr4 -> + hs_bindgen_6fb5a6f17de8a52e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_load_classic_mceliece@ +foreign import ccall safe "hs_bindgen_4f1916d57923ded5" hs_bindgen_4f1916d57923ded5 :: + Ptr.Ptr Botan_pubkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pubkey_load_classic_mceliece' +-} +botan_pubkey_load_classic_mceliece_wrapper :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cmce_mode@ + -> IO FC.CInt +botan_pubkey_load_classic_mceliece_wrapper = + hs_bindgen_4f1916d57923ded5 + +{-| __C declaration:__ @botan_pubkey_load_classic_mceliece@ + + __defined at:__ @botan\/ffi.h:1849:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_classic_mceliece :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cmce_mode@ + -> IO FC.CInt +botan_pubkey_load_classic_mceliece = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr4 -> + hs_bindgen_4f1916d57923ded5 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_load_ml_kem@ +foreign import ccall safe "hs_bindgen_8c3816880cd32c42" hs_bindgen_8c3816880cd32c42 :: + Ptr.Ptr Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Pointer-based API for 'botan_privkey_load_ml_kem' +-} +botan_privkey_load_ml_kem_wrapper :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @privkey@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @mlkem_mode@ + -> IO FC.CInt +botan_privkey_load_ml_kem_wrapper = + hs_bindgen_8c3816880cd32c42 + +{-| __C declaration:__ @botan_privkey_load_ml_kem@ + + __defined at:__ @botan\/ffi.h:1859:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_ml_kem :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @privkey@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @mlkem_mode@ + -> IO FC.CInt +botan_privkey_load_ml_kem = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr4 -> + hs_bindgen_8c3816880cd32c42 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_load_ml_kem@ +foreign import ccall safe "hs_bindgen_b3db615ea2f674d6" hs_bindgen_b3db615ea2f674d6 :: + Ptr.Ptr Botan_pubkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pubkey_load_ml_kem' +-} +botan_pubkey_load_ml_kem_wrapper :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @mlkem_mode@ + -> IO FC.CInt +botan_pubkey_load_ml_kem_wrapper = + hs_bindgen_b3db615ea2f674d6 + +{-| __C declaration:__ @botan_pubkey_load_ml_kem@ + + __defined at:__ @botan\/ffi.h:1862:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_ml_kem :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @mlkem_mode@ + -> IO FC.CInt +botan_pubkey_load_ml_kem = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr4 -> + hs_bindgen_b3db615ea2f674d6 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_load_slh_dsa@ +foreign import ccall safe "hs_bindgen_a53c3acb438deed8" hs_bindgen_a53c3acb438deed8 :: + Ptr.Ptr Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Pointer-based API for 'botan_privkey_load_slh_dsa' +-} +botan_privkey_load_slh_dsa_wrapper :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @privkey@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @slhdsa_mode@ + -> IO FC.CInt +botan_privkey_load_slh_dsa_wrapper = + hs_bindgen_a53c3acb438deed8 + +{-| __C declaration:__ @botan_privkey_load_slh_dsa@ + + __defined at:__ @botan\/ffi.h:1869:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_slh_dsa :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @privkey@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @slhdsa_mode@ + -> IO FC.CInt +botan_privkey_load_slh_dsa = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr4 -> + hs_bindgen_a53c3acb438deed8 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_load_slh_dsa@ +foreign import ccall safe "hs_bindgen_21765f4b71b5f144" hs_bindgen_21765f4b71b5f144 :: + Ptr.Ptr Botan_pubkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pubkey_load_slh_dsa' +-} +botan_pubkey_load_slh_dsa_wrapper :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @slhdsa_mode@ + -> IO FC.CInt +botan_pubkey_load_slh_dsa_wrapper = + hs_bindgen_21765f4b71b5f144 + +{-| __C declaration:__ @botan_pubkey_load_slh_dsa@ + + __defined at:__ @botan\/ffi.h:1872:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_slh_dsa :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pubkey@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @slhdsa_mode@ + -> IO FC.CInt +botan_pubkey_load_slh_dsa = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr4 -> + hs_bindgen_21765f4b71b5f144 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_ecc_key_used_explicit_encoding@ +foreign import ccall safe "hs_bindgen_a17a0150424b9802" hs_bindgen_a17a0150424b9802 :: + Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_ecc_key_used_explicit_encoding@ + + __defined at:__ @botan\/ffi.h:1878:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_ecc_key_used_explicit_encoding :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_ecc_key_used_explicit_encoding = + hs_bindgen_a17a0150424b9802 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_load_ecdsa@ +foreign import ccall safe "hs_bindgen_9a60c39e9bc9cefa" hs_bindgen_9a60c39e9bc9cefa :: + Ptr.Ptr Botan_privkey_t + -> Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_load_ecdsa@ + + __defined at:__ @botan\/ffi.h:1881:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_ecdsa :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @scalar@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @curve_name@ + -> IO FC.CInt +botan_privkey_load_ecdsa = + hs_bindgen_9a60c39e9bc9cefa + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_load_ecdsa@ +foreign import ccall safe "hs_bindgen_d4a757df41968763" hs_bindgen_d4a757df41968763 :: + Ptr.Ptr Botan_pubkey_t + -> Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_load_ecdsa@ + + __defined at:__ @botan\/ffi.h:1884:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_ecdsa :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @public_x@ + -> Botan_mp_t + -- ^ __C declaration:__ @public_y@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @curve_name@ + -> IO FC.CInt +botan_pubkey_load_ecdsa = hs_bindgen_d4a757df41968763 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_load_ecdsa_sec1@ +foreign import ccall safe "hs_bindgen_4ca1dbf8be8baf8a" hs_bindgen_4ca1dbf8be8baf8a :: + Ptr.Ptr Botan_pubkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pubkey_load_ecdsa_sec1' +-} +botan_pubkey_load_ecdsa_sec1_wrapper :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @sec1@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @sec1_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @curve_name@ + -> IO FC.CInt +botan_pubkey_load_ecdsa_sec1_wrapper = + hs_bindgen_4ca1dbf8be8baf8a + +{-| __C declaration:__ @botan_pubkey_load_ecdsa_sec1@ + + __defined at:__ @botan\/ffi.h:1887:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_ecdsa_sec1 :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @sec1@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @sec1_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @curve_name@ + -> IO FC.CInt +botan_pubkey_load_ecdsa_sec1 = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr4 -> + hs_bindgen_4ca1dbf8be8baf8a x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_load_ecdh@ +foreign import ccall safe "hs_bindgen_647db9dba6bd3eb2" hs_bindgen_647db9dba6bd3eb2 :: + Ptr.Ptr Botan_pubkey_t + -> Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_load_ecdh@ + + __defined at:__ @botan\/ffi.h:1890:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_ecdh :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @public_x@ + -> Botan_mp_t + -- ^ __C declaration:__ @public_y@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @curve_name@ + -> IO FC.CInt +botan_pubkey_load_ecdh = hs_bindgen_647db9dba6bd3eb2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_load_ecdh_sec1@ +foreign import ccall safe "hs_bindgen_f59b82b6a523d958" hs_bindgen_f59b82b6a523d958 :: + Ptr.Ptr Botan_pubkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pubkey_load_ecdh_sec1' +-} +botan_pubkey_load_ecdh_sec1_wrapper :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @sec1@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @sec1_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @curve_name@ + -> IO FC.CInt +botan_pubkey_load_ecdh_sec1_wrapper = + hs_bindgen_f59b82b6a523d958 + +{-| __C declaration:__ @botan_pubkey_load_ecdh_sec1@ + + __defined at:__ @botan\/ffi.h:1893:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_ecdh_sec1 :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @sec1@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @sec1_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @curve_name@ + -> IO FC.CInt +botan_pubkey_load_ecdh_sec1 = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr4 -> + hs_bindgen_f59b82b6a523d958 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_load_ecdh@ +foreign import ccall safe "hs_bindgen_c59d2bfba4ee1b70" hs_bindgen_c59d2bfba4ee1b70 :: + Ptr.Ptr Botan_privkey_t + -> Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_load_ecdh@ + + __defined at:__ @botan\/ffi.h:1896:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_ecdh :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @scalar@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @curve_name@ + -> IO FC.CInt +botan_privkey_load_ecdh = hs_bindgen_c59d2bfba4ee1b70 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_load_sm2@ +foreign import ccall safe "hs_bindgen_08eec35853c0ebd2" hs_bindgen_08eec35853c0ebd2 :: + Ptr.Ptr Botan_pubkey_t + -> Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_load_sm2@ + + __defined at:__ @botan\/ffi.h:1899:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_sm2 :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @public_x@ + -> Botan_mp_t + -- ^ __C declaration:__ @public_y@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @curve_name@ + -> IO FC.CInt +botan_pubkey_load_sm2 = hs_bindgen_08eec35853c0ebd2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_load_sm2_sec1@ +foreign import ccall safe "hs_bindgen_95db0499dd7c6d42" hs_bindgen_95db0499dd7c6d42 :: + Ptr.Ptr Botan_pubkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pubkey_load_sm2_sec1' +-} +botan_pubkey_load_sm2_sec1_wrapper :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @sec1@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @sec1_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @curve_name@ + -> IO FC.CInt +botan_pubkey_load_sm2_sec1_wrapper = + hs_bindgen_95db0499dd7c6d42 + +{-| __C declaration:__ @botan_pubkey_load_sm2_sec1@ + + __defined at:__ @botan\/ffi.h:1902:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_sm2_sec1 :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @sec1@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @sec1_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @curve_name@ + -> IO FC.CInt +botan_pubkey_load_sm2_sec1 = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr4 -> + hs_bindgen_95db0499dd7c6d42 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_load_sm2@ +foreign import ccall safe "hs_bindgen_4ae84e665daba0a6" hs_bindgen_4ae84e665daba0a6 :: + Ptr.Ptr Botan_privkey_t + -> Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_load_sm2@ + + __defined at:__ @botan\/ffi.h:1905:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_sm2 :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @scalar@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @curve_name@ + -> IO FC.CInt +botan_privkey_load_sm2 = hs_bindgen_4ae84e665daba0a6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_load_sm2_enc@ +foreign import ccall safe "hs_bindgen_0689ba490032d58e" hs_bindgen_0689ba490032d58e :: + Ptr.Ptr Botan_pubkey_t + -> Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_load_sm2_enc@ + + __defined at:__ @botan\/ffi.h:1909:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_load_sm2_enc :: + Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @public_x@ + -> Botan_mp_t + -- ^ __C declaration:__ @public_y@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @curve_name@ + -> IO FC.CInt +botan_pubkey_load_sm2_enc = + hs_bindgen_0689ba490032d58e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_privkey_load_sm2_enc@ +foreign import ccall safe "hs_bindgen_e2957a0c82f0adc1" hs_bindgen_e2957a0c82f0adc1 :: + Ptr.Ptr Botan_privkey_t + -> Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_privkey_load_sm2_enc@ + + __defined at:__ @botan\/ffi.h:1913:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_privkey_load_sm2_enc :: + Ptr.Ptr Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_mp_t + -- ^ __C declaration:__ @scalar@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @curve_name@ + -> IO FC.CInt +botan_privkey_load_sm2_enc = + hs_bindgen_e2957a0c82f0adc1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_sm2_compute_za@ +foreign import ccall safe "hs_bindgen_18a4514ca54959bd" hs_bindgen_18a4514ca54959bd :: + Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_pubkey_sm2_compute_za@ + + __defined at:__ @botan\/ffi.h:1916:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_sm2_compute_za :: + Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @ident@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hash_algo@ + -> Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_pubkey_sm2_compute_za = + hs_bindgen_18a4514ca54959bd + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pubkey_view_ec_public_point@ +foreign import ccall safe "hs_bindgen_1efa363d742e232c" hs_bindgen_1efa363d742e232c :: + Botan_pubkey_t + -> Botan_view_ctx + -> Botan_view_bin_fn + -> IO FC.CInt + +{-| View the uncompressed public point associated with the key + +__C declaration:__ @botan_pubkey_view_ec_public_point@ + +__defined at:__ @botan\/ffi.h:1923:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pubkey_view_ec_public_point :: + Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_bin_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_pubkey_view_ec_public_point = + hs_bindgen_1efa363d742e232c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pk_op_encrypt_create@ +foreign import ccall safe "hs_bindgen_a237becd494be50f" hs_bindgen_a237becd494be50f :: + Ptr.Ptr Botan_pk_op_encrypt_t + -> Botan_pubkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_encrypt_create@ + + __defined at:__ @botan\/ffi.h:1931:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_encrypt_create :: + Ptr.Ptr Botan_pk_op_encrypt_t + -- ^ __C declaration:__ @op@ + -> Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @padding@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_pk_op_encrypt_create = + hs_bindgen_a237becd494be50f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pk_op_encrypt_destroy@ +foreign import ccall safe "hs_bindgen_942070c822aef8b2" hs_bindgen_942070c822aef8b2 :: + Botan_pk_op_encrypt_t + -> IO FC.CInt + +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pk_op_encrypt_destroy@ + +__defined at:__ @botan\/ffi.h:1936:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_encrypt_destroy :: + Botan_pk_op_encrypt_t + -- ^ __C declaration:__ @op@ + -> IO FC.CInt +botan_pk_op_encrypt_destroy = + hs_bindgen_942070c822aef8b2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pk_op_encrypt_output_length@ +foreign import ccall safe "hs_bindgen_ef48fb8d4e678a66" hs_bindgen_ef48fb8d4e678a66 :: + Botan_pk_op_encrypt_t + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_encrypt_output_length@ + + __defined at:__ @botan\/ffi.h:1939:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_encrypt_output_length :: + Botan_pk_op_encrypt_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ptext_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ctext_len@ + -> IO FC.CInt +botan_pk_op_encrypt_output_length = + hs_bindgen_ef48fb8d4e678a66 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pk_op_encrypt@ +foreign import ccall safe "hs_bindgen_71278cb0ffbb1d8a" hs_bindgen_71278cb0ffbb1d8a :: + Botan_pk_op_encrypt_t + -> Botan_rng_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pk_op_encrypt' +-} +botan_pk_op_encrypt_wrapper :: + Botan_pk_op_encrypt_t + -- ^ __C declaration:__ @op@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @plaintext@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @plaintext_len@ + -> IO FC.CInt +botan_pk_op_encrypt_wrapper = + hs_bindgen_71278cb0ffbb1d8a + +{-| __C declaration:__ @botan_pk_op_encrypt@ + + __defined at:__ @botan\/ffi.h:1942:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_encrypt :: + Botan_pk_op_encrypt_t + -- ^ __C declaration:__ @op@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @plaintext@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @plaintext_len@ + -> IO FC.CInt +botan_pk_op_encrypt = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + HsBindgen.Runtime.IncompleteArray.withPtr x4 (\ptr6 -> + hs_bindgen_71278cb0ffbb1d8a x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x5) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pk_op_decrypt_create@ +foreign import ccall safe "hs_bindgen_cdc5b50b8c9adb96" hs_bindgen_cdc5b50b8c9adb96 :: + Ptr.Ptr Botan_pk_op_decrypt_t + -> Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_decrypt_create@ + + __defined at:__ @botan\/ffi.h:1955:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_decrypt_create :: + Ptr.Ptr Botan_pk_op_decrypt_t + -- ^ __C declaration:__ @op@ + -> Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @padding@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_pk_op_decrypt_create = + hs_bindgen_cdc5b50b8c9adb96 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pk_op_decrypt_destroy@ +foreign import ccall safe "hs_bindgen_549d727a297dd52b" hs_bindgen_549d727a297dd52b :: + Botan_pk_op_decrypt_t + -> IO FC.CInt + +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pk_op_decrypt_destroy@ + +__defined at:__ @botan\/ffi.h:1960:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_decrypt_destroy :: + Botan_pk_op_decrypt_t + -- ^ __C declaration:__ @op@ + -> IO FC.CInt +botan_pk_op_decrypt_destroy = + hs_bindgen_549d727a297dd52b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pk_op_decrypt_output_length@ +foreign import ccall safe "hs_bindgen_6f575d2942feed56" hs_bindgen_6f575d2942feed56 :: + Botan_pk_op_decrypt_t + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_decrypt_output_length@ + + __defined at:__ @botan\/ffi.h:1963:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_decrypt_output_length :: + Botan_pk_op_decrypt_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ctext_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ptext_len@ + -> IO FC.CInt +botan_pk_op_decrypt_output_length = + hs_bindgen_6f575d2942feed56 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pk_op_decrypt@ +foreign import ccall safe "hs_bindgen_83aff817205f6458" hs_bindgen_83aff817205f6458 :: + Botan_pk_op_decrypt_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pk_op_decrypt' +-} +botan_pk_op_decrypt_wrapper :: + Botan_pk_op_decrypt_t + -- ^ __C declaration:__ @op@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @ciphertext@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ciphertext_len@ + -> IO FC.CInt +botan_pk_op_decrypt_wrapper = + hs_bindgen_83aff817205f6458 + +{-| __C declaration:__ @botan_pk_op_decrypt@ + + __defined at:__ @botan\/ffi.h:1966:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_decrypt :: + Botan_pk_op_decrypt_t + -- ^ __C declaration:__ @op@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @ciphertext@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ciphertext_len@ + -> IO FC.CInt +botan_pk_op_decrypt = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + HsBindgen.Runtime.IncompleteArray.withPtr x3 (\ptr5 -> + hs_bindgen_83aff817205f6458 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x4) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pk_op_sign_create@ +foreign import ccall safe "hs_bindgen_e106ac87a4993fc6" hs_bindgen_e106ac87a4993fc6 :: + Ptr.Ptr Botan_pk_op_sign_t + -> Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_sign_create@ + + __defined at:__ @botan\/ffi.h:1978:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_sign_create :: + Ptr.Ptr Botan_pk_op_sign_t + -- ^ __C declaration:__ @op@ + -> Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hash_and_padding@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_pk_op_sign_create = hs_bindgen_e106ac87a4993fc6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pk_op_sign_destroy@ +foreign import ccall safe "hs_bindgen_95a2280f1c6ce436" hs_bindgen_95a2280f1c6ce436 :: + Botan_pk_op_sign_t + -> IO FC.CInt + +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pk_op_sign_destroy@ + +__defined at:__ @botan\/ffi.h:1983:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_sign_destroy :: + Botan_pk_op_sign_t + -- ^ __C declaration:__ @op@ + -> IO FC.CInt +botan_pk_op_sign_destroy = + hs_bindgen_95a2280f1c6ce436 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pk_op_sign_output_length@ +foreign import ccall safe "hs_bindgen_529676cf0ae1bc1c" hs_bindgen_529676cf0ae1bc1c :: + Botan_pk_op_sign_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_sign_output_length@ + + __defined at:__ @botan\/ffi.h:1985:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_sign_output_length :: + Botan_pk_op_sign_t + -- ^ __C declaration:__ @op@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @olen@ + -> IO FC.CInt +botan_pk_op_sign_output_length = + hs_bindgen_529676cf0ae1bc1c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pk_op_sign_update@ +foreign import ccall safe "hs_bindgen_c8246a1430db1da3" hs_bindgen_c8246a1430db1da3 :: + Botan_pk_op_sign_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pk_op_sign_update' +-} +botan_pk_op_sign_update_wrapper :: + Botan_pk_op_sign_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @in'@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @in_len@ + -> IO FC.CInt +botan_pk_op_sign_update_wrapper = + hs_bindgen_c8246a1430db1da3 + +{-| __C declaration:__ @botan_pk_op_sign_update@ + + __defined at:__ @botan\/ffi.h:1987:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_sign_update :: + Botan_pk_op_sign_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @in'@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @in_len@ + -> IO FC.CInt +botan_pk_op_sign_update = + \x0 -> + \x1 -> + \x2 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr3 -> + hs_bindgen_c8246a1430db1da3 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pk_op_sign_finish@ +foreign import ccall safe "hs_bindgen_57e67729367442ae" hs_bindgen_57e67729367442ae :: + Botan_pk_op_sign_t + -> Botan_rng_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_sign_finish@ + + __defined at:__ @botan\/ffi.h:1990:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_sign_finish :: + Botan_pk_op_sign_t + -- ^ __C declaration:__ @op@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @sig@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @sig_len@ + -> IO FC.CInt +botan_pk_op_sign_finish = hs_bindgen_57e67729367442ae + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pk_op_verify_create@ +foreign import ccall safe "hs_bindgen_9da0fdbaab2818dc" hs_bindgen_9da0fdbaab2818dc :: + Ptr.Ptr Botan_pk_op_verify_t + -> Botan_pubkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_verify_create@ + + __defined at:__ @botan\/ffi.h:1998:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_verify_create :: + Ptr.Ptr Botan_pk_op_verify_t + -- ^ __C declaration:__ @op@ + -> Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hash_and_padding@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_pk_op_verify_create = + hs_bindgen_9da0fdbaab2818dc + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pk_op_verify_destroy@ +foreign import ccall safe "hs_bindgen_61a3ae415d8b557b" hs_bindgen_61a3ae415d8b557b :: + Botan_pk_op_verify_t + -> IO FC.CInt + +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pk_op_verify_destroy@ + +__defined at:__ @botan\/ffi.h:2006:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_verify_destroy :: + Botan_pk_op_verify_t + -- ^ __C declaration:__ @op@ + -> IO FC.CInt +botan_pk_op_verify_destroy = + hs_bindgen_61a3ae415d8b557b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pk_op_verify_update@ +foreign import ccall safe "hs_bindgen_edc0c2afd53b79df" hs_bindgen_edc0c2afd53b79df :: + Botan_pk_op_verify_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pk_op_verify_update' +-} +botan_pk_op_verify_update_wrapper :: + Botan_pk_op_verify_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @in'@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @in_len@ + -> IO FC.CInt +botan_pk_op_verify_update_wrapper = + hs_bindgen_edc0c2afd53b79df + +{-| __C declaration:__ @botan_pk_op_verify_update@ + + __defined at:__ @botan\/ffi.h:2008:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_verify_update :: + Botan_pk_op_verify_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @in'@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @in_len@ + -> IO FC.CInt +botan_pk_op_verify_update = + \x0 -> + \x1 -> + \x2 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr3 -> + hs_bindgen_edc0c2afd53b79df x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pk_op_verify_finish@ +foreign import ccall safe "hs_bindgen_6274313fbf6a6740" hs_bindgen_6274313fbf6a6740 :: + Botan_pk_op_verify_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pk_op_verify_finish' +-} +botan_pk_op_verify_finish_wrapper :: + Botan_pk_op_verify_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @sig@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @sig_len@ + -> IO FC.CInt +botan_pk_op_verify_finish_wrapper = + hs_bindgen_6274313fbf6a6740 + +{-| __C declaration:__ @botan_pk_op_verify_finish@ + + __defined at:__ @botan\/ffi.h:2009:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_verify_finish :: + Botan_pk_op_verify_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @sig@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @sig_len@ + -> IO FC.CInt +botan_pk_op_verify_finish = + \x0 -> + \x1 -> + \x2 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr3 -> + hs_bindgen_6274313fbf6a6740 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pk_op_key_agreement_create@ +foreign import ccall safe "hs_bindgen_44f49efb44587724" hs_bindgen_44f49efb44587724 :: + Ptr.Ptr Botan_pk_op_ka_t + -> Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_key_agreement_create@ + + __defined at:__ @botan\/ffi.h:2017:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_key_agreement_create :: + Ptr.Ptr Botan_pk_op_ka_t + -- ^ __C declaration:__ @op@ + -> Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @kdf@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_pk_op_key_agreement_create = + hs_bindgen_44f49efb44587724 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pk_op_key_agreement_destroy@ +foreign import ccall safe "hs_bindgen_5f7200fca8de29a5" hs_bindgen_5f7200fca8de29a5 :: + Botan_pk_op_ka_t + -> IO FC.CInt + +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pk_op_key_agreement_destroy@ + +__defined at:__ @botan\/ffi.h:2022:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_key_agreement_destroy :: + Botan_pk_op_ka_t + -- ^ __C declaration:__ @op@ + -> IO FC.CInt +botan_pk_op_key_agreement_destroy = + hs_bindgen_5f7200fca8de29a5 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pk_op_key_agreement_export_public@ +foreign import ccall safe "hs_bindgen_9ac39b84f0b2233c" hs_bindgen_9ac39b84f0b2233c :: + Botan_privkey_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_key_agreement_export_public@ + + __defined at:__ @botan\/ffi.h:2024:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_key_agreement_export_public :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_pk_op_key_agreement_export_public = + hs_bindgen_9ac39b84f0b2233c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pk_op_key_agreement_view_public@ +foreign import ccall safe "hs_bindgen_c7fa9af5a0f2b9fd" hs_bindgen_c7fa9af5a0f2b9fd :: + Botan_privkey_t + -> Botan_view_ctx + -> Botan_view_bin_fn + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_key_agreement_view_public@ + + __defined at:__ @botan\/ffi.h:2027:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_key_agreement_view_public :: + Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_bin_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_pk_op_key_agreement_view_public = + hs_bindgen_c7fa9af5a0f2b9fd + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pk_op_key_agreement_size@ +foreign import ccall safe "hs_bindgen_764191993ba692aa" hs_bindgen_764191993ba692aa :: + Botan_pk_op_ka_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_key_agreement_size@ + + __defined at:__ @botan\/ffi.h:2029:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_key_agreement_size :: + Botan_pk_op_ka_t + -- ^ __C declaration:__ @op@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_pk_op_key_agreement_size = + hs_bindgen_764191993ba692aa + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pk_op_key_agreement@ +foreign import ccall safe "hs_bindgen_5ebdd2ddabbc314e" hs_bindgen_5ebdd2ddabbc314e :: + Botan_pk_op_ka_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pk_op_key_agreement' +-} +botan_pk_op_key_agreement_wrapper :: + Botan_pk_op_ka_t + -- ^ __C declaration:__ @op@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @other_key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @other_key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> IO FC.CInt +botan_pk_op_key_agreement_wrapper = + hs_bindgen_5ebdd2ddabbc314e + +{-| __C declaration:__ @botan_pk_op_key_agreement@ + + __defined at:__ @botan\/ffi.h:2032:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_key_agreement :: + Botan_pk_op_ka_t + -- ^ __C declaration:__ @op@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @other_key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @other_key_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> IO FC.CInt +botan_pk_op_key_agreement = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + HsBindgen.Runtime.IncompleteArray.withPtr x5 (\ptr7 -> + HsBindgen.Runtime.IncompleteArray.withPtr x3 (\ptr8 -> + hs_bindgen_5ebdd2ddabbc314e x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x6)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pk_op_kem_encrypt_create@ +foreign import ccall safe "hs_bindgen_35913176bcb3cea3" hs_bindgen_35913176bcb3cea3 :: + Ptr.Ptr Botan_pk_op_kem_encrypt_t + -> Botan_pubkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create@ + + __defined at:__ @botan\/ffi.h:2046:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_encrypt_create :: + Ptr.Ptr Botan_pk_op_kem_encrypt_t + -- ^ __C declaration:__ @op@ + -> Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @kdf@ + -> IO FC.CInt +botan_pk_op_kem_encrypt_create = + hs_bindgen_35913176bcb3cea3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pk_op_kem_encrypt_destroy@ +foreign import ccall safe "hs_bindgen_97a72ad565d4d0c2" hs_bindgen_97a72ad565d4d0c2 :: + Botan_pk_op_kem_encrypt_t + -> IO FC.CInt + +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pk_op_kem_encrypt_destroy@ + +__defined at:__ @botan\/ffi.h:2051:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_encrypt_destroy :: + Botan_pk_op_kem_encrypt_t + -- ^ __C declaration:__ @op@ + -> IO FC.CInt +botan_pk_op_kem_encrypt_destroy = + hs_bindgen_97a72ad565d4d0c2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pk_op_kem_encrypt_shared_key_length@ +foreign import ccall safe "hs_bindgen_50b4818aca399ad3" hs_bindgen_50b4818aca399ad3 :: + Botan_pk_op_kem_encrypt_t + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_shared_key_length@ + + __defined at:__ @botan\/ffi.h:2054:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_encrypt_shared_key_length :: + Botan_pk_op_kem_encrypt_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @desired_shared_key_length@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @output_shared_key_length@ + -> IO FC.CInt +botan_pk_op_kem_encrypt_shared_key_length = + hs_bindgen_50b4818aca399ad3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pk_op_kem_encrypt_encapsulated_key_length@ +foreign import ccall safe "hs_bindgen_04aa55eecb2dfce1" hs_bindgen_04aa55eecb2dfce1 :: + Botan_pk_op_kem_encrypt_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_encapsulated_key_length@ + + __defined at:__ @botan\/ffi.h:2059:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_encrypt_encapsulated_key_length :: + Botan_pk_op_kem_encrypt_t + -- ^ __C declaration:__ @op@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @output_encapsulated_key_length@ + -> IO FC.CInt +botan_pk_op_kem_encrypt_encapsulated_key_length = + hs_bindgen_04aa55eecb2dfce1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pk_op_kem_encrypt_create_shared_key@ +foreign import ccall safe "hs_bindgen_2c76d8024cf8314b" hs_bindgen_2c76d8024cf8314b :: + Botan_pk_op_kem_encrypt_t + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pk_op_kem_encrypt_create_shared_key' +-} +botan_pk_op_kem_encrypt_create_shared_key_wrapper :: + Botan_pk_op_kem_encrypt_t + -- ^ __C declaration:__ @op@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @desired_shared_key_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @shared_key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @shared_key_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @encapsulated_key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @encapsulated_key_len@ + -> IO FC.CInt +botan_pk_op_kem_encrypt_create_shared_key_wrapper = + hs_bindgen_2c76d8024cf8314b + +{-| __C declaration:__ @botan_pk_op_kem_encrypt_create_shared_key@ + + __defined at:__ @botan\/ffi.h:2063:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_encrypt_create_shared_key :: + Botan_pk_op_kem_encrypt_t + -- ^ __C declaration:__ @op@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @desired_shared_key_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @shared_key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @shared_key_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @encapsulated_key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @encapsulated_key_len@ + -> IO FC.CInt +botan_pk_op_kem_encrypt_create_shared_key = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + \x8 -> + HsBindgen.Runtime.IncompleteArray.withPtr x2 (\ptr9 -> + hs_bindgen_2c76d8024cf8314b x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 x4 x5 x6 x7 x8) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pk_op_kem_decrypt_create@ +foreign import ccall safe "hs_bindgen_4dcb91b1342efbf4" hs_bindgen_4dcb91b1342efbf4 :: + Ptr.Ptr Botan_pk_op_kem_decrypt_t + -> Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_create@ + + __defined at:__ @botan\/ffi.h:2076:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_decrypt_create :: + Ptr.Ptr Botan_pk_op_kem_decrypt_t + -- ^ __C declaration:__ @op@ + -> Botan_privkey_t + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @kdf@ + -> IO FC.CInt +botan_pk_op_kem_decrypt_create = + hs_bindgen_4dcb91b1342efbf4 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pk_op_kem_decrypt_destroy@ +foreign import ccall safe "hs_bindgen_870d58786ded28a5" hs_bindgen_870d58786ded28a5 :: + Botan_pk_op_kem_decrypt_t + -> IO FC.CInt + +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_pk_op_kem_decrypt_destroy@ + +__defined at:__ @botan\/ffi.h:2081:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_decrypt_destroy :: + Botan_pk_op_kem_decrypt_t + -- ^ __C declaration:__ @op@ + -> IO FC.CInt +botan_pk_op_kem_decrypt_destroy = + hs_bindgen_870d58786ded28a5 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pk_op_kem_decrypt_shared_key_length@ +foreign import ccall safe "hs_bindgen_cc5c38a3296d91c7" hs_bindgen_cc5c38a3296d91c7 :: + Botan_pk_op_kem_decrypt_t + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key_length@ + + __defined at:__ @botan\/ffi.h:2084:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_decrypt_shared_key_length :: + Botan_pk_op_kem_decrypt_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @desired_shared_key_length@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @output_shared_key_length@ + -> IO FC.CInt +botan_pk_op_kem_decrypt_shared_key_length = + hs_bindgen_cc5c38a3296d91c7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pk_op_kem_decrypt_shared_key@ +foreign import ccall safe "hs_bindgen_bb3be93ef9fa2162" hs_bindgen_bb3be93ef9fa2162 :: + Botan_pk_op_kem_decrypt_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pk_op_kem_decrypt_shared_key' +-} +botan_pk_op_kem_decrypt_shared_key_wrapper :: + Botan_pk_op_kem_decrypt_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @encapsulated_key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @encapsulated_key_len@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @desired_shared_key_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @shared_key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @shared_key_len@ + -> IO FC.CInt +botan_pk_op_kem_decrypt_shared_key_wrapper = + hs_bindgen_bb3be93ef9fa2162 + +{-| __C declaration:__ @botan_pk_op_kem_decrypt_shared_key@ + + __defined at:__ @botan\/ffi.h:2089:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pk_op_kem_decrypt_shared_key :: + Botan_pk_op_kem_decrypt_t + -- ^ __C declaration:__ @op@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @encapsulated_key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @encapsulated_key_len@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @desired_shared_key_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @shared_key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @shared_key_len@ + -> IO FC.CInt +botan_pk_op_kem_decrypt_shared_key = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + HsBindgen.Runtime.IncompleteArray.withPtr x3 (\ptr8 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr9 -> + hs_bindgen_bb3be93ef9fa2162 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_pkcs_hash_id@ +foreign import ccall safe "hs_bindgen_ba59d24c326c07a2" hs_bindgen_ba59d24c326c07a2 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Signature Scheme Utility Functions + +__C declaration:__ @botan_pkcs_hash_id@ + +__defined at:__ @botan\/ffi.h:2102:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pkcs_hash_id :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hash_name@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pkcs_id@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @pkcs_id_len@ + -> IO FC.CInt +botan_pkcs_hash_id = hs_bindgen_ba59d24c326c07a2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mceies_encrypt@ +foreign import ccall safe "hs_bindgen_6da1107999cc1b24" hs_bindgen_6da1107999cc1b24 :: + Botan_pubkey_t + -> Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_mceies_encrypt' +-} +botan_mceies_encrypt_wrapper :: + Botan_pubkey_t + -- ^ __C declaration:__ @mce_key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @aead@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @pt_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @ad@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ad_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @ct@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ct_len@ + -> IO FC.CInt +botan_mceies_encrypt_wrapper = + hs_bindgen_6da1107999cc1b24 + +{-| __C declaration:__ @botan_mceies_encrypt@ + + __defined at:__ @botan\/ffi.h:2109:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mceies_encrypt :: + Botan_pubkey_t + -- ^ __C declaration:__ @mce_key@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @aead@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @pt_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @ad@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ad_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @ct@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ct_len@ + -> IO FC.CInt +botan_mceies_encrypt = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + \x8 -> + HsBindgen.Runtime.IncompleteArray.withPtr x5 (\ptr9 -> + HsBindgen.Runtime.IncompleteArray.withPtr x3 (\ptr10 -> + hs_bindgen_6da1107999cc1b24 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x6 x7 x8)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_mceies_decrypt@ +foreign import ccall safe "hs_bindgen_d7c8e90e36fae205" hs_bindgen_d7c8e90e36fae205 :: + Botan_privkey_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_mceies_decrypt' +-} +botan_mceies_decrypt_wrapper :: + Botan_privkey_t + -- ^ __C declaration:__ @mce_key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @aead@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @ct@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ct_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @ad@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ad_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pt@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @pt_len@ + -> IO FC.CInt +botan_mceies_decrypt_wrapper = + hs_bindgen_d7c8e90e36fae205 + +{-| __C declaration:__ @botan_mceies_decrypt@ + + __defined at:__ @botan\/ffi.h:2124:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mceies_decrypt :: + Botan_privkey_t + -- ^ __C declaration:__ @mce_key@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @aead@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @ct@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ct_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @ad@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ad_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @pt@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @pt_len@ + -> IO FC.CInt +botan_mceies_decrypt = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + HsBindgen.Runtime.IncompleteArray.withPtr x4 (\ptr8 -> + HsBindgen.Runtime.IncompleteArray.withPtr x2 (\ptr9 -> + hs_bindgen_d7c8e90e36fae205 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_x509_cert_load@ +foreign import ccall safe "hs_bindgen_22c5a07482ca7fe4" hs_bindgen_22c5a07482ca7fe4 :: + Ptr.Ptr Botan_x509_cert_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_x509_cert_load' +-} +botan_x509_cert_load_wrapper :: + Ptr.Ptr Botan_x509_cert_t + -- ^ __C declaration:__ @cert_obj@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @cert@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @cert_len@ + -> IO FC.CInt +botan_x509_cert_load_wrapper = + hs_bindgen_22c5a07482ca7fe4 + +{-| __C declaration:__ @botan_x509_cert_load@ + + __defined at:__ @botan\/ffi.h:2139:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_load :: + Ptr.Ptr Botan_x509_cert_t + -- ^ __C declaration:__ @cert_obj@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @cert@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @cert_len@ + -> IO FC.CInt +botan_x509_cert_load = + \x0 -> + \x1 -> + \x2 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr3 -> + hs_bindgen_22c5a07482ca7fe4 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_x509_cert_load_file@ +foreign import ccall safe "hs_bindgen_01c806f9b53ba785" hs_bindgen_01c806f9b53ba785 :: + Ptr.Ptr Botan_x509_cert_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_load_file@ + + __defined at:__ @botan\/ffi.h:2140:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_load_file :: + Ptr.Ptr Botan_x509_cert_t + -- ^ __C declaration:__ @cert_obj@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @filename@ + -> IO FC.CInt +botan_x509_cert_load_file = + hs_bindgen_01c806f9b53ba785 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_x509_cert_destroy@ +foreign import ccall safe "hs_bindgen_9176bb3e02576e72" hs_bindgen_9176bb3e02576e72 :: + Botan_x509_cert_t + -> IO FC.CInt + +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_x509_cert_destroy@ + +__defined at:__ @botan\/ffi.h:2145:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_destroy :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> IO FC.CInt +botan_x509_cert_destroy = hs_bindgen_9176bb3e02576e72 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_x509_cert_dup@ +foreign import ccall safe "hs_bindgen_d49b9b026a0dcf7d" hs_bindgen_d49b9b026a0dcf7d :: + Ptr.Ptr Botan_x509_cert_t + -> Botan_x509_cert_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_dup@ + + __defined at:__ @botan\/ffi.h:2147:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_dup :: + Ptr.Ptr Botan_x509_cert_t + -- ^ __C declaration:__ @new_cert@ + -> Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> IO FC.CInt +botan_x509_cert_dup = hs_bindgen_d49b9b026a0dcf7d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_x509_cert_get_time_starts@ +foreign import ccall safe "hs_bindgen_b006781d497bdb95" hs_bindgen_b006781d497bdb95 :: + Botan_x509_cert_t + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_get_time_starts@ + + __defined at:__ @botan\/ffi.h:2150:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_time_starts :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Ptr.Ptr FC.CChar + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_x509_cert_get_time_starts = + hs_bindgen_b006781d497bdb95 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_x509_cert_get_time_expires@ +foreign import ccall safe "hs_bindgen_b02ee020cf332052" hs_bindgen_b02ee020cf332052 :: + Botan_x509_cert_t + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_get_time_expires@ + + __defined at:__ @botan\/ffi.h:2151:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_time_expires :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Ptr.Ptr FC.CChar + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_x509_cert_get_time_expires = + hs_bindgen_b02ee020cf332052 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_x509_cert_not_before@ +foreign import ccall safe "hs_bindgen_214fc5ad7e0268ba" hs_bindgen_214fc5ad7e0268ba :: + Botan_x509_cert_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word64 + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_not_before@ + + __defined at:__ @botan\/ffi.h:2153:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_not_before :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word64 + -- ^ __C declaration:__ @time_since_epoch@ + -> IO FC.CInt +botan_x509_cert_not_before = + hs_bindgen_214fc5ad7e0268ba + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_x509_cert_not_after@ +foreign import ccall safe "hs_bindgen_650ce790b6c17758" hs_bindgen_650ce790b6c17758 :: + Botan_x509_cert_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word64 + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_not_after@ + + __defined at:__ @botan\/ffi.h:2154:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_not_after :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word64 + -- ^ __C declaration:__ @time_since_epoch@ + -> IO FC.CInt +botan_x509_cert_not_after = + hs_bindgen_650ce790b6c17758 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_x509_cert_get_fingerprint@ +foreign import ccall safe "hs_bindgen_e71fd85b8a9f0f93" hs_bindgen_e71fd85b8a9f0f93 :: + Botan_x509_cert_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_get_fingerprint@ + + __defined at:__ @botan\/ffi.h:2158:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_fingerprint :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hash@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_x509_cert_get_fingerprint = + hs_bindgen_e71fd85b8a9f0f93 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_x509_cert_get_serial_number@ +foreign import ccall safe "hs_bindgen_8e1e2abeeb632ae9" hs_bindgen_8e1e2abeeb632ae9 :: + Botan_x509_cert_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_get_serial_number@ + + __defined at:__ @botan\/ffi.h:2160:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_serial_number :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_x509_cert_get_serial_number = + hs_bindgen_8e1e2abeeb632ae9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_x509_cert_get_authority_key_id@ +foreign import ccall safe "hs_bindgen_d27d97a2abe2f734" hs_bindgen_d27d97a2abe2f734 :: + Botan_x509_cert_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_get_authority_key_id@ + + __defined at:__ @botan\/ffi.h:2161:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_authority_key_id :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_x509_cert_get_authority_key_id = + hs_bindgen_d27d97a2abe2f734 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_x509_cert_get_subject_key_id@ +foreign import ccall safe "hs_bindgen_3f88e1fcbb5367fc" hs_bindgen_3f88e1fcbb5367fc :: + Botan_x509_cert_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_get_subject_key_id@ + + __defined at:__ @botan\/ffi.h:2162:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_subject_key_id :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_x509_cert_get_subject_key_id = + hs_bindgen_3f88e1fcbb5367fc + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_x509_cert_get_public_key_bits@ +foreign import ccall safe "hs_bindgen_2492fe9c387adb2d" hs_bindgen_2492fe9c387adb2d :: + Botan_x509_cert_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_get_public_key_bits@ + + __defined at:__ @botan\/ffi.h:2164:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_public_key_bits :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_x509_cert_get_public_key_bits = + hs_bindgen_2492fe9c387adb2d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_x509_cert_view_public_key_bits@ +foreign import ccall safe "hs_bindgen_c11022522441240c" hs_bindgen_c11022522441240c :: + Botan_x509_cert_t + -> Botan_view_ctx + -> Botan_view_bin_fn + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_view_public_key_bits@ + + __defined at:__ @botan\/ffi.h:2167:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_view_public_key_bits :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_bin_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_x509_cert_view_public_key_bits = + hs_bindgen_c11022522441240c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_x509_cert_get_public_key@ +foreign import ccall safe "hs_bindgen_8436afa23017a960" hs_bindgen_8436afa23017a960 :: + Botan_x509_cert_t + -> Ptr.Ptr Botan_pubkey_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_get_public_key@ + + __defined at:__ @botan\/ffi.h:2169:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_public_key :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Ptr.Ptr Botan_pubkey_t + -- ^ __C declaration:__ @key@ + -> IO FC.CInt +botan_x509_cert_get_public_key = + hs_bindgen_8436afa23017a960 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_x509_cert_get_issuer_dn@ +foreign import ccall safe "hs_bindgen_0d58ef297f6a45eb" hs_bindgen_0d58ef297f6a45eb :: + Botan_x509_cert_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_get_issuer_dn@ + + __defined at:__ @botan\/ffi.h:2173:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_issuer_dn :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @index@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_x509_cert_get_issuer_dn = + hs_bindgen_0d58ef297f6a45eb + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_x509_cert_get_subject_dn@ +foreign import ccall safe "hs_bindgen_557a0ca7a15bc00c" hs_bindgen_557a0ca7a15bc00c :: + Botan_x509_cert_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_get_subject_dn@ + + __defined at:__ @botan\/ffi.h:2178:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_get_subject_dn :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @index@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_x509_cert_get_subject_dn = + hs_bindgen_557a0ca7a15bc00c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_x509_cert_to_string@ +foreign import ccall safe "hs_bindgen_043693cb0890dd4d" hs_bindgen_043693cb0890dd4d :: + Botan_x509_cert_t + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_to_string@ + + __defined at:__ @botan\/ffi.h:2181:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_to_string :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Ptr.Ptr FC.CChar + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_x509_cert_to_string = + hs_bindgen_043693cb0890dd4d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_x509_cert_view_as_string@ +foreign import ccall safe "hs_bindgen_b3e2e5590fd65359" hs_bindgen_b3e2e5590fd65359 :: + Botan_x509_cert_t + -> Botan_view_ctx + -> Botan_view_str_fn + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_view_as_string@ + + __defined at:__ @botan\/ffi.h:2184:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_view_as_string :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_str_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_x509_cert_view_as_string = + hs_bindgen_b3e2e5590fd65359 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_x509_cert_allowed_usage@ +foreign import ccall safe "hs_bindgen_338a2c6c3d470654" hs_bindgen_338a2c6c3d470654 :: + Botan_x509_cert_t + -> FC.CUInt + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_cert_allowed_usage@ + + __defined at:__ @botan\/ffi.h:2200:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_allowed_usage :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> FC.CUInt + -- ^ __C declaration:__ @key_usage@ + -> IO FC.CInt +botan_x509_cert_allowed_usage = + hs_bindgen_338a2c6c3d470654 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_x509_cert_hostname_match@ +foreign import ccall safe "hs_bindgen_874eb6327b84819b" hs_bindgen_874eb6327b84819b :: + Botan_x509_cert_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Check if the certificate matches the specified hostname via alternative name or CN match. RFC 5280 wildcards also supported. + +__C declaration:__ @botan_x509_cert_hostname_match@ + +__defined at:__ @botan\/ffi.h:2206:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_hostname_match :: + Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hostname@ + -> IO FC.CInt +botan_x509_cert_hostname_match = + hs_bindgen_874eb6327b84819b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_x509_cert_verify@ +foreign import ccall safe "hs_bindgen_97c92b676cb76cac" hs_bindgen_97c92b676cb76cac :: + Ptr.Ptr FC.CInt + -> Botan_x509_cert_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word64 + -> IO FC.CInt + +{-| Returns 0 if the validation was successful, 1 if validation failed, and negative on error. A status code with details is written to *validation_result + + Intermediates or trusted lists can be null Trusted path can be null + +__C declaration:__ @botan_x509_cert_verify@ + +__defined at:__ @botan\/ffi.h:2217:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_verify :: + Ptr.Ptr FC.CInt + -- ^ __C declaration:__ @validation_result@ + -> Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t + -- ^ __C declaration:__ @intermediates@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @intermediates_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t + -- ^ __C declaration:__ @trusted@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @trusted_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @trusted_path@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @required_strength@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hostname@ + -> HsBindgen.Runtime.Prelude.Word64 + -- ^ __C declaration:__ @reference_time@ + -> IO FC.CInt +botan_x509_cert_verify = hs_bindgen_97c92b676cb76cac + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_x509_cert_validation_status@ +foreign import ccall safe "hs_bindgen_4953127fc1716bff" hs_bindgen_4953127fc1716bff :: + FC.CInt + -> IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) + +{-| Returns a pointer to a static character string explaining the status code, or else NULL if unknown. + +__C declaration:__ @botan_x509_cert_validation_status@ + +__defined at:__ @botan\/ffi.h:2232:36@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_validation_status :: + FC.CInt + -- ^ __C declaration:__ @code@ + -> IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_x509_cert_validation_status = + hs_bindgen_4953127fc1716bff + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_x509_crl_load_file@ +foreign import ccall safe "hs_bindgen_b79c776589ef9db1" hs_bindgen_b79c776589ef9db1 :: + Ptr.Ptr Botan_x509_crl_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_crl_load_file@ + + __defined at:__ @botan\/ffi.h:2240:29@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_crl_load_file :: + Ptr.Ptr Botan_x509_crl_t + -- ^ __C declaration:__ @crl_obj@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @crl_path@ + -> IO FC.CInt +botan_x509_crl_load_file = + hs_bindgen_b79c776589ef9db1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_x509_crl_load@ +foreign import ccall safe "hs_bindgen_b12726b53f98a4fc" hs_bindgen_b12726b53f98a4fc :: + Ptr.Ptr Botan_x509_crl_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_x509_crl_load' +-} +botan_x509_crl_load_wrapper :: + Ptr.Ptr Botan_x509_crl_t + -- ^ __C declaration:__ @crl_obj@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @crl_bits@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @crl_bits_len@ + -> IO FC.CInt +botan_x509_crl_load_wrapper = + hs_bindgen_b12726b53f98a4fc + +{-| __C declaration:__ @botan_x509_crl_load@ + + __defined at:__ @botan\/ffi.h:2242:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_crl_load :: + Ptr.Ptr Botan_x509_crl_t + -- ^ __C declaration:__ @crl_obj@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @crl_bits@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @crl_bits_len@ + -> IO FC.CInt +botan_x509_crl_load = + \x0 -> + \x1 -> + \x2 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr3 -> + hs_bindgen_b12726b53f98a4fc x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_x509_crl_destroy@ +foreign import ccall safe "hs_bindgen_b5f95758016db096" hs_bindgen_b5f95758016db096 :: + Botan_x509_crl_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_x509_crl_destroy@ + + __defined at:__ @botan\/ffi.h:2244:29@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_x509_crl_destroy :: + Botan_x509_crl_t + -- ^ __C declaration:__ @crl@ + -> IO FC.CInt +botan_x509_crl_destroy = hs_bindgen_b5f95758016db096 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_x509_is_revoked@ +foreign import ccall safe "hs_bindgen_cf00cb48e44b74fc" hs_bindgen_cf00cb48e44b74fc :: + Botan_x509_crl_t + -> Botan_x509_cert_t + -> IO FC.CInt + +{-| Given a CRL and a certificate, check if the certificate is revoked on that particular CRL + +__C declaration:__ @botan_x509_is_revoked@ + +__defined at:__ @botan\/ffi.h:2250:29@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_x509_is_revoked :: + Botan_x509_crl_t + -- ^ __C declaration:__ @crl@ + -> Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> IO FC.CInt +botan_x509_is_revoked = hs_bindgen_cf00cb48e44b74fc + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_x509_cert_verify_with_crl@ +foreign import ccall safe "hs_bindgen_b8636ca2b76c25c8" hs_bindgen_b8636ca2b76c25c8 :: + Ptr.Ptr FC.CInt + -> Botan_x509_cert_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_crl_t + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word64 + -> IO FC.CInt + +{-| Different flavor of `botan_x509_cert_verify`, supports revocation lists. CRLs are passed as an array, same as intermediates and trusted CAs + +__C declaration:__ @botan_x509_cert_verify_with_crl@ + +__defined at:__ @botan\/ffi.h:2257:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_x509_cert_verify_with_crl :: + Ptr.Ptr FC.CInt + -- ^ __C declaration:__ @validation_result@ + -> Botan_x509_cert_t + -- ^ __C declaration:__ @cert@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t + -- ^ __C declaration:__ @intermediates@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @intermediates_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_cert_t + -- ^ __C declaration:__ @trusted@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @trusted_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr Botan_x509_crl_t + -- ^ __C declaration:__ @crls@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @crls_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @trusted_path@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @required_strength@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hostname@ + -> HsBindgen.Runtime.Prelude.Word64 + -- ^ __C declaration:__ @reference_time@ + -> IO FC.CInt +botan_x509_cert_verify_with_crl = + hs_bindgen_b8636ca2b76c25c8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_key_wrap3394@ +foreign import ccall safe "hs_bindgen_50515d5583a09e9e" hs_bindgen_50515d5583a09e9e :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_key_wrap3394' +-} +botan_key_wrap3394_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @kek@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @kek_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @wrapped_key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @wrapped_key_len@ + -> IO FC.CInt +botan_key_wrap3394_wrapper = + hs_bindgen_50515d5583a09e9e + +{-| Key wrapping as per RFC 3394 + +__C declaration:__ @botan_key_wrap3394@ + +__defined at:__ @botan\/ffi.h:2275:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_key_wrap3394 :: + HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @kek@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @kek_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @wrapped_key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @wrapped_key_len@ + -> IO FC.CInt +botan_key_wrap3394 = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + HsBindgen.Runtime.IncompleteArray.withPtr x2 (\ptr6 -> + HsBindgen.Runtime.IncompleteArray.withPtr x0 (\ptr7 -> + hs_bindgen_50515d5583a09e9e (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_key_unwrap3394@ +foreign import ccall safe "hs_bindgen_e86e57f6db14669b" hs_bindgen_e86e57f6db14669b :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_key_unwrap3394' +-} +botan_key_unwrap3394_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @wrapped_key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @wrapped_key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @kek@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @kek_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> IO FC.CInt +botan_key_unwrap3394_wrapper = + hs_bindgen_e86e57f6db14669b + +{-| __C declaration:__ @botan_key_unwrap3394@ + + __defined at:__ @botan\/ffi.h:2284:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_key_unwrap3394 :: + HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @wrapped_key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @wrapped_key_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @kek@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @kek_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> IO FC.CInt +botan_key_unwrap3394 = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + HsBindgen.Runtime.IncompleteArray.withPtr x2 (\ptr6 -> + HsBindgen.Runtime.IncompleteArray.withPtr x0 (\ptr7 -> + hs_bindgen_e86e57f6db14669b (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_nist_kw_enc@ +foreign import ccall safe "hs_bindgen_50989a00271773ac" hs_bindgen_50989a00271773ac :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> FC.CInt + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_nist_kw_enc' +-} +botan_nist_kw_enc_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cipher_algo@ + -> FC.CInt + -- ^ __C declaration:__ @padded@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @kek@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @kek_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @wrapped_key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @wrapped_key_len@ + -> IO FC.CInt +botan_nist_kw_enc_wrapper = + hs_bindgen_50989a00271773ac + +{-| __C declaration:__ @botan_nist_kw_enc@ + + __defined at:__ @botan\/ffi.h:2292:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_nist_kw_enc :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cipher_algo@ + -> FC.CInt + -- ^ __C declaration:__ @padded@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @kek@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @kek_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @wrapped_key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @wrapped_key_len@ + -> IO FC.CInt +botan_nist_kw_enc = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + HsBindgen.Runtime.IncompleteArray.withPtr x4 (\ptr8 -> + HsBindgen.Runtime.IncompleteArray.withPtr x2 (\ptr9 -> + hs_bindgen_50989a00271773ac x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_nist_kw_dec@ +foreign import ccall safe "hs_bindgen_b82965d6858ca236" hs_bindgen_b82965d6858ca236 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> FC.CInt + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_nist_kw_dec' +-} +botan_nist_kw_dec_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cipher_algo@ + -> FC.CInt + -- ^ __C declaration:__ @padded@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @wrapped_key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @wrapped_key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @kek@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @kek_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> IO FC.CInt +botan_nist_kw_dec_wrapper = + hs_bindgen_b82965d6858ca236 + +{-| __C declaration:__ @botan_nist_kw_dec@ + + __defined at:__ @botan\/ffi.h:2302:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_nist_kw_dec :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cipher_algo@ + -> FC.CInt + -- ^ __C declaration:__ @padded@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @wrapped_key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @wrapped_key_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @kek@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @kek_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> IO FC.CInt +botan_nist_kw_dec = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + HsBindgen.Runtime.IncompleteArray.withPtr x4 (\ptr8 -> + HsBindgen.Runtime.IncompleteArray.withPtr x2 (\ptr9 -> + hs_bindgen_b82965d6858ca236 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_hotp_init@ +foreign import ccall safe "hs_bindgen_852c5838ad09c290" hs_bindgen_852c5838ad09c290 :: + Ptr.Ptr Botan_hotp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_hotp_init' +-} +botan_hotp_init_wrapper :: + Ptr.Ptr Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hash_algo@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @digits@ + -> IO FC.CInt +botan_hotp_init_wrapper = hs_bindgen_852c5838ad09c290 + +{-| Initialize a HOTP instance + +__C declaration:__ @botan_hotp_init@ + +__defined at:__ @botan\/ffi.h:2321:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_init :: + Ptr.Ptr Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hash_algo@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @digits@ + -> IO FC.CInt +botan_hotp_init = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr5 -> + hs_bindgen_852c5838ad09c290 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_hotp_destroy@ +foreign import ccall safe "hs_bindgen_d3c3b633a3cf124d" hs_bindgen_d3c3b633a3cf124d :: + Botan_hotp_t + -> IO FC.CInt + +{-| Destroy a HOTP instance + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_hotp_destroy@ + +__defined at:__ @botan\/ffi.h:2328:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_destroy :: + Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> IO FC.CInt +botan_hotp_destroy = hs_bindgen_d3c3b633a3cf124d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_hotp_generate@ +foreign import ccall safe "hs_bindgen_4a89c0aa91eaaf40" hs_bindgen_4a89c0aa91eaaf40 :: + Botan_hotp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> HsBindgen.Runtime.Prelude.Word64 + -> IO FC.CInt + +{-| Generate a HOTP code for the provided counter + +__C declaration:__ @botan_hotp_generate@ + +__defined at:__ @botan\/ffi.h:2334:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_generate :: + Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @hotp_code@ + -> HsBindgen.Runtime.Prelude.Word64 + -- ^ __C declaration:__ @hotp_counter@ + -> IO FC.CInt +botan_hotp_generate = hs_bindgen_4a89c0aa91eaaf40 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_hotp_check@ +foreign import ccall safe "hs_bindgen_b683ed0d4ec6c5a1" hs_bindgen_b683ed0d4ec6c5a1 :: + Botan_hotp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word64 + -> HsBindgen.Runtime.Prelude.Word32 + -> HsBindgen.Runtime.Prelude.Word64 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Verify a HOTP code + +__C declaration:__ @botan_hotp_check@ + +__defined at:__ @botan\/ffi.h:2340:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hotp_check :: + Botan_hotp_t + -- ^ __C declaration:__ @hotp@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word64 + -- ^ __C declaration:__ @next_hotp_counter@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @hotp_code@ + -> HsBindgen.Runtime.Prelude.Word64 + -- ^ __C declaration:__ @hotp_counter@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @resync_range@ + -> IO FC.CInt +botan_hotp_check = hs_bindgen_b683ed0d4ec6c5a1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_totp_init@ +foreign import ccall safe "hs_bindgen_972c57250b3c82bb" hs_bindgen_972c57250b3c82bb :: + Ptr.Ptr Botan_totp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_totp_init' +-} +botan_totp_init_wrapper :: + Ptr.Ptr Botan_totp_t + -- ^ __C declaration:__ @totp@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hash_algo@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @digits@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @time_step@ + -> IO FC.CInt +botan_totp_init_wrapper = hs_bindgen_972c57250b3c82bb + +{-| Initialize a TOTP instance + +__C declaration:__ @botan_totp_init@ + +__defined at:__ @botan\/ffi.h:2353:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_init :: + Ptr.Ptr Botan_totp_t + -- ^ __C declaration:__ @totp@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @hash_algo@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @digits@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @time_step@ + -> IO FC.CInt +botan_totp_init = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr6 -> + hs_bindgen_972c57250b3c82bb x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x2 x3 x4 x5) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_totp_destroy@ +foreign import ccall safe "hs_bindgen_ca6fee243b1e3577" hs_bindgen_ca6fee243b1e3577 :: + Botan_totp_t + -> IO FC.CInt + +{-| Destroy a TOTP instance + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_totp_destroy@ + +__defined at:__ @botan\/ffi.h:2361:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_destroy :: + Botan_totp_t + -- ^ __C declaration:__ @totp@ + -> IO FC.CInt +botan_totp_destroy = hs_bindgen_ca6fee243b1e3577 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_totp_generate@ +foreign import ccall safe "hs_bindgen_457c8b55f8083369" hs_bindgen_457c8b55f8083369 :: + Botan_totp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> HsBindgen.Runtime.Prelude.Word64 + -> IO FC.CInt + +{-| Generate a TOTP code for the provided timestamp + + [__@totp@ /(input)/__]: the TOTP object + + [__@totp_code@ /(input)/__]: the OTP code will be written here + + [__@timestamp@ /(input)/__]: the current local timestamp + +__C declaration:__ @botan_totp_generate@ + +__defined at:__ @botan\/ffi.h:2370:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_generate :: + Botan_totp_t + {- ^ + + [__@totp@ /(input)/__]: the TOTP object + + __C declaration:__ @totp@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + {- ^ + + [__@totp_code@ /(input)/__]: the OTP code will be written here + + __C declaration:__ @totp_code@ + -} + -> HsBindgen.Runtime.Prelude.Word64 + {- ^ + + [__@timestamp@ /(input)/__]: the current local timestamp + + __C declaration:__ @timestamp@ + -} + -> IO FC.CInt +botan_totp_generate = hs_bindgen_457c8b55f8083369 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_totp_check@ +foreign import ccall safe "hs_bindgen_40ceed308c27d4fe" hs_bindgen_40ceed308c27d4fe :: + Botan_totp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> HsBindgen.Runtime.Prelude.Word64 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Verify a TOTP code + + [__@totp@ /(input)/__]: the TOTP object + + [__@totp_code@ /(input)/__]: the presented OTP + + [__@timestamp@ /(input)/__]: the current local timestamp + + [__@acceptable_clock_drift@ /(input)/__]: specifies the acceptable amount of clock drift (in terms of time steps) between the two hosts. + +__C declaration:__ @botan_totp_check@ + +__defined at:__ @botan\/ffi.h:2381:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_totp_check :: + Botan_totp_t + {- ^ + + [__@totp@ /(input)/__]: the TOTP object + + __C declaration:__ @totp@ + -} + -> HsBindgen.Runtime.Prelude.Word32 + {- ^ + + [__@totp_code@ /(input)/__]: the presented OTP + + __C declaration:__ @totp_code@ + -} + -> HsBindgen.Runtime.Prelude.Word64 + {- ^ + + [__@timestamp@ /(input)/__]: the current local timestamp + + __C declaration:__ @timestamp@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@acceptable_clock_drift@ /(input)/__]: specifies the acceptable amount of clock drift (in terms of time steps) between the two hosts. + + __C declaration:__ @acceptable_clock_drift@ + -} + -> IO FC.CInt +botan_totp_check = hs_bindgen_40ceed308c27d4fe + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_fpe_fe1_init@ +foreign import ccall safe "hs_bindgen_e98bfe7438ca4285" hs_bindgen_e98bfe7438ca4285 :: + Ptr.Ptr Botan_fpe_t + -> Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| Pointer-based API for 'botan_fpe_fe1_init' +-} +botan_fpe_fe1_init_wrapper :: + Ptr.Ptr Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> Botan_mp_t + -- ^ __C declaration:__ @n@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @rounds@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_fpe_fe1_init_wrapper = + hs_bindgen_e98bfe7438ca4285 + +{-| __C declaration:__ @botan_fpe_fe1_init@ + + __defined at:__ @botan\/ffi.h:2392:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_fpe_fe1_init :: + Ptr.Ptr Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> Botan_mp_t + -- ^ __C declaration:__ @n@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @rounds@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_fpe_fe1_init = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + HsBindgen.Runtime.IncompleteArray.withPtr x2 (\ptr6 -> + hs_bindgen_e98bfe7438ca4285 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr6) x3 x4 x5) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_fpe_destroy@ +foreign import ccall safe "hs_bindgen_b9aff20b0fb962d9" hs_bindgen_b9aff20b0fb962d9 :: + Botan_fpe_t + -> IO FC.CInt + +{-| + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_fpe_destroy@ + +__defined at:__ @botan\/ffi.h:2399:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_fpe_destroy :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> IO FC.CInt +botan_fpe_destroy = hs_bindgen_b9aff20b0fb962d9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_fpe_encrypt@ +foreign import ccall safe "hs_bindgen_c666ef92203c7884" hs_bindgen_c666ef92203c7884 :: + Botan_fpe_t + -> Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_fpe_encrypt' +-} +botan_fpe_encrypt_wrapper :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @tweak@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @tweak_len@ + -> IO FC.CInt +botan_fpe_encrypt_wrapper = + hs_bindgen_c666ef92203c7884 + +{-| __C declaration:__ @botan_fpe_encrypt@ + + __defined at:__ @botan\/ffi.h:2402:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_fpe_encrypt :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @tweak@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @tweak_len@ + -> IO FC.CInt +botan_fpe_encrypt = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + HsBindgen.Runtime.IncompleteArray.withPtr x2 (\ptr4 -> + hs_bindgen_c666ef92203c7884 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_fpe_decrypt@ +foreign import ccall safe "hs_bindgen_6105239524583e42" hs_bindgen_6105239524583e42 :: + Botan_fpe_t + -> Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_fpe_decrypt' +-} +botan_fpe_decrypt_wrapper :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @tweak@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @tweak_len@ + -> IO FC.CInt +botan_fpe_decrypt_wrapper = + hs_bindgen_6105239524583e42 + +{-| __C declaration:__ @botan_fpe_decrypt@ + + __defined at:__ @botan\/ffi.h:2405:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_fpe_decrypt :: + Botan_fpe_t + -- ^ __C declaration:__ @fpe@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @tweak@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @tweak_len@ + -> IO FC.CInt +botan_fpe_decrypt = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + HsBindgen.Runtime.IncompleteArray.withPtr x2 (\ptr4 -> + hs_bindgen_6105239524583e42 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x3) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_srp6_server_session_init@ +foreign import ccall safe "hs_bindgen_e0503e53e90fffa8" hs_bindgen_e0503e53e90fffa8 :: + Ptr.Ptr Botan_srp6_server_session_t + -> IO FC.CInt + +{-| Initialize an SRP-6 server session object + + [__@srp6@ /(input)/__]: SRP-6 server session object + +__C declaration:__ @botan_srp6_server_session_init@ + +__defined at:__ @botan\/ffi.h:2417:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_srp6_server_session_init :: + Ptr.Ptr Botan_srp6_server_session_t + {- ^ + + [__@srp6@ /(input)/__]: SRP-6 server session object + + __C declaration:__ @srp6@ + -} + -> IO FC.CInt +botan_srp6_server_session_init = + hs_bindgen_e0503e53e90fffa8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_srp6_server_session_destroy@ +foreign import ccall safe "hs_bindgen_c6c1ec03c1693fa9" hs_bindgen_c6c1ec03c1693fa9 :: + Botan_srp6_server_session_t + -> IO FC.CInt + +{-| Frees all resources of the SRP-6 server session object + + [__@srp6@ /(input)/__]: SRP-6 server session object + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_srp6_server_session_destroy@ + +__defined at:__ @botan\/ffi.h:2425:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_srp6_server_session_destroy :: + Botan_srp6_server_session_t + {- ^ + + [__@srp6@ /(input)/__]: SRP-6 server session object + + __C declaration:__ @srp6@ + -} + -> IO FC.CInt +botan_srp6_server_session_destroy = + hs_bindgen_c6c1ec03c1693fa9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_srp6_server_session_step1@ +foreign import ccall safe "hs_bindgen_2fcfbb2deeb49da7" hs_bindgen_2fcfbb2deeb49da7 :: + Botan_srp6_server_session_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Botan_rng_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_srp6_server_session_step1' +-} +botan_srp6_server_session_step1_wrapper :: + Botan_srp6_server_session_t + {- ^ + + [__@srp6@ /(input)/__]: SRP-6 server session object + + __C declaration:__ @srp6@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@verifier@ /(input)/__]: the verification value saved from client registration + + __C declaration:__ @verifier@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@verifier_len@ /(input)/__]: SRP-6 verifier value length + + __C declaration:__ @verifier_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@group_id@ /(input)/__]: the SRP group id + + __C declaration:__ @group_id@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@hash_id@ /(input)/__]: the SRP hash in use + + __C declaration:__ @hash_id@ + -} + -> Botan_rng_t + {- ^ + + [__@rng_obj@ /(input)/__]: a random number generator object + + __C declaration:__ @rng_obj@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @b_pub@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @b_pub_len@ + -> IO FC.CInt +botan_srp6_server_session_step1_wrapper = + hs_bindgen_2fcfbb2deeb49da7 + +{-| SRP-6 Server side step 1 + + [__@srp6@ /(input)/__]: SRP-6 server session object + + [__@verifier@ /(input)/__]: the verification value saved from client registration + + [__@verifier_len@ /(input)/__]: SRP-6 verifier value length + + [__@group_id@ /(input)/__]: the SRP group id + + [__@hash_id@ /(input)/__]: the SRP hash in use + + [__@rng_obj@ /(input)/__]: a random number generator object + + [__@B_pub@ /(input)/__]: out buffer to store the SRP-6 B value + + [__@B_pub_len@ /(input)/__]: SRP-6 B value length + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_srp6_server_session_step1@ + +__defined at:__ @botan\/ffi.h:2440:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_srp6_server_session_step1 :: + Botan_srp6_server_session_t + {- ^ + + [__@srp6@ /(input)/__]: SRP-6 server session object + + __C declaration:__ @srp6@ + -} + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@verifier@ /(input)/__]: the verification value saved from client registration + + __C declaration:__ @verifier@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@verifier_len@ /(input)/__]: SRP-6 verifier value length + + __C declaration:__ @verifier_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@group_id@ /(input)/__]: the SRP group id + + __C declaration:__ @group_id@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@hash_id@ /(input)/__]: the SRP hash in use + + __C declaration:__ @hash_id@ + -} + -> Botan_rng_t + {- ^ + + [__@rng_obj@ /(input)/__]: a random number generator object + + __C declaration:__ @rng_obj@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @b_pub@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @b_pub_len@ + -> IO FC.CInt +botan_srp6_server_session_step1 = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr8 -> + hs_bindgen_2fcfbb2deeb49da7 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x2 x3 x4 x5 x6 x7) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_srp6_server_session_step2@ +foreign import ccall safe "hs_bindgen_0efb4c6864585f21" hs_bindgen_0efb4c6864585f21 :: + Botan_srp6_server_session_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_srp6_server_session_step2' +-} +botan_srp6_server_session_step2_wrapper :: + Botan_srp6_server_session_t + {- ^ + + [__@srp6@ /(input)/__]: SRP-6 server session object + + __C declaration:__ @srp6@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @a@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @a_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@key@ /(input)/__]: out buffer to store the symmetric key value + + __C declaration:__ @key@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@key_len@ /(input)/__]: symmetric key length + + __C declaration:__ @key_len@ + -} + -> IO FC.CInt +botan_srp6_server_session_step2_wrapper = + hs_bindgen_0efb4c6864585f21 + +{-| SRP-6 Server side step 2 + + [__@srp6@ /(input)/__]: SRP-6 server session object + + [__@A@ /(input)/__]: the client's value + + [__@A_len@ /(input)/__]: the client's value length + + [__@key@ /(input)/__]: out buffer to store the symmetric key value + + [__@key_len@ /(input)/__]: symmetric key length + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_srp6_server_session_step2@ + +__defined at:__ @botan\/ffi.h:2459:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_srp6_server_session_step2 :: + Botan_srp6_server_session_t + {- ^ + + [__@srp6@ /(input)/__]: SRP-6 server session object + + __C declaration:__ @srp6@ + -} + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @a@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @a_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@key@ /(input)/__]: out buffer to store the symmetric key value + + __C declaration:__ @key@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@key_len@ /(input)/__]: symmetric key length + + __C declaration:__ @key_len@ + -} + -> IO FC.CInt +botan_srp6_server_session_step2 = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr5 -> + hs_bindgen_0efb4c6864585f21 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr5) x2 x3 x4) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_srp6_generate_verifier@ +foreign import ccall safe "hs_bindgen_59607beb933ef898" hs_bindgen_59607beb933ef898 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_srp6_generate_verifier' +-} +botan_srp6_generate_verifier_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@identifier@ /(input)/__]: a username or other client identifier + + __C declaration:__ @identifier@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@password@ /(input)/__]: the secret used to authenticate user + + __C declaration:__ @password@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@salt@ /(input)/__]: a randomly chosen value, at least 128 bits long + + __C declaration:__ @salt@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@salt_len@ /(input)/__]: the length of salt + + __C declaration:__ @salt_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@group_id@ /(input)/__]: specifies the shared SRP group + + __C declaration:__ @group_id@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@hash_id@ /(input)/__]: specifies a secure hash function + + __C declaration:__ @hash_id@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@verifier@ /(input)/__]: out buffer to store the SRP-6 verifier value + + __C declaration:__ @verifier@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@verifier_len@ /(input)/__]: SRP-6 verifier value length + + __C declaration:__ @verifier_len@ + -} + -> IO FC.CInt +botan_srp6_generate_verifier_wrapper = + hs_bindgen_59607beb933ef898 + +{-| Generate a new SRP-6 verifier + + [__@identifier@ /(input)/__]: a username or other client identifier + + [__@password@ /(input)/__]: the secret used to authenticate user + + [__@salt@ /(input)/__]: a randomly chosen value, at least 128 bits long + + [__@salt_len@ /(input)/__]: the length of salt + + [__@group_id@ /(input)/__]: specifies the shared SRP group + + [__@hash_id@ /(input)/__]: specifies a secure hash function + + [__@verifier@ /(input)/__]: out buffer to store the SRP-6 verifier value + + [__@verifier_len@ /(input)/__]: SRP-6 verifier value length + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_srp6_generate_verifier@ + +__defined at:__ @botan\/ffi.h:2475:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_srp6_generate_verifier :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@identifier@ /(input)/__]: a username or other client identifier + + __C declaration:__ @identifier@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@password@ /(input)/__]: the secret used to authenticate user + + __C declaration:__ @password@ + -} + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@salt@ /(input)/__]: a randomly chosen value, at least 128 bits long + + __C declaration:__ @salt@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@salt_len@ /(input)/__]: the length of salt + + __C declaration:__ @salt_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@group_id@ /(input)/__]: specifies the shared SRP group + + __C declaration:__ @group_id@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@hash_id@ /(input)/__]: specifies a secure hash function + + __C declaration:__ @hash_id@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@verifier@ /(input)/__]: out buffer to store the SRP-6 verifier value + + __C declaration:__ @verifier@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@verifier_len@ /(input)/__]: SRP-6 verifier value length + + __C declaration:__ @verifier_len@ + -} + -> IO FC.CInt +botan_srp6_generate_verifier = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + HsBindgen.Runtime.IncompleteArray.withPtr x2 (\ptr8 -> + hs_bindgen_59607beb933ef898 x0 x1 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x3 x4 x5 x6 x7) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_srp6_client_agree@ +foreign import ccall safe "hs_bindgen_b664473db95a85b9" hs_bindgen_b664473db95a85b9 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Botan_rng_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_srp6_client_agree' +-} +botan_srp6_client_agree_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@username@ /(input)/__]: the username we are attempting login for + + __C declaration:__ @username@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@password@ /(input)/__]: the password we are attempting to use + + __C declaration:__ @password@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@group_id@ /(input)/__]: specifies the shared SRP group + + __C declaration:__ @group_id@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@hash_id@ /(input)/__]: specifies a secure hash function + + __C declaration:__ @hash_id@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@salt@ /(input)/__]: is the salt value sent by the server + + __C declaration:__ @salt@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@salt_len@ /(input)/__]: the length of salt + + __C declaration:__ @salt_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @b@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @b_len@ + -> Botan_rng_t + {- ^ + + [__@rng_obj@ /(input)/__]: is a random number generator object + + __C declaration:__ @rng_obj@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @a@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @a_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @k@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @k_len@ + -> IO FC.CInt +botan_srp6_client_agree_wrapper = + hs_bindgen_b664473db95a85b9 + +{-| SRP6a Client side + + [__@username@ /(input)/__]: the username we are attempting login for + + [__@password@ /(input)/__]: the password we are attempting to use + + [__@group_id@ /(input)/__]: specifies the shared SRP group + + [__@hash_id@ /(input)/__]: specifies a secure hash function + + [__@salt@ /(input)/__]: is the salt value sent by the server + + [__@salt_len@ /(input)/__]: the length of salt + + [__@B@ /(input)/__]: is the server's public value + + [__@B_len@ /(input)/__]: is the server's public value length + + [__@rng_obj@ /(input)/__]: is a random number generator object + + [__@A@ /(input)/__]: out buffer to store the SRP-6 A value + + [__@A_len@ /(input)/__]: SRP-6 A verifier value length + + [__@K@ /(input)/__]: out buffer to store the symmetric value + + [__@K_len@ /(input)/__]: symmetric key length + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_srp6_client_agree@ + +__defined at:__ @botan\/ffi.h:2502:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_srp6_client_agree :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@username@ /(input)/__]: the username we are attempting login for + + __C declaration:__ @username@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@password@ /(input)/__]: the password we are attempting to use + + __C declaration:__ @password@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@group_id@ /(input)/__]: specifies the shared SRP group + + __C declaration:__ @group_id@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@hash_id@ /(input)/__]: specifies a secure hash function + + __C declaration:__ @hash_id@ + -} + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@salt@ /(input)/__]: is the salt value sent by the server + + __C declaration:__ @salt@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@salt_len@ /(input)/__]: the length of salt + + __C declaration:__ @salt_len@ + -} + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @b@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @b_len@ + -> Botan_rng_t + {- ^ + + [__@rng_obj@ /(input)/__]: is a random number generator object + + __C declaration:__ @rng_obj@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @a@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @a_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @k@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @k_len@ + -> IO FC.CInt +botan_srp6_client_agree = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + \x8 -> + \x9 -> + \x10 -> + \x11 -> + \x12 -> + HsBindgen.Runtime.IncompleteArray.withPtr x6 (\ptr13 -> + HsBindgen.Runtime.IncompleteArray.withPtr x4 (\ptr14 -> + hs_bindgen_b664473db95a85b9 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr14) x5 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr13) x7 x8 x9 x10 x11 x12)) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_srp6_group_size@ +foreign import ccall safe "hs_bindgen_d1fa7894a3d81e81" hs_bindgen_d1fa7894a3d81e81 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Return the size, in bytes, of the prime associated with group_id + +__C declaration:__ @botan_srp6_group_size@ + +__defined at:__ @botan\/ffi.h:2520:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_srp6_group_size :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @group_id@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @group_p_bytes@ + -> IO FC.CInt +botan_srp6_group_size = hs_bindgen_d1fa7894a3d81e81 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_zfec_encode@ +foreign import ccall safe "hs_bindgen_7febe65ddc075039" hs_bindgen_7febe65ddc075039 :: + HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) + -> IO FC.CInt + +{-| Encode some bytes with certain ZFEC parameters. + + [__@K@ /(input)/__]: the number of shares needed for recovery + + [__@N@ /(input)/__]: the number of shares generated + + [__@input@ /(input)/__]: the data to FEC + + [__@size@ /(input)/__]: the length in bytes of input, which must be a multiple of K + + [__@outputs@ /(input)/__]: An out parameter pointing to a fully allocated array of size [N][size / K]. For all n in range, an encoded block will be written to the memory starting at outputs[n][0]. + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_zfec_encode@ + +__defined at:__ @botan\/ffi.h:2541:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_zfec_encode :: + HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @k@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @n@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@input@ /(input)/__]: the data to FEC + + __C declaration:__ @input@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@size@ /(input)/__]: the length in bytes of input, which must be a multiple of K + + __C declaration:__ @size@ + -} + -> Ptr.Ptr (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) + {- ^ + + [__@outputs@ /(input)/__]: An out parameter pointing to a fully allocated array of size [N][size / K]. For all n in range, an encoded block will be written to the memory starting at outputs[n][0]. + + __C declaration:__ @outputs@ + -} + -> IO FC.CInt +botan_zfec_encode = hs_bindgen_7febe65ddc075039 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_zfec_decode@ +foreign import ccall safe "hs_bindgen_9d044a0dcd4cd660" hs_bindgen_9d044a0dcd4cd660 :: + HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) + -> IO FC.CInt + +{-| Decode some previously encoded shares using certain ZFEC parameters. + + [__@K@ /(input)/__]: the number of shares needed for recovery + + [__@N@ /(input)/__]: the total number of shares + + [__@indexes@ /(input)/__]: The index into the encoder's outputs for the corresponding element of the inputs array. Must be of length K. + + [__@inputs@ /(input)/__]: K previously encoded shares to decode + + [__@shareSize@ /(input)/__]: the length in bytes of each input + + [__@outputs@ /(input)/__]: An out parameter pointing to a fully allocated array of size [K][shareSize]. For all k in range, a decoded block will written to the memory starting at outputs[k][0]. + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_zfec_decode@ + +__defined at:__ @botan\/ffi.h:2562:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_zfec_decode :: + HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @k@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @n@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@indexes@ /(input)/__]: The index into the encoder's outputs for the corresponding element of the inputs array. Must be of length K. + + __C declaration:__ @indexes@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) + {- ^ + + [__@inputs@ /(input)/__]: K previously encoded shares to decode + + __C declaration:__ @inputs@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@shareSize@ /(input)/__]: the length in bytes of each input + + __C declaration:__ @shareSize@ + -} + -> Ptr.Ptr (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) + {- ^ + + [__@outputs@ /(input)/__]: An out parameter pointing to a fully allocated array of size [K][shareSize]. For all k in range, a decoded block will written to the memory starting at outputs[k][0]. + + __C declaration:__ @outputs@ + -} + -> IO FC.CInt +botan_zfec_decode = hs_bindgen_9d044a0dcd4cd660 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_tpm2_supports_crypto_backend@ +foreign import ccall safe "hs_bindgen_4b07134e29ccacf1" hs_bindgen_4b07134e29ccacf1 :: + IO FC.CInt + +{-| Checks if Botan's TSS2 crypto backend can be used in this build + + __returns:__ 1 if the crypto backend can be enabled + +__C declaration:__ @botan_tpm2_supports_crypto_backend@ + +__defined at:__ @botan\/ffi.h:2587:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_supports_crypto_backend :: IO FC.CInt +botan_tpm2_supports_crypto_backend = + hs_bindgen_4b07134e29ccacf1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_tpm2_ctx_init@ +foreign import ccall safe "hs_bindgen_d7d3aef6a1e06649" hs_bindgen_d7d3aef6a1e06649 :: + Ptr.Ptr Botan_tpm2_ctx_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Initialize a TPM2 context + + [__@ctx_out@ /(input)/__]: output TPM2 context + + [__@tcti_nameconf@ /(input)/__]: TCTI config (may be nullptr) + + __returns:__ 0 on success + +__C declaration:__ @botan_tpm2_ctx_init@ + +__defined at:__ @botan\/ffi.h:2595:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_ctx_init :: + Ptr.Ptr Botan_tpm2_ctx_t + {- ^ + + [__@ctx_out@ /(input)/__]: output TPM2 context + + __C declaration:__ @ctx_out@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@tcti_nameconf@ /(input)/__]: TCTI config (may be nullptr) + + __C declaration:__ @tcti_nameconf@ + -} + -> IO FC.CInt +botan_tpm2_ctx_init = hs_bindgen_d7d3aef6a1e06649 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_tpm2_ctx_init_ex@ +foreign import ccall safe "hs_bindgen_52725536689991e6" hs_bindgen_52725536689991e6 :: + Ptr.Ptr Botan_tpm2_ctx_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Initialize a TPM2 context + + [__@ctx_out@ /(input)/__]: output TPM2 context + + [__@tcti_name@ /(input)/__]: TCTI name (may be nullptr) + + [__@tcti_conf@ /(input)/__]: TCTI config (may be nullptr) + + __returns:__ 0 on success + +__C declaration:__ @botan_tpm2_ctx_init_ex@ + +__defined at:__ @botan\/ffi.h:2605:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_ctx_init_ex :: + Ptr.Ptr Botan_tpm2_ctx_t + {- ^ + + [__@ctx_out@ /(input)/__]: output TPM2 context + + __C declaration:__ @ctx_out@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@tcti_name@ /(input)/__]: TCTI name (may be nullptr) + + __C declaration:__ @tcti_name@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@tcti_conf@ /(input)/__]: TCTI config (may be nullptr) + + __C declaration:__ @tcti_conf@ + -} + -> IO FC.CInt +botan_tpm2_ctx_init_ex = hs_bindgen_52725536689991e6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_tpm2_ctx_from_esys@ +foreign import ccall safe "hs_bindgen_7e25798379877c21" hs_bindgen_7e25798379877c21 :: + Ptr.Ptr Botan_tpm2_ctx_t + -> Ptr.Ptr ESYS_CONTEXT + -> IO FC.CInt + +{-| Wrap an existing ESYS_CONTEXT for use in Botan. Note that destroying the created botan_tpm2_ctx_t won't finalize @esys_ctx@ + + [__@ctx_out@ /(input)/__]: output TPM2 context + + [__@esys_ctx@ /(input)/__]: ESYS_CONTEXT to wrap + + __returns:__ 0 on success + +__C declaration:__ @botan_tpm2_ctx_from_esys@ + +__defined at:__ @botan\/ffi.h:2616:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_ctx_from_esys :: + Ptr.Ptr Botan_tpm2_ctx_t + {- ^ + + [__@ctx_out@ /(input)/__]: output TPM2 context + + __C declaration:__ @ctx_out@ + -} + -> Ptr.Ptr ESYS_CONTEXT + {- ^ + + [__@esys_ctx@ /(input)/__]: ESYS_CONTEXT to wrap + + __C declaration:__ @esys_ctx@ + -} + -> IO FC.CInt +botan_tpm2_ctx_from_esys = + hs_bindgen_7e25798379877c21 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_tpm2_ctx_enable_crypto_backend@ +foreign import ccall safe "hs_bindgen_64815a0555a55c1e" hs_bindgen_64815a0555a55c1e :: + Botan_tpm2_ctx_t + -> Botan_rng_t + -> IO FC.CInt + +{-| Enable Botan's TSS2 crypto backend that replaces the cryptographic functions required for the communication with the TPM with implementations provided by Botan instead of using TSS' defaults OpenSSL or mbedTLS. Note that the provided @rng@ should not be dependent on the TPM and the caller must ensure that it remains usable for the lifetime of the @ctx.@ + + [__@ctx@ /(input)/__]: TPM2 context + + [__@rng@ /(input)/__]: random number generator to be used by the crypto backend + +__C declaration:__ @botan_tpm2_ctx_enable_crypto_backend@ + +__defined at:__ @botan\/ffi.h:2628:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_ctx_enable_crypto_backend :: + Botan_tpm2_ctx_t + {- ^ + + [__@ctx@ /(input)/__]: TPM2 context + + __C declaration:__ @ctx@ + -} + -> Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: random number generator to be used by the crypto backend + + __C declaration:__ @rng@ + -} + -> IO FC.CInt +botan_tpm2_ctx_enable_crypto_backend = + hs_bindgen_64815a0555a55c1e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_tpm2_ctx_destroy@ +foreign import ccall safe "hs_bindgen_6fc65e7cadce387b" hs_bindgen_6fc65e7cadce387b :: + Botan_tpm2_ctx_t + -> IO FC.CInt + +{-| Frees all resources of a TPM2 context + + [__@ctx@ /(input)/__]: TPM2 context + + __returns:__ 0 on success + +__C declaration:__ @botan_tpm2_ctx_destroy@ + +__defined at:__ @botan\/ffi.h:2635:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_ctx_destroy :: + Botan_tpm2_ctx_t + {- ^ + + [__@ctx@ /(input)/__]: TPM2 context + + __C declaration:__ @ctx@ + -} + -> IO FC.CInt +botan_tpm2_ctx_destroy = hs_bindgen_6fc65e7cadce387b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_tpm2_enable_crypto_backend@ +foreign import ccall safe "hs_bindgen_eb450047e23423af" hs_bindgen_eb450047e23423af :: + Ptr.Ptr Botan_tpm2_crypto_backend_state_t + -> Ptr.Ptr ESYS_CONTEXT + -> Botan_rng_t + -> IO FC.CInt + +{-| Use this if you just need Botan's crypto backend but do not want to wrap any other ESYS functionality using Botan's TPM2 wrapper. A Crypto Backend State is created that the user needs to keep alive for as long as the crypto backend is used and needs to be destroyed after. Note that the provided @rng@ should not be dependent on the TPM and the caller must ensure that it remains usable for the lifetime of the @esys_ctx.@ + + [__@cbs_out@ /(input)/__]: To be created Crypto Backend State + + [__@esys_ctx@ /(input)/__]: TPM2 context + + [__@rng@ /(input)/__]: random number generator to be used by the crypto backend + +__C declaration:__ @botan_tpm2_enable_crypto_backend@ + +__defined at:__ @botan\/ffi.h:2649:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_enable_crypto_backend :: + Ptr.Ptr Botan_tpm2_crypto_backend_state_t + {- ^ + + [__@cbs_out@ /(input)/__]: To be created Crypto Backend State + + __C declaration:__ @cbs_out@ + -} + -> Ptr.Ptr ESYS_CONTEXT + {- ^ + + [__@esys_ctx@ /(input)/__]: TPM2 context + + __C declaration:__ @esys_ctx@ + -} + -> Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: random number generator to be used by the crypto backend + + __C declaration:__ @rng@ + -} + -> IO FC.CInt +botan_tpm2_enable_crypto_backend = + hs_bindgen_eb450047e23423af + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_tpm2_crypto_backend_state_destroy@ +foreign import ccall safe "hs_bindgen_5f0c3d836ccabcf9" hs_bindgen_5f0c3d836ccabcf9 :: + Botan_tpm2_crypto_backend_state_t + -> IO FC.CInt + +{-| Frees all resources of a TPM2 Crypto Callback State Note that this does not attempt to de-register the crypto backend, it just frees the resource pointed to by @cbs.@ Use the ESAPI function ``Esys_SetCryptoCallbacks(ctx, nullptr)`` to deregister manually. + + [__@cbs@ /(input)/__]: TPM2 Crypto Callback State + + __returns:__ 0 on success + +__C declaration:__ @botan_tpm2_crypto_backend_state_destroy@ + +__defined at:__ @botan\/ffi.h:2661:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_crypto_backend_state_destroy :: + Botan_tpm2_crypto_backend_state_t + {- ^ + + [__@cbs@ /(input)/__]: TPM2 Crypto Callback State + + __C declaration:__ @cbs@ + -} + -> IO FC.CInt +botan_tpm2_crypto_backend_state_destroy = + hs_bindgen_5f0c3d836ccabcf9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_tpm2_rng_init@ +foreign import ccall safe "hs_bindgen_16a884ec96f98d6e" hs_bindgen_16a884ec96f98d6e :: + Ptr.Ptr Botan_rng_t + -> Botan_tpm2_ctx_t + -> Botan_tpm2_session_t + -> Botan_tpm2_session_t + -> Botan_tpm2_session_t + -> IO FC.CInt + +{-| Initialize a random number generator object via TPM2 + + [__@rng_out@ /(input)/__]: rng object to create + + [__@ctx@ /(input)/__]: TPM2 context + + [__@s1@ /(input)/__]: the first session to use (optional, may be nullptr) + + [__@s2@ /(input)/__]: the second session to use (optional, may be nullptr) + + [__@s3@ /(input)/__]: the third session to use (optional, may be nullptr) + +__C declaration:__ @botan_tpm2_rng_init@ + +__defined at:__ @botan\/ffi.h:2672:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_rng_init :: + Ptr.Ptr Botan_rng_t + {- ^ + + [__@rng_out@ /(input)/__]: rng object to create + + __C declaration:__ @rng_out@ + -} + -> Botan_tpm2_ctx_t + {- ^ + + [__@ctx@ /(input)/__]: TPM2 context + + __C declaration:__ @ctx@ + -} + -> Botan_tpm2_session_t + {- ^ + + [__@s1@ /(input)/__]: the first session to use (optional, may be nullptr) + + __C declaration:__ @s1@ + -} + -> Botan_tpm2_session_t + {- ^ + + [__@s2@ /(input)/__]: the second session to use (optional, may be nullptr) + + __C declaration:__ @s2@ + -} + -> Botan_tpm2_session_t + {- ^ + + [__@s3@ /(input)/__]: the third session to use (optional, may be nullptr) + + __C declaration:__ @s3@ + -} + -> IO FC.CInt +botan_tpm2_rng_init = hs_bindgen_16a884ec96f98d6e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_tpm2_unauthenticated_session_init@ +foreign import ccall safe "hs_bindgen_f647fd9481a906cf" hs_bindgen_f647fd9481a906cf :: + Ptr.Ptr Botan_tpm2_session_t + -> Botan_tpm2_ctx_t + -> IO FC.CInt + +{-| Create an unauthenticated session for use with TPM2 + + [__@session_out@ /(input)/__]: the session object to create + + [__@ctx@ /(input)/__]: TPM2 context + +__C declaration:__ @botan_tpm2_unauthenticated_session_init@ + +__defined at:__ @botan\/ffi.h:2684:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_unauthenticated_session_init :: + Ptr.Ptr Botan_tpm2_session_t + {- ^ + + [__@session_out@ /(input)/__]: the session object to create + + __C declaration:__ @session_out@ + -} + -> Botan_tpm2_ctx_t + {- ^ + + [__@ctx@ /(input)/__]: TPM2 context + + __C declaration:__ @ctx@ + -} + -> IO FC.CInt +botan_tpm2_unauthenticated_session_init = + hs_bindgen_f647fd9481a906cf + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Safe_botan_tpm2_session_destroy@ +foreign import ccall safe "hs_bindgen_002a582452ce8be7" hs_bindgen_002a582452ce8be7 :: + Botan_tpm2_session_t + -> IO FC.CInt + +{-| Create an unauthenticated session for use with TPM2 + + [__@session@ /(input)/__]: the session object to destroy + +__C declaration:__ @botan_tpm2_session_destroy@ + +__defined at:__ @botan\/ffi.h:2691:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_tpm2_session_destroy :: + Botan_tpm2_session_t + {- ^ + + [__@session@ /(input)/__]: the session object to destroy + + __C declaration:__ @session@ + -} + -> IO FC.CInt +botan_tpm2_session_destroy = + hs_bindgen_002a582452ce8be7 diff --git a/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_10_0/Unsafe.hs b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_10_0/Unsafe.hs new file mode 100644 index 0000000..2cbca73 --- /dev/null +++ b/botan-bindings/src-generated/Botan/Bindings/Generated/Botan_3_10_0/Unsafe.hs @@ -0,0 +1,15174 @@ +{-# LANGUAGE CApiFFI #-} +{-# LANGUAGE DataKinds #-} +{-# LANGUAGE NoImplicitPrelude #-} +{-# LANGUAGE TemplateHaskell #-} +{-# OPTIONS_HADDOCK prune #-} + +module Botan.Bindings.Generated.Botan_3_10_0.Unsafe where + +import Botan.Bindings.Generated.Botan_3_10_0 +import Data.Void (Void) +import qualified Foreign.C as FC +import qualified GHC.Ptr as Ptr +import qualified HsBindgen.Runtime.ConstantArray +import qualified HsBindgen.Runtime.ConstPtr +import qualified HsBindgen.Runtime.IncompleteArray +import qualified HsBindgen.Runtime.Prelude +import Prelude (IO) + +$(HsBindgen.Runtime.Prelude.addCSource (HsBindgen.Runtime.Prelude.unlines + [ "#include " + , "char const *hs_bindgen_ffe02b347e2ec187 (" + , " signed int arg1" + , ")" + , "{" + , " return botan_error_description(arg1);" + , "}" + , "char const *hs_bindgen_a8c0f78d255a6596 (void)" + , "{" + , " return botan_error_last_exception_message();" + , "}" + , "uint32_t hs_bindgen_7e0a77d0414219c5 (void)" + , "{" + , " return botan_ffi_api_version();" + , "}" + , "signed int hs_bindgen_af896fb4c5f7ee33 (" + , " uint32_t arg1" + , ")" + , "{" + , " return botan_ffi_supports_api(arg1);" + , "}" + , "char const *hs_bindgen_1428416ce783b96c (void)" + , "{" + , " return botan_version_string();" + , "}" + , "uint32_t hs_bindgen_68fbab04846d5bb2 (void)" + , "{" + , " return botan_version_major();" + , "}" + , "uint32_t hs_bindgen_86ee0cc230e40d55 (void)" + , "{" + , " return botan_version_minor();" + , "}" + , "uint32_t hs_bindgen_2a352d2a9718f730 (void)" + , "{" + , " return botan_version_patch();" + , "}" + , "uint32_t hs_bindgen_3087cbd4d497d336 (void)" + , "{" + , " return botan_version_datestamp();" + , "}" + , "signed int hs_bindgen_67315902ddd00f90 (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_constant_time_compare(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5905b034caa8280d (" + , " uint8_t const *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_same_mem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_19703ab022452a1d (" + , " void *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_scrub_mem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_39420795533b6c27 (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_hex_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_35bcd71cd6d014c6 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_hex_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_a102eb7443f7867b (" + , " uint8_t const *arg1," + , " size_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_encode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_5eb2e2466f12c0d0 (" + , " char const *arg1," + , " size_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_base64_decode(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_c4e8b0fb26abdf30 (" + , " botan_rng_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_rng_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0c8d760271021ddb (" + , " botan_rng_t *arg1," + , " char const *arg2," + , " void *arg3," + , " signed int (*arg4) (" + , " void *arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")," + , " signed int (*arg5) (" + , " void *arg1," + , " uint8_t const arg2[]," + , " size_t arg3" + , ")," + , " void (*arg6) (" + , " void *arg1" + , ")" + , ")" + , "{" + , " return botan_rng_init_custom(arg1, arg2, arg3, arg4, arg5, arg6);" + , "}" + , "signed int hs_bindgen_fda413411c048d53 (" + , " botan_rng_t arg1," + , " uint8_t *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_get(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b21c661f2c6e313d (" + , " uint8_t *arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_system_rng_get(arg1, arg2);" + , "}" + , "signed int hs_bindgen_13fcf40434a04e2c (" + , " botan_rng_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_rng_reseed(arg1, arg2);" + , "}" + , "signed int hs_bindgen_59ba7f5d56671f90 (" + , " botan_rng_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_reseed_from_rng(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_276b4b0ce90ab937 (" + , " botan_rng_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_rng_add_entropy(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_dc534b1f4a21b368 (" + , " botan_rng_t arg1" + , ")" + , "{" + , " return botan_rng_destroy(arg1);" + , "}" + , "signed int hs_bindgen_9b5cdaa2dce4baed (" + , " botan_hash_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_hash_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ec77d900d1c91462 (" + , " botan_hash_t *arg1," + , " botan_hash_t arg2" + , ")" + , "{" + , " return botan_hash_copy_state(arg1, arg2);" + , "}" + , "signed int hs_bindgen_02f902ba46b2497d (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3b130931bdccb78f (" + , " botan_hash_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_hash_block_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3569c84aa6760fd6 (" + , " botan_hash_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_hash_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5c5ef16c270449c5 (" + , " botan_hash_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_hash_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7e0edf3a1d75f973 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_clear(arg1);" + , "}" + , "signed int hs_bindgen_84de35c8557b5375 (" + , " botan_hash_t arg1" + , ")" + , "{" + , " return botan_hash_destroy(arg1);" + , "}" + , "signed int hs_bindgen_a2306ab7635f6cb5 (" + , " botan_hash_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_hash_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3c405270be6daf1b (" + , " botan_mac_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mac_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b04b3168f2d7c0df (" + , " botan_mac_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mac_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1f2a80f456bb0d54 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d113b2ebfffcbf41 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_set_nonce(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_105ec9a2cb3af9a9 (" + , " botan_mac_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mac_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_27448f65c2a8de85 (" + , " botan_mac_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mac_final(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e7191711ff1c5333 (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_clear(arg1);" + , "}" + , "signed int hs_bindgen_9f1f7269675b87df (" + , " botan_mac_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_mac_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d042aa7cfeefa753 (" + , " botan_mac_t arg1," + , " size_t *arg2," + , " size_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_mac_get_keyspec(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_c260e2abd247b9df (" + , " botan_mac_t arg1" + , ")" + , "{" + , " return botan_mac_destroy(arg1);" + , "}" + , "signed int hs_bindgen_b1696496df52edc2 (" + , " botan_cipher_t *arg1," + , " char const *arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_cipher_init(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9606ecd5e3e0aa80 (" + , " botan_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_aea5493380af384c (" + , " botan_cipher_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_92da481280acf827 (" + , " botan_cipher_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_cipher_valid_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e4fa9941bc804913 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_tag_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f8ce8ce637a4c2db (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_is_authenticated(arg1);" + , "}" + , "signed int hs_bindgen_82145b037f3f6d22 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_requires_entire_message(arg1);" + , "}" + , "signed int hs_bindgen_9c0dd1bcd67ddae2 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_default_nonce_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7c8b28ff682b03a2 (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ff83476951f960fe (" + , " botan_cipher_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_cipher_get_ideal_update_granularity(arg1, arg2);" + , "}" + , "signed int hs_bindgen_116a373d20ba6337 (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_cipher_query_keylen(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4ca78aee4d5ee443 (" + , " botan_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_cipher_get_keyspec(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_1911b7b4610ee2e4 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ae576623c4e969e9 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_reset(arg1);" + , "}" + , "signed int hs_bindgen_dbe293f9d88248a2 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_set_associated_data(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_dfa839fa81b0ebe1 (" + , " botan_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_cipher_start(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_faf78b73586c5914 (" + , " botan_cipher_t arg1," + , " uint32_t arg2," + , " uint8_t *arg3," + , " size_t arg4," + , " size_t *arg5," + , " uint8_t const *arg6," + , " size_t arg7," + , " size_t *arg8" + , ")" + , "{" + , " return botan_cipher_update(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_097768b298c2be6d (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_5007ee527699a1c9 (" + , " botan_cipher_t arg1" + , ")" + , "{" + , " return botan_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_63fa0ce7dd69a6d4 (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t arg3," + , " char const *arg4," + , " uint8_t const *arg5," + , " size_t arg6," + , " size_t arg7" + , ")" + , "{" + , " return botan_pbkdf(arg1, arg2, arg3, arg4, arg5, arg6, arg7);" + , "}" + , "signed int hs_bindgen_f7c23b7144806140 (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t arg3," + , " char const *arg4," + , " uint8_t const *arg5," + , " size_t arg6," + , " size_t arg7," + , " size_t *arg8" + , ")" + , "{" + , " return botan_pbkdf_timed(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_773ce832f2991924 (" + , " char const *arg1," + , " size_t arg2," + , " size_t arg3," + , " size_t arg4," + , " uint8_t *arg5," + , " size_t arg6," + , " char const *arg7," + , " size_t arg8," + , " uint8_t const *arg9," + , " size_t arg10" + , ")" + , "{" + , " return botan_pwdhash(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10);" + , "}" + , "signed int hs_bindgen_0050ad5a84aefdc4 (" + , " char const *arg1," + , " uint32_t arg2," + , " size_t *arg3," + , " size_t *arg4," + , " size_t *arg5," + , " uint8_t *arg6," + , " size_t arg7," + , " char const *arg8," + , " size_t arg9," + , " uint8_t const *arg10," + , " size_t arg11" + , ")" + , "{" + , " return botan_pwdhash_timed(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11);" + , "}" + , "signed int hs_bindgen_ee318769e22bfa5d (" + , " uint8_t *arg1," + , " size_t arg2," + , " char const *arg3," + , " uint8_t const *arg4," + , " size_t arg5," + , " size_t arg6," + , " size_t arg7," + , " size_t arg8" + , ")" + , "{" + , " return botan_scrypt(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_724a97f16bb502a5 (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t arg3," + , " uint8_t const *arg4," + , " size_t arg5," + , " uint8_t const *arg6," + , " size_t arg7," + , " uint8_t const *arg8," + , " size_t arg9" + , ")" + , "{" + , " return botan_kdf(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9);" + , "}" + , "signed int hs_bindgen_9e75e75d58375e81 (" + , " botan_block_cipher_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_block_cipher_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b579f904069bb8cd (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_destroy(arg1);" + , "}" + , "signed int hs_bindgen_583c160688fa597b (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_clear(arg1);" + , "}" + , "signed int hs_bindgen_d0ed5c4e0197b90a (" + , " botan_block_cipher_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_block_cipher_set_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_130a0d6d2c8ef73f (" + , " botan_block_cipher_t arg1" + , ")" + , "{" + , " return botan_block_cipher_block_size(arg1);" + , "}" + , "signed int hs_bindgen_2d5a11dfcca787a2 (" + , " botan_block_cipher_t arg1," + , " uint8_t const *arg2," + , " uint8_t *arg3," + , " size_t arg4" + , ")" + , "{" + , " return botan_block_cipher_encrypt_blocks(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_a25bffdc64c0a28e (" + , " botan_block_cipher_t arg1," + , " uint8_t const *arg2," + , " uint8_t *arg3," + , " size_t arg4" + , ")" + , "{" + , " return botan_block_cipher_decrypt_blocks(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_7f150c663e772eb8 (" + , " botan_block_cipher_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_block_cipher_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f338e6f033884f73 (" + , " botan_block_cipher_t arg1," + , " size_t *arg2," + , " size_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_block_cipher_get_keyspec(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_f1a7fe69a2349296 (" + , " botan_mp_t *arg1" + , ")" + , "{" + , " return botan_mp_init(arg1);" + , "}" + , "signed int hs_bindgen_877291930b8b965d (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_7604e6a73c0483bb (" + , " botan_mp_t arg1," + , " char *arg2" + , ")" + , "{" + , " return botan_mp_to_hex(arg1, arg2);" + , "}" + , "signed int hs_bindgen_088ab29f3f0cd1ef (" + , " botan_mp_t arg1," + , " botan_view_ctx arg2," + , " botan_view_str_fn arg3" + , ")" + , "{" + , " return botan_mp_view_hex(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_724ca54d90e77453 (" + , " botan_mp_t arg1," + , " uint8_t arg2," + , " char *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_mp_to_str(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_743cb04d2c87a1d7 (" + , " botan_mp_t arg1," + , " uint8_t arg2," + , " botan_view_ctx arg3," + , " botan_view_str_fn arg4" + , ")" + , "{" + , " return botan_mp_view_str(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_735dd2e91a4a1ebc (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_clear(arg1);" + , "}" + , "signed int hs_bindgen_7151ed77d92cc04f (" + , " botan_mp_t arg1," + , " signed int arg2" + , ")" + , "{" + , " return botan_mp_set_from_int(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3ecf7664beaff180 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_set_from_mp(arg1, arg2);" + , "}" + , "signed int hs_bindgen_51c66c0e33bc5bb6 (" + , " botan_mp_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_mp_set_from_str(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9ce149af7dda164d (" + , " botan_mp_t arg1," + , " char const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_set_from_radix_str(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1d19acb89a75ce15 (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bits(arg1, arg2);" + , "}" + , "signed int hs_bindgen_caa3b729db8b36b7 (" + , " botan_mp_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_mp_num_bytes(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6002a580af9eb5c0 (" + , " botan_mp_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_mp_to_bin(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a0dc23048f9b315c (" + , " botan_mp_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return botan_mp_view_bin(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7de64434c1295755 (" + , " botan_mp_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_from_bin(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_17399983cbdd818c (" + , " botan_mp_t arg1," + , " uint32_t *arg2" + , ")" + , "{" + , " return botan_mp_to_uint32(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9167e1d5901fe29a (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_positive(arg1);" + , "}" + , "signed int hs_bindgen_69b3d3ce9b448eca (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_negative(arg1);" + , "}" + , "signed int hs_bindgen_b8ccb669f9aa7624 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_flip_sign(arg1);" + , "}" + , "signed int hs_bindgen_a03eb24c7b5790cb (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_zero(arg1);" + , "}" + , "signed int hs_bindgen_3d6d0152cc1825b1 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_odd(arg1);" + , "}" + , "signed int hs_bindgen_930850ed97e73779 (" + , " botan_mp_t arg1" + , ")" + , "{" + , " return botan_mp_is_even(arg1);" + , "}" + , "signed int hs_bindgen_c9c94595945dc8cc (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_add_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0ee633f353cd40e3 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_mp_sub_u32(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cd13bdb4f4e7e8a8 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_add(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_17e9d247da5383ad (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_sub(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_05cae01d7bb350f0 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mul(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7d9cf9e9edeb490e (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return botan_mp_div(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_e709e8e0bfb9d3e0 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return botan_mp_mod_mul(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_15c80afdf4dac483 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9ba06255f768e339 (" + , " signed int *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_27559a02b3c131f3 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2" + , ")" + , "{" + , " return botan_mp_swap(arg1, arg2);" + , "}" + , "signed int hs_bindgen_b01a01612348dc51 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return botan_mp_powmod(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_680758d6475fee70 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_lshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ad4a808202a10688 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rshift(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d16f1dce05685cc2 (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_mod_inverse(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_54dae9a0738cf2b7 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_rand_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_76340b165480cd46 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return botan_mp_rand_range(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_8b59fec151ccc64b (" + , " botan_mp_t arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_mp_gcd(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c67e5cdc0af8b145 (" + , " botan_mp_t arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_mp_is_prime(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_554dfa99a55c1e3f (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_get_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_244b4656d4ef983f (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_set_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6557464b9984a2b9 (" + , " botan_mp_t arg1," + , " size_t arg2" + , ")" + , "{" + , " return botan_mp_clear_bit(arg1, arg2);" + , "}" + , "signed int hs_bindgen_de364ecf143fecea (" + , " uint8_t *arg1," + , " size_t *arg2," + , " char const *arg3," + , " botan_rng_t arg4," + , " size_t arg5," + , " uint32_t arg6" + , ")" + , "{" + , " return botan_bcrypt_generate(arg1, arg2, arg3, arg4, arg5, arg6);" + , "}" + , "signed int hs_bindgen_e7b57c46335e8db6 (" + , " char const *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_bcrypt_is_valid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_74f5cf251ae320a7 (" + , " botan_asn1_oid_t arg1" + , ")" + , "{" + , " return botan_oid_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d594d05e4fe65a9f (" + , " botan_asn1_oid_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_oid_from_string(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f939b37470e7c2e4 (" + , " botan_asn1_oid_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_oid_register(arg1, arg2);" + , "}" + , "signed int hs_bindgen_822313984ec94c99 (" + , " botan_asn1_oid_t arg1," + , " botan_view_ctx arg2," + , " botan_view_str_fn arg3" + , ")" + , "{" + , " return botan_oid_view_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b9e363f607e3f69a (" + , " botan_asn1_oid_t arg1," + , " botan_view_ctx arg2," + , " botan_view_str_fn arg3" + , ")" + , "{" + , " return botan_oid_view_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4d45a2e3ed697aba (" + , " botan_asn1_oid_t arg1," + , " botan_asn1_oid_t arg2" + , ")" + , "{" + , " return botan_oid_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_abe1dd2cd91b7f85 (" + , " signed int *arg1," + , " botan_asn1_oid_t arg2," + , " botan_asn1_oid_t arg3" + , ")" + , "{" + , " return botan_oid_cmp(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_aeff6820e102062d (" + , " botan_ec_group_t arg1" + , ")" + , "{" + , " return botan_ec_group_destroy(arg1);" + , "}" + , "signed int hs_bindgen_1c0c86bae173047e (" + , " signed int *arg1" + , ")" + , "{" + , " return botan_ec_group_supports_application_specific_group(arg1);" + , "}" + , "signed int hs_bindgen_82ca7d09d6ec0225 (" + , " char const *arg1," + , " signed int *arg2" + , ")" + , "{" + , " return botan_ec_group_supports_named_group(arg1, arg2);" + , "}" + , "signed int hs_bindgen_0dfdd4326bbb80a0 (" + , " botan_ec_group_t *arg1," + , " botan_asn1_oid_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4," + , " botan_mp_t arg5," + , " botan_mp_t arg6," + , " botan_mp_t arg7," + , " botan_mp_t arg8" + , ")" + , "{" + , " return botan_ec_group_from_params(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_947047aeadbb73e1 (" + , " botan_ec_group_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_ec_group_from_ber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_92e0b8a6efa25752 (" + , " botan_ec_group_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_ec_group_from_pem(arg1, arg2);" + , "}" + , "signed int hs_bindgen_322f1ce348f2c8ab (" + , " botan_ec_group_t *arg1," + , " botan_asn1_oid_t arg2" + , ")" + , "{" + , " return botan_ec_group_from_oid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_aab8542b3e7c0cb9 (" + , " botan_ec_group_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_ec_group_from_name(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e23e22aea7157085 (" + , " botan_ec_group_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return botan_ec_group_view_der(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_57fa6bc7b0a19a55 (" + , " botan_ec_group_t arg1," + , " botan_view_ctx arg2," + , " botan_view_str_fn arg3" + , ")" + , "{" + , " return botan_ec_group_view_pem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_ad4efdfda6c2c8e4 (" + , " botan_asn1_oid_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_curve_oid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_27f0db949f743e63 (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2801d43c2ca064f6 (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_a(arg1, arg2);" + , "}" + , "signed int hs_bindgen_971917c680501585 (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_b(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d82ca6208d204fb8 (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_g_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e677d22e68f9e030 (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_g_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f9eccf2a8be964b7 (" + , " botan_mp_t *arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_get_order(arg1, arg2);" + , "}" + , "signed int hs_bindgen_95d5eb814a1acaa9 (" + , " botan_ec_group_t arg1," + , " botan_ec_group_t arg2" + , ")" + , "{" + , " return botan_ec_group_equal(arg1, arg2);" + , "}" + , "signed int hs_bindgen_a3209b33625cbead (" + , " botan_privkey_t *arg1," + , " char const *arg2," + , " char const *arg3," + , " botan_rng_t arg4" + , ")" + , "{" + , " return botan_privkey_create(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_3fb044b5c17d2925 (" + , " botan_privkey_t *arg1," + , " char const *arg2," + , " botan_ec_group_t arg3," + , " botan_rng_t arg4" + , ")" + , "{" + , " return botan_ec_privkey_create(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_722454ee544bf5d9 (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_privkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_161228eb25aef37b (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_create_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2605efe2d8c85d78 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_9a5304d3a238a911 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_92f283ec0d292926 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return botan_privkey_create_mceliece(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_c7b76e3279347295 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_create_dh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a48e7fa7de41b8ee (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return botan_privkey_create_dsa(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_2bc8ed13d5687e90 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " size_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return botan_privkey_create_elgamal(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_0f430ff125cdb528 (" + , " botan_privkey_t *arg1," + , " botan_rng_t arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " char const *arg5" + , ")" + , "{" + , " return botan_privkey_load(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_35b18a7495abcaa8 (" + , " botan_privkey_t arg1" + , ")" + , "{" + , " return botan_privkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_4f4acf371847561d (" + , " botan_privkey_t arg1," + , " uint8_t *arg2," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_privkey_export(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_ed49a199c0b27833 (" + , " botan_privkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return botan_privkey_view_der(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_47e8e0c418c5f7d3 (" + , " botan_privkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_str_fn arg3" + , ")" + , "{" + , " return botan_privkey_view_pem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2f9c99af3a3d9d8f (" + , " botan_privkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return botan_privkey_view_raw(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3c637788f1e89eb7 (" + , " botan_privkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_privkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_475a1a5acb713bd9 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2," + , " size_t *arg3," + , " botan_rng_t arg4," + , " char const *arg5," + , " char const *arg6," + , " uint32_t arg7" + , ")" + , "{" + , " return botan_privkey_export_encrypted(arg1, arg2, arg3, arg4, arg5, arg6, arg7);" + , "}" + , "signed int hs_bindgen_64212b24d061b213 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2," + , " size_t *arg3," + , " botan_rng_t arg4," + , " char const *arg5," + , " uint32_t arg6," + , " size_t *arg7," + , " char const *arg8," + , " char const *arg9," + , " uint32_t arg10" + , ")" + , "{" + , " return botan_privkey_export_encrypted_pbkdf_msec(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10);" + , "}" + , "signed int hs_bindgen_93dd5055e581846c (" + , " botan_privkey_t arg1," + , " uint8_t *arg2," + , " size_t *arg3," + , " botan_rng_t arg4," + , " char const *arg5," + , " size_t arg6," + , " char const *arg7," + , " char const *arg8," + , " uint32_t arg9" + , ")" + , "{" + , " return botan_privkey_export_encrypted_pbkdf_iter(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9);" + , "}" + , "signed int hs_bindgen_23394a04cdac4963 (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " char const *arg3," + , " char const *arg4," + , " char const *arg5," + , " size_t arg6," + , " botan_view_ctx arg7," + , " botan_view_bin_fn arg8" + , ")" + , "{" + , " return botan_privkey_view_encrypted_der(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_a0f5f2189b435c24 (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " char const *arg3," + , " char const *arg4," + , " char const *arg5," + , " size_t arg6," + , " botan_view_ctx arg7," + , " botan_view_bin_fn arg8" + , ")" + , "{" + , " return botan_privkey_view_encrypted_der_timed(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_0710ffd9adac0fc9 (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " char const *arg3," + , " char const *arg4," + , " char const *arg5," + , " size_t arg6," + , " botan_view_ctx arg7," + , " botan_view_str_fn arg8" + , ")" + , "{" + , " return botan_privkey_view_encrypted_pem(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_2b0ead574c5f47e8 (" + , " botan_privkey_t arg1," + , " botan_rng_t arg2," + , " char const *arg3," + , " char const *arg4," + , " char const *arg5," + , " size_t arg6," + , " botan_view_ctx arg7," + , " botan_view_str_fn arg8" + , ")" + , "{" + , " return botan_privkey_view_encrypted_pem_timed(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_72238358fdc71db9 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3f42597e7b666c0f (" + , " botan_pubkey_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_export_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_77d85b1fbb1a00a9 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_pubkey_export(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_d6f546d860e3149b (" + , " botan_pubkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return botan_pubkey_view_der(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b87a9a7182c9aeed (" + , " botan_pubkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_str_fn arg3" + , ")" + , "{" + , " return botan_pubkey_view_pem(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_25d8a86f629da5a4 (" + , " botan_pubkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return botan_pubkey_view_raw(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e6985c2f92f18450 (" + , " botan_pubkey_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pubkey_algo_name(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_f6680c1b5ca3efe2 (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " uint32_t arg3" + , ")" + , "{" + , " return botan_pubkey_check_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b69623f557069359 (" + , " botan_pubkey_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pubkey_estimated_strength(arg1, arg2);" + , "}" + , "signed int hs_bindgen_631ac1b5597a644c (" + , " botan_pubkey_t arg1," + , " char const *arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_pubkey_fingerprint(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_10b7c4463b44f7b6 (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_destroy(arg1);" + , "}" + , "signed int hs_bindgen_8bfbff66f2592732 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pubkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_8e791adea9aefe20 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_get_field(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_1eb0746275eed66d (" + , " botan_asn1_oid_t *arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_oid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d37064638ec02a92 (" + , " botan_asn1_oid_t *arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_oid(arg1, arg2);" + , "}" + , "signed int hs_bindgen_558011478d9f2e1e (" + , " botan_privkey_t arg1," + , " signed int *arg2" + , ")" + , "{" + , " return botan_privkey_stateful_operation(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6812026c663fde62 (" + , " botan_privkey_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_privkey_remaining_operations(arg1, arg2);" + , "}" + , "signed int hs_bindgen_8edc46c9161a929e (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return botan_privkey_load_rsa(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_324d936663dc61dc (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_rsa_pkcs1(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_7b270b71e8e01c53 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9bfe46a8d033bea3 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_45b115be620778aa (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_d(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3de7187914e51427 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_54d23c1a3a3a4930 (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_839bf0f3e0a59aa5 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2," + , " size_t *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_privkey_rsa_get_privkey(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_c98631d3f8e9a284 (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_rsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_387401801d53635b (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_e(arg1, arg2);" + , "}" + , "signed int hs_bindgen_cd9c0c6b2bb13faa (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_rsa_get_n(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3e92d5e3d8177aa8 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4," + , " botan_mp_t arg5" + , ")" + , "{" + , " return botan_privkey_load_dsa(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_09c7eaefe9f0a114 (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4," + , " botan_mp_t arg5" + , ")" + , "{" + , " return botan_pubkey_load_dsa(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_69d82477c195b8ca (" + , " botan_mp_t arg1," + , " botan_privkey_t arg2" + , ")" + , "{" + , " return botan_privkey_dsa_get_x(arg1, arg2);" + , "}" + , "signed int hs_bindgen_331ab6afaba654c7 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_p(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1c7fd6fb26c7cfbd (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_q(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e28812e322f44c1b (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_g(arg1, arg2);" + , "}" + , "signed int hs_bindgen_4f21e9696703b858 (" + , " botan_mp_t arg1," + , " botan_pubkey_t arg2" + , ")" + , "{" + , " return botan_pubkey_dsa_get_y(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2b2c09e006fef1ba (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return botan_privkey_load_dh(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_892222e325898a8c (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return botan_pubkey_load_dh(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_6766a7758227b07a (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return botan_pubkey_load_elgamal(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_bd82fc341f3ec400 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " botan_mp_t arg4" + , ")" + , "{" + , " return botan_privkey_load_elgamal(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_f63b37e21ba88b90 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_2f90a0f8391c554d (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_794c4955352a6f36 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c9944aef0023846b (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6550e1fdbff8b30d (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_773b94d4c006e68a (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_ed448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_28e0806f96bed1fb (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_ed448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_10f5cb41a041ed4a (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_ed448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7e16b427df821d47 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d985bea6feb8a8ac (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x25519(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d2a11f69db05b224 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x25519_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_bbfc1a4a74458c0b (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x25519_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ae3696a5d7556b10 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_privkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_c0776d662e8e8f88 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2" + , ")" + , "{" + , " return botan_pubkey_load_x448(arg1, arg2);" + , "}" + , "signed int hs_bindgen_5586361bff297d98 (" + , " botan_privkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_privkey_x448_get_privkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_3db95844f36fa8b2 (" + , " botan_pubkey_t arg1," + , " uint8_t *arg2" + , ")" + , "{" + , " return botan_pubkey_x448_get_pubkey(arg1, arg2);" + , "}" + , "signed int hs_bindgen_91b6676b50725d88 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_privkey_load_ml_dsa(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_382e6754646c0c83 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_pubkey_load_ml_dsa(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_13e7ceeb3b9433d7 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_privkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_71df31c4cef40a55 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pubkey_load_kyber(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_54bb3e2c808494f9 (" + , " botan_privkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return botan_privkey_view_kyber_raw_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_5d6e437b7eb9008b (" + , " botan_pubkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return botan_pubkey_view_kyber_raw_key(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a954994df21f7d34 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_privkey_load_frodokem(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_c735ad55bebd645e (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_pubkey_load_frodokem(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_bccb9ff649e6b9f4 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_privkey_load_classic_mceliece(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_eaf31b4a8f57ac73 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_pubkey_load_classic_mceliece(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_73d328bd93f51009 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_privkey_load_ml_kem(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_e22dc2c9c3efd696 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_pubkey_load_ml_kem(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_52ba1d50a92214c4 (" + , " botan_privkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_privkey_load_slh_dsa(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_65abb68540763e1a (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_pubkey_load_slh_dsa(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_205fbbddada2b6d8 (" + , " botan_pubkey_t arg1" + , ")" + , "{" + , " return botan_pubkey_ecc_key_used_explicit_encoding(arg1);" + , "}" + , "signed int hs_bindgen_e24f857843227e53 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdsa(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c9429e901038a4a4 (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_pubkey_load_ecdsa(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_3bddb7871a5e5ee2 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_pubkey_load_ecdsa_sec1(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_4084b19d33f93fe7 (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_pubkey_load_ecdh(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_9a427e5307566da1 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_pubkey_load_ecdh_sec1(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_310d31ebf2dc2485 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_ecdh(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d5aa10595d29bc4c (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_pubkey_load_sm2(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_d2a91e6423287a28 (" + , " botan_pubkey_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_pubkey_load_sm2_sec1(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_5138cf7857c1db97 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_4781129b75ba8456 (" + , " botan_pubkey_t *arg1," + , " botan_mp_t arg2," + , " botan_mp_t arg3," + , " char const *arg4" + , ")" + , "{" + , " return botan_pubkey_load_sm2_enc(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_70e5589afac7b896 (" + , " botan_privkey_t *arg1," + , " botan_mp_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_privkey_load_sm2_enc(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b4f9e6ca55ed5273 (" + , " uint8_t *arg1," + , " size_t *arg2," + , " char const *arg3," + , " char const *arg4," + , " botan_pubkey_t arg5" + , ")" + , "{" + , " return botan_pubkey_sm2_compute_za(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_af49df6a43182a38 (" + , " botan_pubkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return botan_pubkey_view_ec_public_point(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_90cfa35de3bf4335 (" + , " botan_pk_op_encrypt_t *arg1," + , " botan_pubkey_t arg2," + , " char const *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_pk_op_encrypt_create(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_0fbae8d2b1830327 (" + , " botan_pk_op_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_eb7e7b23e2e5cb73 (" + , " botan_pk_op_encrypt_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pk_op_encrypt_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_2b86ba88d83657dd (" + , " botan_pk_op_encrypt_t arg1," + , " botan_rng_t arg2," + , " uint8_t *arg3," + , " size_t *arg4," + , " uint8_t const *arg5," + , " size_t arg6" + , ")" + , "{" + , " return botan_pk_op_encrypt(arg1, arg2, arg3, arg4, arg5, arg6);" + , "}" + , "signed int hs_bindgen_e416ef739d3fd61d (" + , " botan_pk_op_decrypt_t *arg1," + , " botan_privkey_t arg2," + , " char const *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_pk_op_decrypt_create(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_21055ed00b9ec6e7 (" + , " botan_pk_op_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_c37abd1684dec3e6 (" + , " botan_pk_op_decrypt_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pk_op_decrypt_output_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_b126db4f5cf7d080 (" + , " botan_pk_op_decrypt_t arg1," + , " uint8_t *arg2," + , " size_t *arg3," + , " uint8_t const *arg4," + , " size_t arg5" + , ")" + , "{" + , " return botan_pk_op_decrypt(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_1a4baf4fe7d5e104 (" + , " botan_pk_op_sign_t *arg1," + , " botan_privkey_t arg2," + , " char const *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_pk_op_sign_create(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_9a87a8816069d068 (" + , " botan_pk_op_sign_t arg1" + , ")" + , "{" + , " return botan_pk_op_sign_destroy(arg1);" + , "}" + , "signed int hs_bindgen_4e5806c85bc80f2b (" + , " botan_pk_op_sign_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_sign_output_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_7f6d4ff4ec85eae7 (" + , " botan_pk_op_sign_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pk_op_sign_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_96551e580d8aa6de (" + , " botan_pk_op_sign_t arg1," + , " botan_rng_t arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_pk_op_sign_finish(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_3c9726911e045534 (" + , " botan_pk_op_verify_t *arg1," + , " botan_pubkey_t arg2," + , " char const *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_pk_op_verify_create(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_3a558c056702ad93 (" + , " botan_pk_op_verify_t arg1" + , ")" + , "{" + , " return botan_pk_op_verify_destroy(arg1);" + , "}" + , "signed int hs_bindgen_8cd241f49e9ab07a (" + , " botan_pk_op_verify_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pk_op_verify_update(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3444727ba118f21f (" + , " botan_pk_op_verify_t arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_pk_op_verify_finish(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_927108dfbf8483e7 (" + , " botan_pk_op_ka_t *arg1," + , " botan_privkey_t arg2," + , " char const *arg3," + , " uint32_t arg4" + , ")" + , "{" + , " return botan_pk_op_key_agreement_create(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_8c1d6b0f9d5198c7 (" + , " botan_pk_op_ka_t arg1" + , ")" + , "{" + , " return botan_pk_op_key_agreement_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d3b4a6b4e47bf39a (" + , " botan_privkey_t arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pk_op_key_agreement_export_public(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_21211e720cfc64c7 (" + , " botan_privkey_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return botan_pk_op_key_agreement_view_public(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c7600aaa2825741c (" + , " botan_pk_op_ka_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_key_agreement_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_60ad449695adef73 (" + , " botan_pk_op_ka_t arg1," + , " uint8_t *arg2," + , " size_t *arg3," + , " uint8_t const *arg4," + , " size_t arg5," + , " uint8_t const *arg6," + , " size_t arg7" + , ")" + , "{" + , " return botan_pk_op_key_agreement(arg1, arg2, arg3, arg4, arg5, arg6, arg7);" + , "}" + , "signed int hs_bindgen_faa8c64f770f7a2b (" + , " botan_pk_op_kem_encrypt_t *arg1," + , " botan_pubkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_create(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_e4935c1b73e3cb47 (" + , " botan_pk_op_kem_encrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_8ed352ef12319dd6 (" + , " botan_pk_op_kem_encrypt_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_shared_key_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cd92f2da12ce7894 (" + , " botan_pk_op_kem_encrypt_t arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_encapsulated_key_length(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d2f384205f42d038 (" + , " botan_pk_op_kem_encrypt_t arg1," + , " botan_rng_t arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " size_t arg5," + , " uint8_t *arg6," + , " size_t *arg7," + , " uint8_t *arg8," + , " size_t *arg9" + , ")" + , "{" + , " return botan_pk_op_kem_encrypt_create_shared_key(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9);" + , "}" + , "signed int hs_bindgen_c259486c289e62eb (" + , " botan_pk_op_kem_decrypt_t *arg1," + , " botan_privkey_t arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_create(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d67a1fbcf4f2a587 (" + , " botan_pk_op_kem_decrypt_t arg1" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_destroy(arg1);" + , "}" + , "signed int hs_bindgen_cc6201d63e7fc9a1 (" + , " botan_pk_op_kem_decrypt_t arg1," + , " size_t arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_shared_key_length(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_a652e435b86267bc (" + , " botan_pk_op_kem_decrypt_t arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " uint8_t const *arg4," + , " size_t arg5," + , " size_t arg6," + , " uint8_t *arg7," + , " size_t *arg8" + , ")" + , "{" + , " return botan_pk_op_kem_decrypt_shared_key(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_b1c2b2d2b96cfc62 (" + , " char const *arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_pkcs_hash_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_40f967ad62f057f2 (" + , " botan_pubkey_t arg1," + , " botan_rng_t arg2," + , " char const *arg3," + , " uint8_t const *arg4," + , " size_t arg5," + , " uint8_t const *arg6," + , " size_t arg7," + , " uint8_t *arg8," + , " size_t *arg9" + , ")" + , "{" + , " return botan_mceies_encrypt(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9);" + , "}" + , "signed int hs_bindgen_edc80a021628d374 (" + , " botan_privkey_t arg1," + , " char const *arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " uint8_t const *arg5," + , " size_t arg6," + , " uint8_t *arg7," + , " size_t *arg8" + , ")" + , "{" + , " return botan_mceies_decrypt(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_6ba2bdfd8e328ab4 (" + , " botan_x509_cert_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_cert_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_02eb64a6d7eebd16 (" + , " botan_x509_cert_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_e5a5ba3e5e81f1ed (" + , " botan_x509_cert_t arg1" + , ")" + , "{" + , " return botan_x509_cert_destroy(arg1);" + , "}" + , "signed int hs_bindgen_f71bfc729e02ff48 (" + , " botan_x509_cert_t *arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_cert_dup(arg1, arg2);" + , "}" + , "signed int hs_bindgen_6a73485585f1f25d (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_starts(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3c2ff5edd2e28477 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_time_expires(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_dff83779f26e3190 (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_before(arg1, arg2);" + , "}" + , "signed int hs_bindgen_53f402f7cfb4ca7f (" + , " botan_x509_cert_t arg1," + , " uint64_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_not_after(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f9ed6b87926f4629 (" + , " botan_x509_cert_t arg1," + , " char const *arg2," + , " uint8_t *arg3," + , " size_t *arg4" + , ")" + , "{" + , " return botan_x509_cert_get_fingerprint(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_dc8fcd278ba24669 (" + , " botan_x509_cert_t arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_serial_number(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_524a4fdfb6e8127c (" + , " botan_x509_cert_t arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_authority_key_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0362b23d18b7f3ca (" + , " botan_x509_cert_t arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_subject_key_id(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_77492aa1d5bc09ea (" + , " botan_x509_cert_t arg1," + , " uint8_t *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_get_public_key_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_6736f895fb3f3c42 (" + , " botan_x509_cert_t arg1," + , " botan_view_ctx arg2," + , " botan_view_bin_fn arg3" + , ")" + , "{" + , " return botan_x509_cert_view_public_key_bits(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c087cc09891cb7cd (" + , " botan_x509_cert_t arg1," + , " botan_pubkey_t *arg2" + , ")" + , "{" + , " return botan_x509_cert_get_public_key(arg1, arg2);" + , "}" + , "signed int hs_bindgen_9b7647694157e862 (" + , " botan_x509_cert_t arg1," + , " char const *arg2," + , " size_t arg3," + , " uint8_t *arg4," + , " size_t *arg5" + , ")" + , "{" + , " return botan_x509_cert_get_issuer_dn(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_967b4bd2e9fc2981 (" + , " botan_x509_cert_t arg1," + , " char const *arg2," + , " size_t arg3," + , " uint8_t *arg4," + , " size_t *arg5" + , ")" + , "{" + , " return botan_x509_cert_get_subject_dn(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_d9a58508bb919bc2 (" + , " botan_x509_cert_t arg1," + , " char *arg2," + , " size_t *arg3" + , ")" + , "{" + , " return botan_x509_cert_to_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_108972e75f59d558 (" + , " botan_x509_cert_t arg1," + , " botan_view_ctx arg2," + , " botan_view_str_fn arg3" + , ")" + , "{" + , " return botan_x509_cert_view_as_string(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_bb8f93791e95a3cf (" + , " botan_x509_cert_t arg1," + , " unsigned int arg2" + , ")" + , "{" + , " return botan_x509_cert_allowed_usage(arg1, arg2);" + , "}" + , "signed int hs_bindgen_af4d21f472b09a06 (" + , " botan_x509_cert_t arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_cert_hostname_match(arg1, arg2);" + , "}" + , "signed int hs_bindgen_1d9cb7fb4bea4655 (" + , " signed int *arg1," + , " botan_x509_cert_t arg2," + , " botan_x509_cert_t const *arg3," + , " size_t arg4," + , " botan_x509_cert_t const *arg5," + , " size_t arg6," + , " char const *arg7," + , " size_t arg8," + , " char const *arg9," + , " uint64_t arg10" + , ")" + , "{" + , " return botan_x509_cert_verify(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10);" + , "}" + , "char const *hs_bindgen_96fe8f9bcdd9018a (" + , " signed int arg1" + , ")" + , "{" + , " return botan_x509_cert_validation_status(arg1);" + , "}" + , "signed int hs_bindgen_a158ec067676123b (" + , " botan_x509_crl_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_x509_crl_load_file(arg1, arg2);" + , "}" + , "signed int hs_bindgen_771bbf6123fc9ab7 (" + , " botan_x509_crl_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3" + , ")" + , "{" + , " return botan_x509_crl_load(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_d3c2c26fdc280347 (" + , " botan_x509_crl_t arg1" + , ")" + , "{" + , " return botan_x509_crl_destroy(arg1);" + , "}" + , "signed int hs_bindgen_dc4fc8153dc8dc39 (" + , " botan_x509_crl_t arg1," + , " botan_x509_cert_t arg2" + , ")" + , "{" + , " return botan_x509_is_revoked(arg1, arg2);" + , "}" + , "signed int hs_bindgen_f2fa4c161bc859b4 (" + , " signed int *arg1," + , " botan_x509_cert_t arg2," + , " botan_x509_cert_t const *arg3," + , " size_t arg4," + , " botan_x509_cert_t const *arg5," + , " size_t arg6," + , " botan_x509_crl_t const *arg7," + , " size_t arg8," + , " char const *arg9," + , " size_t arg10," + , " char const *arg11," + , " uint64_t arg12" + , ")" + , "{" + , " return botan_x509_cert_verify_with_crl(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11, arg12);" + , "}" + , "signed int hs_bindgen_730b8e3ca69bd18c (" + , " uint8_t const *arg1," + , " size_t arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " uint8_t *arg5," + , " size_t *arg6" + , ")" + , "{" + , " return botan_key_wrap3394(arg1, arg2, arg3, arg4, arg5, arg6);" + , "}" + , "signed int hs_bindgen_3b6a33607880ee8e (" + , " uint8_t const *arg1," + , " size_t arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " uint8_t *arg5," + , " size_t *arg6" + , ")" + , "{" + , " return botan_key_unwrap3394(arg1, arg2, arg3, arg4, arg5, arg6);" + , "}" + , "signed int hs_bindgen_8390192f7961b0a9 (" + , " char const *arg1," + , " signed int arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " uint8_t const *arg5," + , " size_t arg6," + , " uint8_t *arg7," + , " size_t *arg8" + , ")" + , "{" + , " return botan_nist_kw_enc(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_638c3bf48d573303 (" + , " char const *arg1," + , " signed int arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " uint8_t const *arg5," + , " size_t arg6," + , " uint8_t *arg7," + , " size_t *arg8" + , ")" + , "{" + , " return botan_nist_kw_dec(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_b9c9d43177252121 (" + , " botan_hotp_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4," + , " size_t arg5" + , ")" + , "{" + , " return botan_hotp_init(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_0caf03ddd740bd2e (" + , " botan_hotp_t arg1" + , ")" + , "{" + , " return botan_hotp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e63da88726d73ea6 (" + , " botan_hotp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_hotp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_cc3905d27882f244 (" + , " botan_hotp_t arg1," + , " uint64_t *arg2," + , " uint32_t arg3," + , " uint64_t arg4," + , " size_t arg5" + , ")" + , "{" + , " return botan_hotp_check(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_b8cb03f2e42f23c5 (" + , " botan_totp_t *arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4," + , " size_t arg5," + , " size_t arg6" + , ")" + , "{" + , " return botan_totp_init(arg1, arg2, arg3, arg4, arg5, arg6);" + , "}" + , "signed int hs_bindgen_fbe2b3b52271522c (" + , " botan_totp_t arg1" + , ")" + , "{" + , " return botan_totp_destroy(arg1);" + , "}" + , "signed int hs_bindgen_e4bd8621079e1ccc (" + , " botan_totp_t arg1," + , " uint32_t *arg2," + , " uint64_t arg3" + , ")" + , "{" + , " return botan_totp_generate(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_0ee58e8b288e357c (" + , " botan_totp_t arg1," + , " uint32_t arg2," + , " uint64_t arg3," + , " size_t arg4" + , ")" + , "{" + , " return botan_totp_check(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_3feb4ccb896348f0 (" + , " botan_fpe_t *arg1," + , " botan_mp_t arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " size_t arg5," + , " uint32_t arg6" + , ")" + , "{" + , " return botan_fpe_fe1_init(arg1, arg2, arg3, arg4, arg5, arg6);" + , "}" + , "signed int hs_bindgen_1bb7a0e9ead567c7 (" + , " botan_fpe_t arg1" + , ")" + , "{" + , " return botan_fpe_destroy(arg1);" + , "}" + , "signed int hs_bindgen_d9586af4fd4535ba (" + , " botan_fpe_t arg1," + , " botan_mp_t arg2," + , " uint8_t const *arg3," + , " size_t arg4" + , ")" + , "{" + , " return botan_fpe_encrypt(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_8e20deda8aeb3c76 (" + , " botan_fpe_t arg1," + , " botan_mp_t arg2," + , " uint8_t const *arg3," + , " size_t arg4" + , ")" + , "{" + , " return botan_fpe_decrypt(arg1, arg2, arg3, arg4);" + , "}" + , "signed int hs_bindgen_ce6f1910cbf5dd88 (" + , " botan_srp6_server_session_t *arg1" + , ")" + , "{" + , " return botan_srp6_server_session_init(arg1);" + , "}" + , "signed int hs_bindgen_b457ab82279eb9e8 (" + , " botan_srp6_server_session_t arg1" + , ")" + , "{" + , " return botan_srp6_server_session_destroy(arg1);" + , "}" + , "signed int hs_bindgen_6c44b621b691c481 (" + , " botan_srp6_server_session_t arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " char const *arg4," + , " char const *arg5," + , " botan_rng_t arg6," + , " uint8_t *arg7," + , " size_t *arg8" + , ")" + , "{" + , " return botan_srp6_server_session_step1(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_26b09fc814d32975 (" + , " botan_srp6_server_session_t arg1," + , " uint8_t const *arg2," + , " size_t arg3," + , " uint8_t *arg4," + , " size_t *arg5" + , ")" + , "{" + , " return botan_srp6_server_session_step2(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_19ea10ae7c3abf58 (" + , " char const *arg1," + , " char const *arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " char const *arg5," + , " char const *arg6," + , " uint8_t *arg7," + , " size_t *arg8" + , ")" + , "{" + , " return botan_srp6_generate_verifier(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);" + , "}" + , "signed int hs_bindgen_4ddefec83b033e63 (" + , " char const *arg1," + , " char const *arg2," + , " char const *arg3," + , " char const *arg4," + , " uint8_t const *arg5," + , " size_t arg6," + , " uint8_t const *arg7," + , " size_t arg8," + , " botan_rng_t arg9," + , " uint8_t *arg10," + , " size_t *arg11," + , " uint8_t *arg12," + , " size_t *arg13" + , ")" + , "{" + , " return botan_srp6_client_agree(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11, arg12, arg13);" + , "}" + , "signed int hs_bindgen_1e223d55ae7e4178 (" + , " char const *arg1," + , " size_t *arg2" + , ")" + , "{" + , " return botan_srp6_group_size(arg1, arg2);" + , "}" + , "signed int hs_bindgen_81cda516ea6c2c0f (" + , " size_t arg1," + , " size_t arg2," + , " uint8_t const *arg3," + , " size_t arg4," + , " uint8_t **arg5" + , ")" + , "{" + , " return botan_zfec_encode(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_3fca9737c041741a (" + , " size_t arg1," + , " size_t arg2," + , " size_t const *arg3," + , " uint8_t *const *arg4," + , " size_t arg5," + , " uint8_t **arg6" + , ")" + , "{" + , " return botan_zfec_decode(arg1, arg2, arg3, arg4, arg5, arg6);" + , "}" + , "signed int hs_bindgen_a33a2786df336d7e (void)" + , "{" + , " return botan_tpm2_supports_crypto_backend();" + , "}" + , "signed int hs_bindgen_8664007b1e0c469e (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d7555fb12deecb78 (" + , " botan_tpm2_ctx_t *arg1," + , " char const *arg2," + , " char const *arg3" + , ")" + , "{" + , " return botan_tpm2_ctx_init_ex(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_c1cc9c24fb784126 (" + , " botan_tpm2_ctx_t *arg1," + , " struct ESYS_CONTEXT *arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_from_esys(arg1, arg2);" + , "}" + , "signed int hs_bindgen_53a84673f9d94313 (" + , " botan_tpm2_ctx_t arg1," + , " botan_rng_t arg2" + , ")" + , "{" + , " return botan_tpm2_ctx_enable_crypto_backend(arg1, arg2);" + , "}" + , "signed int hs_bindgen_d96a887f5638cbbd (" + , " botan_tpm2_ctx_t arg1" + , ")" + , "{" + , " return botan_tpm2_ctx_destroy(arg1);" + , "}" + , "signed int hs_bindgen_1c5d4321858962f5 (" + , " botan_tpm2_crypto_backend_state_t *arg1," + , " struct ESYS_CONTEXT *arg2," + , " botan_rng_t arg3" + , ")" + , "{" + , " return botan_tpm2_enable_crypto_backend(arg1, arg2, arg3);" + , "}" + , "signed int hs_bindgen_3bb7c566e2b80a19 (" + , " botan_tpm2_crypto_backend_state_t arg1" + , ")" + , "{" + , " return botan_tpm2_crypto_backend_state_destroy(arg1);" + , "}" + , "signed int hs_bindgen_763d852c4c19c540 (" + , " botan_rng_t *arg1," + , " botan_tpm2_ctx_t arg2," + , " botan_tpm2_session_t arg3," + , " botan_tpm2_session_t arg4," + , " botan_tpm2_session_t arg5" + , ")" + , "{" + , " return botan_tpm2_rng_init(arg1, arg2, arg3, arg4, arg5);" + , "}" + , "signed int hs_bindgen_21221ae1c67469d6 (" + , " botan_tpm2_session_t *arg1," + , " botan_tpm2_ctx_t arg2" + , ")" + , "{" + , " return botan_tpm2_unauthenticated_session_init(arg1, arg2);" + , "}" + , "signed int hs_bindgen_ce9285e06a9fc115 (" + , " botan_tpm2_session_t arg1" + , ")" + , "{" + , " return botan_tpm2_session_destroy(arg1);" + , "}" + ])) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_error_description@ +foreign import ccall unsafe "hs_bindgen_ffe02b347e2ec187" hs_bindgen_ffe02b347e2ec187 :: + FC.CInt + -> IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) + +{-| Convert an error code into a string. Returns "Unknown error" if the error code is not a known one. + +__C declaration:__ @botan_error_description@ + +__defined at:__ @botan\/ffi.h:176:36@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_error_description :: + FC.CInt + -- ^ __C declaration:__ @err@ + -> IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_error_description = hs_bindgen_ffe02b347e2ec187 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_error_last_exception_message@ +foreign import ccall unsafe "hs_bindgen_a8c0f78d255a6596" hs_bindgen_a8c0f78d255a6596 :: + IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) + +{-| Return the message of the last exception caught in this thread. + + This pointer can/will be reallocated or overwritten the next time this thread calls any other Botan FFI function and must be copied to persistent storage first. + +__C declaration:__ @botan_error_last_exception_message@ + +__defined at:__ @botan\/ffi.h:185:36@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_error_last_exception_message :: IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_error_last_exception_message = + hs_bindgen_a8c0f78d255a6596 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_ffi_api_version@ +foreign import ccall unsafe "hs_bindgen_7e0a77d0414219c5" hs_bindgen_7e0a77d0414219c5 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the version of the currently supported FFI API. This is expressed in the form YYYYMMDD of the release date of this version of the API. + +__C declaration:__ @botan_ffi_api_version@ + +__defined at:__ @botan\/ffi.h:192:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_api_version :: IO HsBindgen.Runtime.Prelude.Word32 +botan_ffi_api_version = hs_bindgen_7e0a77d0414219c5 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_ffi_supports_api@ +foreign import ccall unsafe "hs_bindgen_af896fb4c5f7ee33" hs_bindgen_af896fb4c5f7ee33 :: + HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| Return 0 (ok) if the version given is one this library supports. botan_ffi_supports_api(botan_ffi_api_version()) will always return 0. + +__C declaration:__ @botan_ffi_supports_api@ + +__defined at:__ @botan\/ffi.h:198:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_ffi_supports_api :: + HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @api_version@ + -> IO FC.CInt +botan_ffi_supports_api = hs_bindgen_af896fb4c5f7ee33 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_version_string@ +foreign import ccall unsafe "hs_bindgen_1428416ce783b96c" hs_bindgen_1428416ce783b96c :: + IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) + +{-| Return a free-form version string, e.g., 2.0.0 + +__C declaration:__ @botan_version_string@ + +__defined at:__ @botan\/ffi.h:203:36@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_string :: IO (HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar) +botan_version_string = hs_bindgen_1428416ce783b96c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_version_major@ +foreign import ccall unsafe "hs_bindgen_68fbab04846d5bb2" hs_bindgen_68fbab04846d5bb2 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the major version of the library + +__C declaration:__ @botan_version_major@ + +__defined at:__ @botan\/ffi.h:208:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_major :: IO HsBindgen.Runtime.Prelude.Word32 +botan_version_major = hs_bindgen_68fbab04846d5bb2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_version_minor@ +foreign import ccall unsafe "hs_bindgen_86ee0cc230e40d55" hs_bindgen_86ee0cc230e40d55 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the minor version of the library + +__C declaration:__ @botan_version_minor@ + +__defined at:__ @botan\/ffi.h:213:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_minor :: IO HsBindgen.Runtime.Prelude.Word32 +botan_version_minor = hs_bindgen_86ee0cc230e40d55 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_version_patch@ +foreign import ccall unsafe "hs_bindgen_2a352d2a9718f730" hs_bindgen_2a352d2a9718f730 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the patch version of the library + +__C declaration:__ @botan_version_patch@ + +__defined at:__ @botan\/ffi.h:218:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_patch :: IO HsBindgen.Runtime.Prelude.Word32 +botan_version_patch = hs_bindgen_2a352d2a9718f730 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_version_datestamp@ +foreign import ccall unsafe "hs_bindgen_3087cbd4d497d336" hs_bindgen_3087cbd4d497d336 :: + IO HsBindgen.Runtime.Prelude.Word32 + +{-| Return the date this version was released as an integer. + + Returns 0 if the library was not built from an official release + +__C declaration:__ @botan_version_datestamp@ + +__defined at:__ @botan\/ffi.h:225:33@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_version_datestamp :: IO HsBindgen.Runtime.Prelude.Word32 +botan_version_datestamp = hs_bindgen_3087cbd4d497d336 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_constant_time_compare@ +foreign import ccall unsafe "hs_bindgen_67315902ddd00f90" hs_bindgen_67315902ddd00f90 :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Returns 0 if x[0..len] == y[0..len], or otherwise -1 + +__C declaration:__ @botan_constant_time_compare@ + +__defined at:__ @botan\/ffi.h:230:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_constant_time_compare :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @x@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @y@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> IO FC.CInt +botan_constant_time_compare = + hs_bindgen_67315902ddd00f90 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_same_mem@ +foreign import ccall unsafe "hs_bindgen_5905b034caa8280d" hs_bindgen_5905b034caa8280d :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Deprecated equivalent to botan_constant_time_compare + +__C declaration:__ @botan_same_mem@ + +__defined at:__ @botan\/ffi.h:236:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_same_mem :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @x@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @y@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> IO FC.CInt +botan_same_mem = hs_bindgen_5905b034caa8280d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_scrub_mem@ +foreign import ccall unsafe "hs_bindgen_19703ab022452a1d" hs_bindgen_19703ab022452a1d :: + Ptr.Ptr Void + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Clear out memory using a system specific approach to bypass elision by the compiler (currently using RtlSecureZeroMemory or tricks with volatile pointers). + +__C declaration:__ @botan_scrub_mem@ + +__defined at:__ @botan\/ffi.h:242:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_scrub_mem :: + Ptr.Ptr Void + -- ^ __C declaration:__ @mem@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @bytes@ + -> IO FC.CInt +botan_scrub_mem = hs_bindgen_19703ab022452a1d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_hex_encode@ +foreign import ccall unsafe "hs_bindgen_39420795533b6c27" hs_bindgen_39420795533b6c27 :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| Perform hex encoding + + [__@x@ /(input)/__]: is some binary data + + [__@len@ /(input)/__]: length of x in bytes + + [__@out@ /(input)/__]: an array of at least x*2 bytes + + [__@flags@ /(input)/__]: flags out be upper or lower case? + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hex_encode@ + +__defined at:__ @botan\/ffi.h:257:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hex_encode :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@x@ /(input)/__]: is some binary data + + __C declaration:__ @x@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@len@ /(input)/__]: length of x in bytes + + __C declaration:__ @len@ + -} + -> Ptr.Ptr FC.CChar + {- ^ + + [__@out@ /(input)/__]: an array of at least x*2 bytes + + __C declaration:__ @out@ + -} + -> HsBindgen.Runtime.Prelude.Word32 + {- ^ + + [__@flags@ /(input)/__]: flags out be upper or lower case? + + __C declaration:__ @flags@ + -} + -> IO FC.CInt +botan_hex_encode = hs_bindgen_39420795533b6c27 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_hex_decode@ +foreign import ccall unsafe "hs_bindgen_35bcd71cd6d014c6" hs_bindgen_35bcd71cd6d014c6 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Perform hex decoding + + [__@hex_str@ /(input)/__]: a string of hex chars (whitespace is ignored) + + [__@in_len@ /(input)/__]: the length of hex_str + + [__@out@ /(input)/__]: the output buffer should be at least strlen(hex_str)/2 bytes + + [__@out_len@ /(input)/__]: the size of the output buffer on input, set to the number of bytes written + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hex_decode@ + +__defined at:__ @botan\/ffi.h:267:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hex_decode :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@hex_str@ /(input)/__]: a string of hex chars (whitespace is ignored) + + __C declaration:__ @hex_str@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@in_len@ /(input)/__]: the length of hex_str + + __C declaration:__ @in_len@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: the output buffer should be at least strlen(hex_str)/2 bytes + + __C declaration:__ @out@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_len@ /(input)/__]: the size of the output buffer on input, set to the number of bytes written + + __C declaration:__ @out_len@ + -} + -> IO FC.CInt +botan_hex_decode = hs_bindgen_35bcd71cd6d014c6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_base64_encode@ +foreign import ccall unsafe "hs_bindgen_a102eb7443f7867b" hs_bindgen_a102eb7443f7867b :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Perform base64 encoding + + [__@x@ /(input)/__]: the input data + + [__@len@ /(input)/__]: the length of x + + [__@out@ /(input)/__]: the output buffer + + [__@out_len@ /(input)/__]: the size of the output buffer on input, set to the number of bytes written + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_base64_encode@ + +__defined at:__ @botan\/ffi.h:279:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_base64_encode :: + HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@x@ /(input)/__]: the input data + + __C declaration:__ @x@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@len@ /(input)/__]: the length of x + + __C declaration:__ @len@ + -} + -> Ptr.Ptr FC.CChar + {- ^ + + [__@out@ /(input)/__]: the output buffer + + __C declaration:__ @out@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_len@ /(input)/__]: the size of the output buffer on input, set to the number of bytes written + + __C declaration:__ @out_len@ + -} + -> IO FC.CInt +botan_base64_encode = hs_bindgen_a102eb7443f7867b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_base64_decode@ +foreign import ccall unsafe "hs_bindgen_5eb2e2466f12c0d0" hs_bindgen_5eb2e2466f12c0d0 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Perform base64 decoding + +__C declaration:__ @botan_base64_decode@ + +__defined at:__ @botan\/ffi.h:284:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_base64_decode :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @base64_str@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @in_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_base64_decode = hs_bindgen_5eb2e2466f12c0d0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_rng_init@ +foreign import ccall unsafe "hs_bindgen_c4e8b0fb26abdf30" hs_bindgen_c4e8b0fb26abdf30 :: + Ptr.Ptr Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Initialize a random number generator object + + [__@rng@ /(input)/__]: rng object + + [__@rng_type@ /(input)/__]: type of the rng, possible values: "system": system RNG "esdm-full": ESDM RNG (fully seeded) "esdm-pr": ESDM RNG (w. prediction resistance) "user": userspace RNG "user-threadsafe": userspace RNG, with internal locking "rdrand": directly read RDRAND Set rng_type to null to let the library choose some default. + +__C declaration:__ @botan_rng_init@ + +__defined at:__ @botan\/ffi.h:303:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_init :: + Ptr.Ptr Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: rng object + + __C declaration:__ @rng@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@rng_type@ /(input)/__]: type of the rng, possible values: "system": system RNG "esdm-full": ESDM RNG (fully seeded) "esdm-pr": ESDM RNG (w. prediction resistance) "user": userspace RNG "user-threadsafe": userspace RNG, with internal locking "rdrand": directly read RDRAND Set rng_type to null to let the library choose some default. + + __C declaration:__ @rng_type@ + -} + -> IO FC.CInt +botan_rng_init = hs_bindgen_c4e8b0fb26abdf30 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_rng_init_custom@ +foreign import ccall unsafe "hs_bindgen_0c8d760271021ddb" hs_bindgen_0c8d760271021ddb :: + Ptr.Ptr Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Ptr.Ptr Void + -> Ptr.FunPtr ((Ptr.Ptr Void) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) + -> Ptr.FunPtr ((Ptr.Ptr Void) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) + -> Ptr.FunPtr ((Ptr.Ptr Void) -> IO ()) + -> IO FC.CInt + +{-| Initialize a custom random number generator from a set of callback functions + + [__@rng_out@ /(input)/__]: rng object to create + + [__@rng_name@ /(input)/__]: name of the rng + + [__@context@ /(input)/__]: An application-specific context passed to the callback functions + + [__@get_cb@ /(input)/__]: Callback for getting random bytes from the rng, return 0 for success + + [__@add_entropy_cb@ /(input)/__]: Callback for adding entropy to the rng, return 0 for success, may be NULL + + [__@destroy_cb@ /(input)/__]: Callback called when rng is destroyed, may be NULL + +__C declaration:__ @botan_rng_init_custom@ + +__defined at:__ @botan\/ffi.h:315:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_init_custom :: + Ptr.Ptr Botan_rng_t + {- ^ + + [__@rng_out@ /(input)/__]: rng object to create + + __C declaration:__ @rng_out@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@rng_name@ /(input)/__]: name of the rng + + __C declaration:__ @rng_name@ + -} + -> Ptr.Ptr Void + {- ^ + + [__@context@ /(input)/__]: An application-specific context passed to the callback functions + + __C declaration:__ @context@ + -} + -> Ptr.FunPtr ((Ptr.Ptr Void) -> (Ptr.Ptr HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) + {- ^ + + [__@get_cb@ /(input)/__]: Callback for getting random bytes from the rng, return 0 for success + + __C declaration:__ @get_cb@ + -} + -> Ptr.FunPtr ((Ptr.Ptr Void) -> (HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8) -> HsBindgen.Runtime.Prelude.CSize -> IO FC.CInt) + {- ^ + + [__@add_entropy_cb@ /(input)/__]: Callback for adding entropy to the rng, return 0 for success, may be NULL + + __C declaration:__ @add_entropy_cb@ + -} + -> Ptr.FunPtr ((Ptr.Ptr Void) -> IO ()) + {- ^ + + [__@destroy_cb@ /(input)/__]: Callback called when rng is destroyed, may be NULL + + __C declaration:__ @destroy_cb@ + -} + -> IO FC.CInt +botan_rng_init_custom = hs_bindgen_0c8d760271021ddb + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_rng_get@ +foreign import ccall unsafe "hs_bindgen_fda413411c048d53" hs_bindgen_fda413411c048d53 :: + Botan_rng_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get random bytes from a random number generator + + [__@rng@ /(input)/__]: rng object + + [__@out@ /(input)/__]: output buffer of size out_len + + [__@out_len@ /(input)/__]: number of requested bytes + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_rng_get@ + +__defined at:__ @botan\/ffi.h:330:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_get :: + Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: rng object + + __C declaration:__ @rng@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: output buffer of size out_len + + __C declaration:__ @out@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_len@ /(input)/__]: number of requested bytes + + __C declaration:__ @out_len@ + -} + -> IO FC.CInt +botan_rng_get = hs_bindgen_fda413411c048d53 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_system_rng_get@ +foreign import ccall unsafe "hs_bindgen_b21c661f2c6e313d" hs_bindgen_b21c661f2c6e313d :: + Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get random bytes from system random number generator + + [__@out@ /(input)/__]: output buffer of size out_len + + [__@out_len@ /(input)/__]: number of requested bytes + + __returns:__ 0 on success, negative on failure + +__C declaration:__ @botan_system_rng_get@ + +__defined at:__ @botan\/ffi.h:339:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_system_rng_get :: + Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: output buffer of size out_len + + __C declaration:__ @out@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_len@ /(input)/__]: number of requested bytes + + __C declaration:__ @out_len@ + -} + -> IO FC.CInt +botan_system_rng_get = hs_bindgen_b21c661f2c6e313d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_rng_reseed@ +foreign import ccall unsafe "hs_bindgen_13fcf40434a04e2c" hs_bindgen_13fcf40434a04e2c :: + Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Reseed a random number generator Uses the System_RNG as a seed generator. + + [__@rng@ /(input)/__]: rng object + + [__@bits@ /(input)/__]: number of bits to reseed with + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_rng_reseed@ + +__defined at:__ @botan\/ffi.h:349:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_reseed :: + Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: rng object + + __C declaration:__ @rng@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@bits@ /(input)/__]: number of bits to reseed with + + __C declaration:__ @bits@ + -} + -> IO FC.CInt +botan_rng_reseed = hs_bindgen_13fcf40434a04e2c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_rng_reseed_from_rng@ +foreign import ccall unsafe "hs_bindgen_59ba7f5d56671f90" hs_bindgen_59ba7f5d56671f90 :: + Botan_rng_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Reseed a random number generator + + [__@rng@ /(input)/__]: rng object + + [__@source_rng@ /(input)/__]: the rng that will be read from + + [__@bits@ /(input)/__]: number of bits to reseed with + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_rng_reseed_from_rng@ + +__defined at:__ @botan\/ffi.h:359:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_reseed_from_rng :: + Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: rng object + + __C declaration:__ @rng@ + -} + -> Botan_rng_t + {- ^ + + [__@source_rng@ /(input)/__]: the rng that will be read from + + __C declaration:__ @source_rng@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@bits@ /(input)/__]: number of bits to reseed with + + __C declaration:__ @bits@ + -} + -> IO FC.CInt +botan_rng_reseed_from_rng = + hs_bindgen_59ba7f5d56671f90 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_rng_add_entropy@ +foreign import ccall unsafe "hs_bindgen_276b4b0ce90ab937" hs_bindgen_276b4b0ce90ab937 :: + Botan_rng_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Add some seed material to a random number generator + + [__@rng@ /(input)/__]: rng object + + [__@entropy@ /(input)/__]: the data to add + + [__@entropy_len@ /(input)/__]: length of entropy buffer + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_rng_add_entropy@ + +__defined at:__ @botan\/ffi.h:369:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_add_entropy :: + Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: rng object + + __C declaration:__ @rng@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@entropy@ /(input)/__]: the data to add + + __C declaration:__ @entropy@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@entropy_len@ /(input)/__]: length of entropy buffer + + __C declaration:__ @entropy_len@ + -} + -> IO FC.CInt +botan_rng_add_entropy = hs_bindgen_276b4b0ce90ab937 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_rng_destroy@ +foreign import ccall unsafe "hs_bindgen_dc534b1f4a21b368" hs_bindgen_dc534b1f4a21b368 :: + Botan_rng_t + -> IO FC.CInt + +{-| Frees all resources of the random number generator object + + [__@rng@ /(input)/__]: rng object + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_rng_destroy@ + +__defined at:__ @botan\/ffi.h:376:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_rng_destroy :: + Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: rng object + + __C declaration:__ @rng@ + -} + -> IO FC.CInt +botan_rng_destroy = hs_bindgen_dc534b1f4a21b368 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_hash_init@ +foreign import ccall unsafe "hs_bindgen_9b5cdaa2dce4baed" hs_bindgen_9b5cdaa2dce4baed :: + Ptr.Ptr Botan_hash_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| Initialize a hash function object + + [__@hash@ /(input)/__]: hash object + + [__@hash_name@ /(input)/__]: name of the hash function, e.g., "SHA-384" + + [__@flags@ /(input)/__]: should be 0 in current API revision, all other uses are reserved and return BOTAN_FFI_ERROR_BAD_FLAG + +__C declaration:__ @botan_hash_init@ + +__defined at:__ @botan\/ffi.h:390:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_init :: + Ptr.Ptr Botan_hash_t + {- ^ + + [__@hash@ /(input)/__]: hash object + + __C declaration:__ @hash@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@hash_name@ /(input)/__]: name of the hash function, e.g., "SHA-384" + + __C declaration:__ @hash_name@ + -} + -> HsBindgen.Runtime.Prelude.Word32 + {- ^ + + [__@flags@ /(input)/__]: should be 0 in current API revision, all other uses are reserved and return BOTAN_FFI_ERROR_BAD_FLAG + + __C declaration:__ @flags@ + -} + -> IO FC.CInt +botan_hash_init = hs_bindgen_9b5cdaa2dce4baed + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_hash_copy_state@ +foreign import ccall unsafe "hs_bindgen_ec77d900d1c91462" hs_bindgen_ec77d900d1c91462 :: + Ptr.Ptr Botan_hash_t + -> Botan_hash_t + -> IO FC.CInt + +{-| Copy the state of a hash function object + + [__@dest@ /(input)/__]: destination hash object + + [__@source@ /(input)/__]: source hash object + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_copy_state@ + +__defined at:__ @botan\/ffi.h:398:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_copy_state :: + Ptr.Ptr Botan_hash_t + {- ^ + + [__@dest@ /(input)/__]: destination hash object + + __C declaration:__ @dest@ + -} + -> Botan_hash_t + {- ^ + + [__@source@ /(input)/__]: source hash object + + __C declaration:__ @source@ + -} + -> IO FC.CInt +botan_hash_copy_state = hs_bindgen_ec77d900d1c91462 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_hash_output_length@ +foreign import ccall unsafe "hs_bindgen_02f902ba46b2497d" hs_bindgen_02f902ba46b2497d :: + Botan_hash_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Writes the output length of the hash function to *output_length + + [__@hash@ /(input)/__]: hash object + + [__@output_length@ /(input)/__]: output buffer to hold the hash function output length + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_output_length@ + +__defined at:__ @botan\/ffi.h:406:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_output_length :: + Botan_hash_t + {- ^ + + [__@hash@ /(input)/__]: hash object + + __C declaration:__ @hash@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@output_length@ /(input)/__]: output buffer to hold the hash function output length + + __C declaration:__ @output_length@ + -} + -> IO FC.CInt +botan_hash_output_length = + hs_bindgen_02f902ba46b2497d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_hash_block_size@ +foreign import ccall unsafe "hs_bindgen_3b130931bdccb78f" hs_bindgen_3b130931bdccb78f :: + Botan_hash_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Writes the block size of the hash function to *block_size + + [__@hash@ /(input)/__]: hash object + + [__@block_size@ /(input)/__]: output buffer to hold the hash function output length + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_block_size@ + +__defined at:__ @botan\/ffi.h:414:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_block_size :: + Botan_hash_t + {- ^ + + [__@hash@ /(input)/__]: hash object + + __C declaration:__ @hash@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@block_size@ /(input)/__]: output buffer to hold the hash function output length + + __C declaration:__ @block_size@ + -} + -> IO FC.CInt +botan_hash_block_size = hs_bindgen_3b130931bdccb78f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_hash_update@ +foreign import ccall unsafe "hs_bindgen_3569c84aa6760fd6" hs_bindgen_3569c84aa6760fd6 :: + Botan_hash_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Send more input to the hash function + + [__@hash@ /(input)/__]: hash object + + [__@in@ /(input)/__]: input buffer + + [__@in_len@ /(input)/__]: number of bytes to read from the input buffer + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_update@ + +__defined at:__ @botan\/ffi.h:423:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_update :: + Botan_hash_t + {- ^ + + [__@hash@ /(input)/__]: hash object + + __C declaration:__ @hash@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @in'@ + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@in_len@ /(input)/__]: number of bytes to read from the input buffer + + __C declaration:__ @in_len@ + -} + -> IO FC.CInt +botan_hash_update = hs_bindgen_3569c84aa6760fd6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_hash_final@ +foreign import ccall unsafe "hs_bindgen_5c5ef16c270449c5" hs_bindgen_5c5ef16c270449c5 :: + Botan_hash_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| Finalizes the hash computation and writes the output to out[0:botan_hash_output_length()] then reinitializes for computing another digest as if botan_hash_clear had been called. + + [__@hash@ /(input)/__]: hash object + + [__@out@ /(input)/__]: output buffer + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_final@ + +__defined at:__ @botan\/ffi.h:433:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_final :: + Botan_hash_t + {- ^ + + [__@hash@ /(input)/__]: hash object + + __C declaration:__ @hash@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: output buffer + + __C declaration:__ @out@ + -} + -> IO FC.CInt +botan_hash_final = hs_bindgen_5c5ef16c270449c5 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_hash_clear@ +foreign import ccall unsafe "hs_bindgen_7e0edf3a1d75f973" hs_bindgen_7e0edf3a1d75f973 :: + Botan_hash_t + -> IO FC.CInt + +{-| Reinitializes the state of the hash computation. A hash can be computed (with update/final) immediately. + + [__@hash@ /(input)/__]: hash object + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_hash_clear@ + +__defined at:__ @botan\/ffi.h:441:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_clear :: + Botan_hash_t + {- ^ + + [__@hash@ /(input)/__]: hash object + + __C declaration:__ @hash@ + -} + -> IO FC.CInt +botan_hash_clear = hs_bindgen_7e0edf3a1d75f973 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_hash_destroy@ +foreign import ccall unsafe "hs_bindgen_84de35c8557b5375" hs_bindgen_84de35c8557b5375 :: + Botan_hash_t + -> IO FC.CInt + +{-| Frees all resources of the hash object + + [__@hash@ /(input)/__]: hash object + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_hash_destroy@ + +__defined at:__ @botan\/ffi.h:448:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_destroy :: + Botan_hash_t + {- ^ + + [__@hash@ /(input)/__]: hash object + + __C declaration:__ @hash@ + -} + -> IO FC.CInt +botan_hash_destroy = hs_bindgen_84de35c8557b5375 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_hash_name@ +foreign import ccall unsafe "hs_bindgen_a2306ab7635f6cb5" hs_bindgen_a2306ab7635f6cb5 :: + Botan_hash_t + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get the name of this hash function + + [__@hash@ /(input)/__]: the object to read + + [__@name@ /(input)/__]: output buffer + + [__@name_len@ /(input)/__]: on input, the length of buffer, on success the number of bytes written + +__C declaration:__ @botan_hash_name@ + +__defined at:__ @botan\/ffi.h:456:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_hash_name :: + Botan_hash_t + {- ^ + + [__@hash@ /(input)/__]: the object to read + + __C declaration:__ @hash@ + -} + -> Ptr.Ptr FC.CChar + {- ^ + + [__@name@ /(input)/__]: output buffer + + __C declaration:__ @name@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@name_len@ /(input)/__]: on input, the length of buffer, on success the number of bytes written + + __C declaration:__ @name_len@ + -} + -> IO FC.CInt +botan_hash_name = hs_bindgen_a2306ab7635f6cb5 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mac_init@ +foreign import ccall unsafe "hs_bindgen_3c405270be6daf1b" hs_bindgen_3c405270be6daf1b :: + Ptr.Ptr Botan_mac_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| Initialize a message authentication code object + + [__@mac@ /(input)/__]: mac object + + [__@mac_name@ /(input)/__]: name of the hash function, e.g., "HMAC(SHA-384)" + + [__@flags@ /(input)/__]: should be 0 in current API revision, all other uses are reserved and return a negative value (error code) + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_init@ + +__defined at:__ @botan\/ffi.h:471:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_init :: + Ptr.Ptr Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: mac object + + __C declaration:__ @mac@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@mac_name@ /(input)/__]: name of the hash function, e.g., "HMAC(SHA-384)" + + __C declaration:__ @mac_name@ + -} + -> HsBindgen.Runtime.Prelude.Word32 + {- ^ + + [__@flags@ /(input)/__]: should be 0 in current API revision, all other uses are reserved and return a negative value (error code) + + __C declaration:__ @flags@ + -} + -> IO FC.CInt +botan_mac_init = hs_bindgen_3c405270be6daf1b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mac_output_length@ +foreign import ccall unsafe "hs_bindgen_b04b3168f2d7c0df" hs_bindgen_b04b3168f2d7c0df :: + Botan_mac_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Writes the output length of the message authentication code to *output_length + + [__@mac@ /(input)/__]: mac object + + [__@output_length@ /(input)/__]: output buffer to hold the MAC output length + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_output_length@ + +__defined at:__ @botan\/ffi.h:479:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_output_length :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: mac object + + __C declaration:__ @mac@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@output_length@ /(input)/__]: output buffer to hold the MAC output length + + __C declaration:__ @output_length@ + -} + -> IO FC.CInt +botan_mac_output_length = hs_bindgen_b04b3168f2d7c0df + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mac_set_key@ +foreign import ccall unsafe "hs_bindgen_1f2a80f456bb0d54" hs_bindgen_1f2a80f456bb0d54 :: + Botan_mac_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Sets the key on the MAC + + [__@mac@ /(input)/__]: mac object + + [__@key@ /(input)/__]: buffer holding the key + + [__@key_len@ /(input)/__]: size of the key buffer in bytes + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_set_key@ + +__defined at:__ @botan\/ffi.h:488:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_set_key :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: mac object + + __C declaration:__ @mac@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@key@ /(input)/__]: buffer holding the key + + __C declaration:__ @key@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@key_len@ /(input)/__]: size of the key buffer in bytes + + __C declaration:__ @key_len@ + -} + -> IO FC.CInt +botan_mac_set_key = hs_bindgen_1f2a80f456bb0d54 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mac_set_nonce@ +foreign import ccall unsafe "hs_bindgen_d113b2ebfffcbf41" hs_bindgen_d113b2ebfffcbf41 :: + Botan_mac_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Sets the nonce on the MAC + + [__@mac@ /(input)/__]: mac object + + [__@nonce@ /(input)/__]: buffer holding the key + + [__@nonce_len@ /(input)/__]: size of the key buffer in bytes + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_set_nonce@ + +__defined at:__ @botan\/ffi.h:497:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_set_nonce :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: mac object + + __C declaration:__ @mac@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@nonce@ /(input)/__]: buffer holding the key + + __C declaration:__ @nonce@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@nonce_len@ /(input)/__]: size of the key buffer in bytes + + __C declaration:__ @nonce_len@ + -} + -> IO FC.CInt +botan_mac_set_nonce = hs_bindgen_d113b2ebfffcbf41 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mac_update@ +foreign import ccall unsafe "hs_bindgen_105ec9a2cb3af9a9" hs_bindgen_105ec9a2cb3af9a9 :: + Botan_mac_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Send more input to the message authentication code + + [__@mac@ /(input)/__]: mac object + + [__@buf@ /(input)/__]: input buffer + + [__@len@ /(input)/__]: number of bytes to read from the input buffer + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_update@ + +__defined at:__ @botan\/ffi.h:506:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_update :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: mac object + + __C declaration:__ @mac@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@buf@ /(input)/__]: input buffer + + __C declaration:__ @buf@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@len@ /(input)/__]: number of bytes to read from the input buffer + + __C declaration:__ @len@ + -} + -> IO FC.CInt +botan_mac_update = hs_bindgen_105ec9a2cb3af9a9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mac_final@ +foreign import ccall unsafe "hs_bindgen_27448f65c2a8de85" hs_bindgen_27448f65c2a8de85 :: + Botan_mac_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| Finalizes the MAC computation and writes the output to out[0:botan_mac_output_length()] then reinitializes for computing another MAC as if botan_mac_clear had been called. + + [__@mac@ /(input)/__]: mac object + + [__@out@ /(input)/__]: output buffer + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_final@ + +__defined at:__ @botan\/ffi.h:516:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_final :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: mac object + + __C declaration:__ @mac@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: output buffer + + __C declaration:__ @out@ + -} + -> IO FC.CInt +botan_mac_final = hs_bindgen_27448f65c2a8de85 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mac_clear@ +foreign import ccall unsafe "hs_bindgen_e7191711ff1c5333" hs_bindgen_e7191711ff1c5333 :: + Botan_mac_t + -> IO FC.CInt + +{-| Reinitializes the state of the MAC computation. A MAC can be computed (with update/final) immediately. + + [__@mac@ /(input)/__]: mac object + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_mac_clear@ + +__defined at:__ @botan\/ffi.h:524:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_clear :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: mac object + + __C declaration:__ @mac@ + -} + -> IO FC.CInt +botan_mac_clear = hs_bindgen_e7191711ff1c5333 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mac_name@ +foreign import ccall unsafe "hs_bindgen_9f1f7269675b87df" hs_bindgen_9f1f7269675b87df :: + Botan_mac_t + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get the name of this MAC + + [__@mac@ /(input)/__]: the object to read + + [__@name@ /(input)/__]: output buffer + + [__@name_len@ /(input)/__]: on input, the length of buffer, on success the number of bytes written + +__C declaration:__ @botan_mac_name@ + +__defined at:__ @botan\/ffi.h:532:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_name :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: the object to read + + __C declaration:__ @mac@ + -} + -> Ptr.Ptr FC.CChar + {- ^ + + [__@name@ /(input)/__]: output buffer + + __C declaration:__ @name@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@name_len@ /(input)/__]: on input, the length of buffer, on success the number of bytes written + + __C declaration:__ @name_len@ + -} + -> IO FC.CInt +botan_mac_name = hs_bindgen_9f1f7269675b87df + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mac_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_d042aa7cfeefa753" hs_bindgen_d042aa7cfeefa753 :: + Botan_mac_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get the key length limits of this auth code + + [__@mac@ /(input)/__]: the object to read + + [__@out_minimum_keylength@ /(input)/__]: if non-NULL, will be set to minimum keylength of MAC + + [__@out_maximum_keylength@ /(input)/__]: if non-NULL, will be set to maximum keylength of MAC + + [__@out_keylength_modulo@ /(input)/__]: if non-NULL will be set to byte multiple of valid keys + +__C declaration:__ @botan_mac_get_keyspec@ + +__defined at:__ @botan\/ffi.h:542:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_get_keyspec :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: the object to read + + __C declaration:__ @mac@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_minimum_keylength@ /(input)/__]: if non-NULL, will be set to minimum keylength of MAC + + __C declaration:__ @out_minimum_keylength@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_maximum_keylength@ /(input)/__]: if non-NULL, will be set to maximum keylength of MAC + + __C declaration:__ @out_maximum_keylength@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_keylength_modulo@ /(input)/__]: if non-NULL will be set to byte multiple of valid keys + + __C declaration:__ @out_keylength_modulo@ + -} + -> IO FC.CInt +botan_mac_get_keyspec = hs_bindgen_d042aa7cfeefa753 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mac_destroy@ +foreign import ccall unsafe "hs_bindgen_c260e2abd247b9df" hs_bindgen_c260e2abd247b9df :: + Botan_mac_t + -> IO FC.CInt + +{-| Frees all resources of the MAC object + + [__@mac@ /(input)/__]: mac object + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_mac_destroy@ + +__defined at:__ @botan\/ffi.h:552:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mac_destroy :: + Botan_mac_t + {- ^ + + [__@mac@ /(input)/__]: mac object + + __C declaration:__ @mac@ + -} + -> IO FC.CInt +botan_mac_destroy = hs_bindgen_c260e2abd247b9df + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_cipher_init@ +foreign import ccall unsafe "hs_bindgen_b1696496df52edc2" hs_bindgen_b1696496df52edc2 :: + Ptr.Ptr Botan_cipher_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| Initialize a cipher object + +__C declaration:__ @botan_cipher_init@ + +__defined at:__ @botan\/ffi.h:566:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_init :: + Ptr.Ptr Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @name@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> IO FC.CInt +botan_cipher_init = hs_bindgen_b1696496df52edc2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_cipher_name@ +foreign import ccall unsafe "hs_bindgen_9606ecd5e3e0aa80" hs_bindgen_9606ecd5e3e0aa80 :: + Botan_cipher_t + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Return the name of the cipher object + +__C declaration:__ @botan_cipher_name@ + +__defined at:__ @botan\/ffi.h:571:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_name :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> Ptr.Ptr FC.CChar + -- ^ __C declaration:__ @name@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @name_len@ + -> IO FC.CInt +botan_cipher_name = hs_bindgen_9606ecd5e3e0aa80 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_cipher_output_length@ +foreign import ccall unsafe "hs_bindgen_aea5493380af384c" hs_bindgen_aea5493380af384c :: + Botan_cipher_t + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Return the output length of this cipher, for a particular input length. + +__C declaration:__ @botan_cipher_output_length@ + +__defined at:__ @botan\/ffi.h:576:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_output_length :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @in_len@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_cipher_output_length = + hs_bindgen_aea5493380af384c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_cipher_valid_nonce_length@ +foreign import ccall unsafe "hs_bindgen_92da481280acf827" hs_bindgen_92da481280acf827 :: + Botan_cipher_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Return if the specified nonce length is valid for this cipher + +__C declaration:__ @botan_cipher_valid_nonce_length@ + +__defined at:__ @botan\/ffi.h:581:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_valid_nonce_length :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @nl@ + -> IO FC.CInt +botan_cipher_valid_nonce_length = + hs_bindgen_92da481280acf827 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_cipher_get_tag_length@ +foreign import ccall unsafe "hs_bindgen_e4fa9941bc804913" hs_bindgen_e4fa9941bc804913 :: + Botan_cipher_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get the tag length of the cipher (0 for non-AEAD modes) + +__C declaration:__ @botan_cipher_get_tag_length@ + +__defined at:__ @botan\/ffi.h:586:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_get_tag_length :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @tag_size@ + -> IO FC.CInt +botan_cipher_get_tag_length = + hs_bindgen_e4fa9941bc804913 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_cipher_is_authenticated@ +foreign import ccall unsafe "hs_bindgen_f8ce8ce637a4c2db" hs_bindgen_f8ce8ce637a4c2db :: + Botan_cipher_t + -> IO FC.CInt + +{-| Returns 1 iff the cipher provides authentication as well as confidentiality. + +__C declaration:__ @botan_cipher_is_authenticated@ + +__defined at:__ @botan\/ffi.h:591:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_is_authenticated :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_is_authenticated = + hs_bindgen_f8ce8ce637a4c2db + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_cipher_requires_entire_message@ +foreign import ccall unsafe "hs_bindgen_82145b037f3f6d22" hs_bindgen_82145b037f3f6d22 :: + Botan_cipher_t + -> IO FC.CInt + +{-| Returns 1 iff the cipher requires the entire message before any encryption or decryption can be performed. No output data will be produced in botan_cipher_update() until the final flag is set. + +__C declaration:__ @botan_cipher_requires_entire_message@ + +__defined at:__ @botan\/ffi.h:598:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_requires_entire_message :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_requires_entire_message = + hs_bindgen_82145b037f3f6d22 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_cipher_get_default_nonce_length@ +foreign import ccall unsafe "hs_bindgen_9c0dd1bcd67ddae2" hs_bindgen_9c0dd1bcd67ddae2 :: + Botan_cipher_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get the default nonce length of this cipher + +__C declaration:__ @botan_cipher_get_default_nonce_length@ + +__defined at:__ @botan\/ffi.h:603:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_get_default_nonce_length :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @nl@ + -> IO FC.CInt +botan_cipher_get_default_nonce_length = + hs_bindgen_9c0dd1bcd67ddae2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_cipher_get_update_granularity@ +foreign import ccall unsafe "hs_bindgen_7c8b28ff682b03a2" hs_bindgen_7c8b28ff682b03a2 :: + Botan_cipher_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Return the update granularity of the cipher; botan_cipher_update must be called with blocks of this size, except for the final. + +__C declaration:__ @botan_cipher_get_update_granularity@ + +__defined at:__ @botan\/ffi.h:609:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_get_update_granularity :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ug@ + -> IO FC.CInt +botan_cipher_get_update_granularity = + hs_bindgen_7c8b28ff682b03a2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_cipher_get_ideal_update_granularity@ +foreign import ccall unsafe "hs_bindgen_ff83476951f960fe" hs_bindgen_ff83476951f960fe :: + Botan_cipher_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Return the ideal update granularity of the cipher. This is some multiple of the update granularity, reflecting possibilities for optimization. + +__C declaration:__ @botan_cipher_get_ideal_update_granularity@ + +__defined at:__ @botan\/ffi.h:615:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_get_ideal_update_granularity :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ug@ + -> IO FC.CInt +botan_cipher_get_ideal_update_granularity = + hs_bindgen_ff83476951f960fe + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_cipher_query_keylen@ +foreign import ccall unsafe "hs_bindgen_116a373d20ba6337" hs_bindgen_116a373d20ba6337 :: + Botan_cipher_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get information about the key lengths. Prefer botan_cipher_get_keyspec + +__C declaration:__ @botan_cipher_query_keylen@ + +__defined at:__ @botan\/ffi.h:621:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_query_keylen :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_minimum_keylength@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_maximum_keylength@ + -> IO FC.CInt +botan_cipher_query_keylen = + hs_bindgen_116a373d20ba6337 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_4ca78aee4d5ee443" hs_bindgen_4ca78aee4d5ee443 :: + Botan_cipher_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get information about the supported key lengths. + +__C declaration:__ @botan_cipher_get_keyspec@ + +__defined at:__ @botan\/ffi.h:627:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_get_keyspec :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @min_keylen@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @max_keylen@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @mod_keylen@ + -> IO FC.CInt +botan_cipher_get_keyspec = + hs_bindgen_4ca78aee4d5ee443 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_1911b7b4610ee2e4" hs_bindgen_1911b7b4610ee2e4 :: + Botan_cipher_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Set the key for this cipher object + +__C declaration:__ @botan_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:632:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_set_key :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @key_len@ + -> IO FC.CInt +botan_cipher_set_key = hs_bindgen_1911b7b4610ee2e4 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_cipher_reset@ +foreign import ccall unsafe "hs_bindgen_ae576623c4e969e9" hs_bindgen_ae576623c4e969e9 :: + Botan_cipher_t + -> IO FC.CInt + +{-| Reset the message specific state for this cipher. Without resetting the keys, this resets the nonce, and any state associated with any message bits that have been processed so far. + + It is conceptually equivalent to calling botan_cipher_clear followed by botan_cipher_set_key with the original key. + +__C declaration:__ @botan_cipher_reset@ + +__defined at:__ @botan\/ffi.h:642:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_reset :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_reset = hs_bindgen_ae576623c4e969e9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_cipher_set_associated_data@ +foreign import ccall unsafe "hs_bindgen_dbe293f9d88248a2" hs_bindgen_dbe293f9d88248a2 :: + Botan_cipher_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Set the associated data. Will fail if cipher is not an AEAD + +__C declaration:__ @botan_cipher_set_associated_data@ + +__defined at:__ @botan\/ffi.h:647:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_set_associated_data :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @ad@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @ad_len@ + -> IO FC.CInt +botan_cipher_set_associated_data = + hs_bindgen_dbe293f9d88248a2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_cipher_start@ +foreign import ccall unsafe "hs_bindgen_dfa839fa81b0ebe1" hs_bindgen_dfa839fa81b0ebe1 :: + Botan_cipher_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Begin processing a new message using the provided nonce + +__C declaration:__ @botan_cipher_start@ + +__defined at:__ @botan\/ffi.h:652:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_start :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @nonce@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @nonce_len@ + -> IO FC.CInt +botan_cipher_start = hs_bindgen_dfa839fa81b0ebe1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_cipher_update@ +foreign import ccall unsafe "hs_bindgen_faf78b73586c5914" hs_bindgen_faf78b73586c5914 :: + Botan_cipher_t + -> HsBindgen.Runtime.Prelude.Word32 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_cipher_update' +-} +botan_cipher_update_wrapper :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @output@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @output_size@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @output_written@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @input_bytes@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @input_size@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @input_consumed@ + -> IO FC.CInt +botan_cipher_update_wrapper = + hs_bindgen_faf78b73586c5914 + +{-| + + Encrypt/Decrypt some data and/or finalize the encryption/decryption + + This encrypts as many bytes from @input_bytes@ into @output_bytes@ as possible. Unless ``BOTAN_CIPHER_UPDATE_FLAG_FINAL`` is set, this function will consume bytes in multiples of botan_cipher_get_update_granularity(). @input_consumed@ and @output_written@ will be set accordingly and it is the caller's responsibility to adapt their buffers accordingly before calling this function again. Note that, unless ``BOTAN_CIPHER_UPDATE_FLAG_FINAL`` is set, the cipher will at most generate @input_size@ output bytes. + + Eventually, the caller must set the ``BOTAN_CIPHER_UPDATE_FLAG_FINAL`` flag to indicate that no more input will be provided. This will cause the cipher to consume all given input bytes and produce the final output; or return a ``BOTAN_FFI_ERROR_INSUFFICIENT_BUFFER_SPACE`` error if the given output buffer was too small. In the latter case, @output_written@ will be set to the required buffer size. Calling again with ``BOTAN_CIPHER_UPDATE_FLAG_FINAL``, a big enough buffer and no further input will then produce the final output. + + Note that some ciphers require the entire message to be provided before any output is produced. + + __see:__ botan_cipher_requires_entire_message(). + +__C declaration:__ @botan_cipher_update@ + +__defined at:__ @botan\/ffi.h:679:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_update :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @flags@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @output@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @output_size@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @output_written@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @input_bytes@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @input_size@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @input_consumed@ + -> IO FC.CInt +botan_cipher_update = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + HsBindgen.Runtime.IncompleteArray.withPtr x5 (\ptr8 -> + hs_bindgen_faf78b73586c5914 x0 x1 x2 x3 x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x6 x7) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_097768b298c2be6d" hs_bindgen_097768b298c2be6d :: + Botan_cipher_t + -> IO FC.CInt + +{-| Reset the key, nonce, AD and all other state on this cipher object + +__C declaration:__ @botan_cipher_clear@ + +__defined at:__ @botan\/ffi.h:691:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_clear :: + Botan_cipher_t + -- ^ __C declaration:__ @hash@ + -> IO FC.CInt +botan_cipher_clear = hs_bindgen_097768b298c2be6d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_5007ee527699a1c9" hs_bindgen_5007ee527699a1c9 :: + Botan_cipher_t + -> IO FC.CInt + +{-| Destroy the cipher object + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_cipher_destroy@ + +__defined at:__ @botan\/ffi.h:697:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_cipher_destroy :: + Botan_cipher_t + -- ^ __C declaration:__ @cipher@ + -> IO FC.CInt +botan_cipher_destroy = hs_bindgen_5007ee527699a1c9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pbkdf@ +foreign import ccall unsafe "hs_bindgen_63fa0ce7dd69a6d4" hs_bindgen_63fa0ce7dd69a6d4 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pbkdf' +-} +botan_pbkdf_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @pbkdf_algo@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @iterations@ + -> IO FC.CInt +botan_pbkdf_wrapper = hs_bindgen_63fa0ce7dd69a6d4 + +{-| __C declaration:__ @botan_pbkdf@ + + __defined at:__ @botan\/ffi.h:716:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pbkdf :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @pbkdf_algo@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @iterations@ + -> IO FC.CInt +botan_pbkdf = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + HsBindgen.Runtime.IncompleteArray.withPtr x4 (\ptr7 -> + hs_bindgen_63fa0ce7dd69a6d4 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr7) x5 x6) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pbkdf_timed@ +foreign import ccall unsafe "hs_bindgen_f7c23b7144806140" hs_bindgen_f7c23b7144806140 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pbkdf_timed' +-} +botan_pbkdf_timed_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@pbkdf_algo@ /(input)/__]: PBKDF algorithm, e.g., "PBKDF2(SHA-256)" + + __C declaration:__ @pbkdf_algo@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: buffer to store the derived key, must be of out_len bytes + + __C declaration:__ @out@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_len@ /(input)/__]: the desired length of the key to produce + + __C declaration:__ @out_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@passphrase@ /(input)/__]: the password to derive the key from + + __C declaration:__ @passphrase@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@salt@ /(input)/__]: a randomly chosen salt + + __C declaration:__ @salt@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@salt_len@ /(input)/__]: length of salt in bytes + + __C declaration:__ @salt_len@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@milliseconds_to_run@ /(input)/__]: if iterations is zero, then instead the PBKDF is run until milliseconds_to_run milliseconds has passed + + __C declaration:__ @milliseconds_to_run@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_iterations_used@ /(input)/__]: set to the number iterations executed + + __C declaration:__ @out_iterations_used@ + -} + -> IO FC.CInt +botan_pbkdf_timed_wrapper = + hs_bindgen_f7c23b7144806140 + +{-| Derive a key from a passphrase, running until msec time has elapsed. + + [__@pbkdf_algo@ /(input)/__]: PBKDF algorithm, e.g., "PBKDF2(SHA-256)" + + [__@out@ /(input)/__]: buffer to store the derived key, must be of out_len bytes + + [__@out_len@ /(input)/__]: the desired length of the key to produce + + [__@passphrase@ /(input)/__]: the password to derive the key from + + [__@salt@ /(input)/__]: a randomly chosen salt + + [__@salt_len@ /(input)/__]: length of salt in bytes + + [__@milliseconds_to_run@ /(input)/__]: if iterations is zero, then instead the PBKDF is run until milliseconds_to_run milliseconds has passed + + [__@out_iterations_used@ /(input)/__]: set to the number iterations executed + + __returns:__ 0 on success, a negative value on failure + + Deprecated: use + + botan_pwdhash_timed(pbkdf_algo, static_cast (ms_to_run), iterations_used, nullptr, nullptr, out, out_len, password, 0, salt, salt_len); + +__C declaration:__ @botan_pbkdf_timed@ + +__defined at:__ @botan\/ffi.h:749:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_pbkdf_timed :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@pbkdf_algo@ /(input)/__]: PBKDF algorithm, e.g., "PBKDF2(SHA-256)" + + __C declaration:__ @pbkdf_algo@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: buffer to store the derived key, must be of out_len bytes + + __C declaration:__ @out@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_len@ /(input)/__]: the desired length of the key to produce + + __C declaration:__ @out_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@passphrase@ /(input)/__]: the password to derive the key from + + __C declaration:__ @passphrase@ + -} + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@salt@ /(input)/__]: a randomly chosen salt + + __C declaration:__ @salt@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@salt_len@ /(input)/__]: length of salt in bytes + + __C declaration:__ @salt_len@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@milliseconds_to_run@ /(input)/__]: if iterations is zero, then instead the PBKDF is run until milliseconds_to_run milliseconds has passed + + __C declaration:__ @milliseconds_to_run@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_iterations_used@ /(input)/__]: set to the number iterations executed + + __C declaration:__ @out_iterations_used@ + -} + -> IO FC.CInt +botan_pbkdf_timed = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + HsBindgen.Runtime.IncompleteArray.withPtr x4 (\ptr8 -> + hs_bindgen_f7c23b7144806140 x0 x1 x2 x3 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x5 x6 x7) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pwdhash@ +foreign import ccall unsafe "hs_bindgen_773ce832f2991924" hs_bindgen_773ce832f2991924 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pwdhash' +-} +botan_pwdhash_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @algo@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param1@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param2@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param3@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @passphrase_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> IO FC.CInt +botan_pwdhash_wrapper = hs_bindgen_773ce832f2991924 + +{-| __C declaration:__ @botan_pwdhash@ + + __defined at:__ @botan\/ffi.h:773:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pwdhash :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @algo@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param1@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param2@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param3@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @passphrase_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> IO FC.CInt +botan_pwdhash = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + \x8 -> + \x9 -> + HsBindgen.Runtime.IncompleteArray.withPtr x8 (\ptr10 -> + hs_bindgen_773ce832f2991924 x0 x1 x2 x3 x4 x5 x6 x7 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x9) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_pwdhash_timed@ +foreign import ccall unsafe "hs_bindgen_0050ad5a84aefdc4" hs_bindgen_0050ad5a84aefdc4 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.Word32 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_pwdhash_timed' +-} +botan_pwdhash_timed_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @algo@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @msec@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param1@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param2@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param3@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @passphrase_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> IO FC.CInt +botan_pwdhash_timed_wrapper = + hs_bindgen_0050ad5a84aefdc4 + +{-| __C declaration:__ @botan_pwdhash_timed@ + + __defined at:__ @botan\/ffi.h:800:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_pwdhash_timed :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @algo@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @msec@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param1@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param2@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @param3@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @passphrase_len@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> IO FC.CInt +botan_pwdhash_timed = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + \x8 -> + \x9 -> + \x10 -> + HsBindgen.Runtime.IncompleteArray.withPtr x9 (\ptr11 -> + hs_bindgen_0050ad5a84aefdc4 x0 x1 x2 x3 x4 x5 x6 x7 x8 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr11) x10) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_scrypt@ +foreign import ccall unsafe "hs_bindgen_ee318769e22bfa5d" hs_bindgen_ee318769e22bfa5d :: + Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_scrypt' +-} +botan_scrypt_wrapper :: + Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @n@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @r@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @p@ + -> IO FC.CInt +botan_scrypt_wrapper = hs_bindgen_ee318769e22bfa5d + +{-| Derive a key using scrypt Deprecated; use botan_pwdhash("Scrypt", N, r, p, out, out_len, password, 0, salt, salt_len); + +__C declaration:__ @botan_scrypt@ + +__defined at:__ @botan\/ffi.h:819:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_scrypt :: + Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @passphrase@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @salt@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @salt_len@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @n@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @r@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @p@ + -> IO FC.CInt +botan_scrypt = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + HsBindgen.Runtime.IncompleteArray.withPtr x3 (\ptr8 -> + hs_bindgen_ee318769e22bfa5d x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr8) x4 x5 x6 x7) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_kdf@ +foreign import ccall unsafe "hs_bindgen_724a97f16bb502a5" hs_bindgen_724a97f16bb502a5 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_kdf' +-} +botan_kdf_wrapper :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@kdf_algo@ /(input)/__]: KDF algorithm, e.g., "SP800-56C" + + __C declaration:__ @kdf_algo@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: buffer holding the derived key, must be of length out_len + + __C declaration:__ @out@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_len@ /(input)/__]: the desired output length in bytes + + __C declaration:__ @out_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@secret@ /(input)/__]: the secret input + + __C declaration:__ @secret@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@secret_len@ /(input)/__]: size of secret in bytes + + __C declaration:__ @secret_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@salt@ /(input)/__]: a diversifier + + __C declaration:__ @salt@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@salt_len@ /(input)/__]: size of salt in bytes + + __C declaration:__ @salt_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@label@ /(input)/__]: purpose for the derived keying material + + __C declaration:__ @label@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@label_len@ /(input)/__]: size of label in bytes + + __C declaration:__ @label_len@ + -} + -> IO FC.CInt +botan_kdf_wrapper = hs_bindgen_724a97f16bb502a5 + +{-| Derive a key + + [__@kdf_algo@ /(input)/__]: KDF algorithm, e.g., "SP800-56C" + + [__@out@ /(input)/__]: buffer holding the derived key, must be of length out_len + + [__@out_len@ /(input)/__]: the desired output length in bytes + + [__@secret@ /(input)/__]: the secret input + + [__@secret_len@ /(input)/__]: size of secret in bytes + + [__@salt@ /(input)/__]: a diversifier + + [__@salt_len@ /(input)/__]: size of salt in bytes + + [__@label@ /(input)/__]: purpose for the derived keying material + + [__@label_len@ /(input)/__]: size of label in bytes + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_kdf@ + +__defined at:__ @botan\/ffi.h:842:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_kdf :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@kdf_algo@ /(input)/__]: KDF algorithm, e.g., "SP800-56C" + + __C declaration:__ @kdf_algo@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: buffer holding the derived key, must be of length out_len + + __C declaration:__ @out@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_len@ /(input)/__]: the desired output length in bytes + + __C declaration:__ @out_len@ + -} + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@secret@ /(input)/__]: the secret input + + __C declaration:__ @secret@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@secret_len@ /(input)/__]: size of secret in bytes + + __C declaration:__ @secret_len@ + -} + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@salt@ /(input)/__]: a diversifier + + __C declaration:__ @salt@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@salt_len@ /(input)/__]: size of salt in bytes + + __C declaration:__ @salt_len@ + -} + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@label@ /(input)/__]: purpose for the derived keying material + + __C declaration:__ @label@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@label_len@ /(input)/__]: size of label in bytes + + __C declaration:__ @label_len@ + -} + -> IO FC.CInt +botan_kdf = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + \x4 -> + \x5 -> + \x6 -> + \x7 -> + \x8 -> + HsBindgen.Runtime.IncompleteArray.withPtr x7 (\ptr9 -> + HsBindgen.Runtime.IncompleteArray.withPtr x5 (\ptr10 -> + HsBindgen.Runtime.IncompleteArray.withPtr x3 (\ptr11 -> + hs_bindgen_724a97f16bb502a5 x0 x1 x2 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr11) x4 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr10) x6 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr9) x8))) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_block_cipher_init@ +foreign import ccall unsafe "hs_bindgen_9e75e75d58375e81" hs_bindgen_9e75e75d58375e81 :: + Ptr.Ptr Botan_block_cipher_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Initialize a block cipher object + +__C declaration:__ @botan_block_cipher_init@ + +__defined at:__ @botan\/ffi.h:860:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_init :: + Ptr.Ptr Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @cipher_name@ + -> IO FC.CInt +botan_block_cipher_init = hs_bindgen_9e75e75d58375e81 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_block_cipher_destroy@ +foreign import ccall unsafe "hs_bindgen_b579f904069bb8cd" hs_bindgen_b579f904069bb8cd :: + Botan_block_cipher_t + -> IO FC.CInt + +{-| Destroy a block cipher object + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_block_cipher_destroy@ + +__defined at:__ @botan\/ffi.h:866:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_destroy :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> IO FC.CInt +botan_block_cipher_destroy = + hs_bindgen_b579f904069bb8cd + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_block_cipher_clear@ +foreign import ccall unsafe "hs_bindgen_583c160688fa597b" hs_bindgen_583c160688fa597b :: + Botan_block_cipher_t + -> IO FC.CInt + +{-| Reinitializes the block cipher + + __returns:__ 0 on success, a negative value on failure + +__C declaration:__ @botan_block_cipher_clear@ + +__defined at:__ @botan\/ffi.h:872:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_clear :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> IO FC.CInt +botan_block_cipher_clear = + hs_bindgen_583c160688fa597b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_block_cipher_set_key@ +foreign import ccall unsafe "hs_bindgen_d0ed5c4e0197b90a" hs_bindgen_d0ed5c4e0197b90a :: + Botan_block_cipher_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_block_cipher_set_key' +-} +botan_block_cipher_set_key_wrapper :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> IO FC.CInt +botan_block_cipher_set_key_wrapper = + hs_bindgen_d0ed5c4e0197b90a + +{-| Set the key for a block cipher instance + +__C declaration:__ @botan_block_cipher_set_key@ + +__defined at:__ @botan\/ffi.h:877:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_set_key :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @key@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @len@ + -> IO FC.CInt +botan_block_cipher_set_key = + \x0 -> + \x1 -> + \x2 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr3 -> + hs_bindgen_d0ed5c4e0197b90a x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_block_cipher_block_size@ +foreign import ccall unsafe "hs_bindgen_130a0d6d2c8ef73f" hs_bindgen_130a0d6d2c8ef73f :: + Botan_block_cipher_t + -> IO FC.CInt + +{-| Return the positive block size of this block cipher, or negative to indicate an error + +__C declaration:__ @botan_block_cipher_block_size@ + +__defined at:__ @botan\/ffi.h:883:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_block_size :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> IO FC.CInt +botan_block_cipher_block_size = + hs_bindgen_130a0d6d2c8ef73f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_block_cipher_encrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_2d5a11dfcca787a2" hs_bindgen_2d5a11dfcca787a2 :: + Botan_block_cipher_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_block_cipher_encrypt_blocks' +-} +botan_block_cipher_encrypt_blocks_wrapper :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @in'@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @blocks@ + -> IO FC.CInt +botan_block_cipher_encrypt_blocks_wrapper = + hs_bindgen_2d5a11dfcca787a2 + +{-| Encrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_encrypt_blocks@ + +__defined at:__ @botan\/ffi.h:889:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_encrypt_blocks :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @in'@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @blocks@ + -> IO FC.CInt +botan_block_cipher_encrypt_blocks = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr4 -> + hs_bindgen_2d5a11dfcca787a2 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_block_cipher_decrypt_blocks@ +foreign import ccall unsafe "hs_bindgen_a25bffdc64c0a28e" hs_bindgen_a25bffdc64c0a28e :: + Botan_block_cipher_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_block_cipher_decrypt_blocks' +-} +botan_block_cipher_decrypt_blocks_wrapper :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @in'@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @blocks@ + -> IO FC.CInt +botan_block_cipher_decrypt_blocks_wrapper = + hs_bindgen_a25bffdc64c0a28e + +{-| Decrypt one or more blocks with the cipher + +__C declaration:__ @botan_block_cipher_decrypt_blocks@ + +__defined at:__ @botan\/ffi.h:895:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_decrypt_blocks :: + Botan_block_cipher_t + -- ^ __C declaration:__ @bc@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @in'@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @out@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @blocks@ + -> IO FC.CInt +botan_block_cipher_decrypt_blocks = + \x0 -> + \x1 -> + \x2 -> + \x3 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr4 -> + hs_bindgen_a25bffdc64c0a28e x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr4) x2 x3) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_block_cipher_name@ +foreign import ccall unsafe "hs_bindgen_7f150c663e772eb8" hs_bindgen_7f150c663e772eb8 :: + Botan_block_cipher_t + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get the name of this block cipher + + [__@cipher@ /(input)/__]: the object to read + + [__@name@ /(input)/__]: output buffer + + [__@name_len@ /(input)/__]: on input, the length of buffer, on success the number of bytes written + +__C declaration:__ @botan_block_cipher_name@ + +__defined at:__ @botan\/ffi.h:903:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_name :: + Botan_block_cipher_t + {- ^ + + [__@cipher@ /(input)/__]: the object to read + + __C declaration:__ @cipher@ + -} + -> Ptr.Ptr FC.CChar + {- ^ + + [__@name@ /(input)/__]: output buffer + + __C declaration:__ @name@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@name_len@ /(input)/__]: on input, the length of buffer, on success the number of bytes written + + __C declaration:__ @name_len@ + -} + -> IO FC.CInt +botan_block_cipher_name = hs_bindgen_7f150c663e772eb8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_block_cipher_get_keyspec@ +foreign import ccall unsafe "hs_bindgen_f338e6f033884f73" hs_bindgen_f338e6f033884f73 :: + Botan_block_cipher_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Get the key length limits of this block cipher + + [__@cipher@ /(input)/__]: the object to read + + [__@out_minimum_keylength@ /(input)/__]: if non-NULL, will be set to minimum keylength of cipher + + [__@out_maximum_keylength@ /(input)/__]: if non-NULL, will be set to maximum keylength of cipher + + [__@out_keylength_modulo@ /(input)/__]: if non-NULL will be set to byte multiple of valid keys + +__C declaration:__ @botan_block_cipher_get_keyspec@ + +__defined at:__ @botan\/ffi.h:913:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_block_cipher_get_keyspec :: + Botan_block_cipher_t + {- ^ + + [__@cipher@ /(input)/__]: the object to read + + __C declaration:__ @cipher@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_minimum_keylength@ /(input)/__]: if non-NULL, will be set to minimum keylength of cipher + + __C declaration:__ @out_minimum_keylength@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_maximum_keylength@ /(input)/__]: if non-NULL, will be set to maximum keylength of cipher + + __C declaration:__ @out_maximum_keylength@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_keylength_modulo@ /(input)/__]: if non-NULL will be set to byte multiple of valid keys + + __C declaration:__ @out_keylength_modulo@ + -} + -> IO FC.CInt +botan_block_cipher_get_keyspec = + hs_bindgen_f338e6f033884f73 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_init@ +foreign import ccall unsafe "hs_bindgen_f1a7fe69a2349296" hs_bindgen_f1a7fe69a2349296 :: + Ptr.Ptr Botan_mp_t + -> IO FC.CInt + +{-| Initialize an MPI + +__C declaration:__ @botan_mp_init@ + +__defined at:__ @botan\/ffi.h:926:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_init :: + Ptr.Ptr Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_init = hs_bindgen_f1a7fe69a2349296 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_destroy@ +foreign import ccall unsafe "hs_bindgen_877291930b8b965d" hs_bindgen_877291930b8b965d :: + Botan_mp_t + -> IO FC.CInt + +{-| Destroy (deallocate) an MPI + + __returns:__ 0 if success, error if invalid object handle + +__C declaration:__ @botan_mp_destroy@ + +__defined at:__ @botan\/ffi.h:932:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_destroy :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_destroy = hs_bindgen_877291930b8b965d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_to_hex@ +foreign import ccall unsafe "hs_bindgen_7604e6a73c0483bb" hs_bindgen_7604e6a73c0483bb :: + Botan_mp_t + -> Ptr.Ptr FC.CChar + -> IO FC.CInt + +{-| Convert the MPI to a hex string. Writes up to botan_mp_num_bytes(mp)*2 + 5 bytes + + Prefer botan_mp_view_hex + +__C declaration:__ @botan_mp_to_hex@ + +__defined at:__ @botan\/ffi.h:939:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_to_hex :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> Ptr.Ptr FC.CChar + -- ^ __C declaration:__ @out@ + -> IO FC.CInt +botan_mp_to_hex = hs_bindgen_7604e6a73c0483bb + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_view_hex@ +foreign import ccall unsafe "hs_bindgen_088ab29f3f0cd1ef" hs_bindgen_088ab29f3f0cd1ef :: + Botan_mp_t + -> Botan_view_ctx + -> Botan_view_str_fn + -> IO FC.CInt + +{-| View the hex string encoding of the MPI. + +__C declaration:__ @botan_mp_view_hex@ + +__defined at:__ @botan\/ffi.h:944:29@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_view_hex :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_str_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_mp_view_hex = hs_bindgen_088ab29f3f0cd1ef + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_to_str@ +foreign import ccall unsafe "hs_bindgen_724ca54d90e77453" hs_bindgen_724ca54d90e77453 :: + Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr FC.CChar + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Convert the MPI to a string. Currently radix == 10 and radix == 16 are supported. + +__C declaration:__ @botan_mp_to_str@ + +__defined at:__ @botan\/ffi.h:949:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_to_str :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @radix@ + -> Ptr.Ptr FC.CChar + -- ^ __C declaration:__ @out@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @out_len@ + -> IO FC.CInt +botan_mp_to_str = hs_bindgen_724ca54d90e77453 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_view_str@ +foreign import ccall unsafe "hs_bindgen_743cb04d2c87a1d7" hs_bindgen_743cb04d2c87a1d7 :: + Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word8 + -> Botan_view_ctx + -> Botan_view_str_fn + -> IO FC.CInt + +{-| View the MPI as a radix-N integer. Currently only radix 10 and radix 16 are supported + +__C declaration:__ @botan_mp_view_str@ + +__defined at:__ @botan\/ffi.h:954:29@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_view_str :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @radix@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_str_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_mp_view_str = hs_bindgen_743cb04d2c87a1d7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_clear@ +foreign import ccall unsafe "hs_bindgen_735dd2e91a4a1ebc" hs_bindgen_735dd2e91a4a1ebc :: + Botan_mp_t + -> IO FC.CInt + +{-| Set the MPI to zero + +__C declaration:__ @botan_mp_clear@ + +__defined at:__ @botan\/ffi.h:959:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_clear = hs_bindgen_735dd2e91a4a1ebc + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_set_from_int@ +foreign import ccall unsafe "hs_bindgen_7151ed77d92cc04f" hs_bindgen_7151ed77d92cc04f :: + Botan_mp_t + -> FC.CInt + -> IO FC.CInt + +{-| Set the MPI value from an int + +__C declaration:__ @botan_mp_set_from_int@ + +__defined at:__ @botan\/ffi.h:964:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_set_from_int :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> FC.CInt + -- ^ __C declaration:__ @initial_value@ + -> IO FC.CInt +botan_mp_set_from_int = hs_bindgen_7151ed77d92cc04f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_set_from_mp@ +foreign import ccall unsafe "hs_bindgen_3ecf7664beaff180" hs_bindgen_3ecf7664beaff180 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| Set the MPI value from another MP object + +__C declaration:__ @botan_mp_set_from_mp@ + +__defined at:__ @botan\/ffi.h:969:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_set_from_mp :: + Botan_mp_t + -- ^ __C declaration:__ @dest@ + -> Botan_mp_t + -- ^ __C declaration:__ @source@ + -> IO FC.CInt +botan_mp_set_from_mp = hs_bindgen_3ecf7664beaff180 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_set_from_str@ +foreign import ccall unsafe "hs_bindgen_51c66c0e33bc5bb6" hs_bindgen_51c66c0e33bc5bb6 :: + Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Set the MPI value from a string + +__C declaration:__ @botan_mp_set_from_str@ + +__defined at:__ @botan\/ffi.h:974:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_set_from_str :: + Botan_mp_t + -- ^ __C declaration:__ @dest@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @str@ + -> IO FC.CInt +botan_mp_set_from_str = hs_bindgen_51c66c0e33bc5bb6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_set_from_radix_str@ +foreign import ccall unsafe "hs_bindgen_9ce149af7dda164d" hs_bindgen_9ce149af7dda164d :: + Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Set the MPI value from a string with arbitrary radix. For arbitrary being 10 or 16. + +__C declaration:__ @botan_mp_set_from_radix_str@ + +__defined at:__ @botan\/ffi.h:980:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_set_from_radix_str :: + Botan_mp_t + -- ^ __C declaration:__ @dest@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @str@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @radix@ + -> IO FC.CInt +botan_mp_set_from_radix_str = + hs_bindgen_9ce149af7dda164d + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_num_bits@ +foreign import ccall unsafe "hs_bindgen_1d19acb89a75ce15" hs_bindgen_1d19acb89a75ce15 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Return the number of significant bits in the MPI + +__C declaration:__ @botan_mp_num_bits@ + +__defined at:__ @botan\/ffi.h:985:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_num_bits :: + Botan_mp_t + -- ^ __C declaration:__ @n@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @bits@ + -> IO FC.CInt +botan_mp_num_bits = hs_bindgen_1d19acb89a75ce15 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_num_bytes@ +foreign import ccall unsafe "hs_bindgen_caa3b729db8b36b7" hs_bindgen_caa3b729db8b36b7 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Return the number of significant bytes in the MPI + +__C declaration:__ @botan_mp_num_bytes@ + +__defined at:__ @botan\/ffi.h:990:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_num_bytes :: + Botan_mp_t + -- ^ __C declaration:__ @n@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @bytes@ + -> IO FC.CInt +botan_mp_num_bytes = hs_bindgen_caa3b729db8b36b7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_to_bin@ +foreign import ccall unsafe "hs_bindgen_6002a580af9eb5c0" hs_bindgen_6002a580af9eb5c0 :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_bin@ + + __defined at:__ @botan\/ffi.h:997:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_to_bin :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @vec@ + -> IO FC.CInt +botan_mp_to_bin = hs_bindgen_6002a580af9eb5c0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_view_bin@ +foreign import ccall unsafe "hs_bindgen_a0dc23048f9b315c" hs_bindgen_a0dc23048f9b315c :: + Botan_mp_t + -> Botan_view_ctx + -> Botan_view_bin_fn + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_view_bin@ + + __defined at:__ @botan\/ffi.h:1004:29@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_view_bin :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> Botan_view_ctx + -- ^ __C declaration:__ @ctx@ + -> Botan_view_bin_fn + -- ^ __C declaration:__ @view@ + -> IO FC.CInt +botan_mp_view_bin = hs_bindgen_a0dc23048f9b315c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_from_bin@ +foreign import ccall unsafe "hs_bindgen_7de64434c1295755" hs_bindgen_7de64434c1295755 :: + Botan_mp_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Pointer-based API for 'botan_mp_from_bin' +-} +botan_mp_from_bin_wrapper :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @vec@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @vec_len@ + -> IO FC.CInt +botan_mp_from_bin_wrapper = + hs_bindgen_7de64434c1295755 + +{-| __C declaration:__ @botan_mp_from_bin@ + + __defined at:__ @botan\/ffi.h:1009:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_from_bin :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> HsBindgen.Runtime.IncompleteArray.IncompleteArray HsBindgen.Runtime.Prelude.Word8 + -- ^ __C declaration:__ @vec@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @vec_len@ + -> IO FC.CInt +botan_mp_from_bin = + \x0 -> + \x1 -> + \x2 -> + HsBindgen.Runtime.IncompleteArray.withPtr x1 (\ptr3 -> + hs_bindgen_7de64434c1295755 x0 (HsBindgen.Runtime.ConstPtr.ConstPtr ptr3) x2) + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_to_uint32@ +foreign import ccall unsafe "hs_bindgen_17399983cbdd818c" hs_bindgen_17399983cbdd818c :: + Botan_mp_t + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_to_uint32@ + + __defined at:__ @botan\/ffi.h:1014:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_to_uint32 :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> Ptr.Ptr HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @val@ + -> IO FC.CInt +botan_mp_to_uint32 = hs_bindgen_17399983cbdd818c + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_is_positive@ +foreign import ccall unsafe "hs_bindgen_9167e1d5901fe29a" hs_bindgen_9167e1d5901fe29a :: + Botan_mp_t + -> IO FC.CInt + +{-| This function should have been named mp_is_non_negative. Returns 1 iff mp is greater than *or equal to* zero. Use botan_mp_is_negative to detect negative numbers, botan_mp_is_zero to check for zero. + +__C declaration:__ @botan_mp_is_positive@ + +__defined at:__ @botan\/ffi.h:1021:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_positive :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_is_positive = hs_bindgen_9167e1d5901fe29a + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_is_negative@ +foreign import ccall unsafe "hs_bindgen_69b3d3ce9b448eca" hs_bindgen_69b3d3ce9b448eca :: + Botan_mp_t + -> IO FC.CInt + +{-| Return 1 iff mp is less than 0 + +__C declaration:__ @botan_mp_is_negative@ + +__defined at:__ @botan\/ffi.h:1026:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_negative :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_is_negative = hs_bindgen_69b3d3ce9b448eca + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_flip_sign@ +foreign import ccall unsafe "hs_bindgen_b8ccb669f9aa7624" hs_bindgen_b8ccb669f9aa7624 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_flip_sign@ + + __defined at:__ @botan\/ffi.h:1028:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_flip_sign :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_flip_sign = hs_bindgen_b8ccb669f9aa7624 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_is_zero@ +foreign import ccall unsafe "hs_bindgen_a03eb24c7b5790cb" hs_bindgen_a03eb24c7b5790cb :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_zero@ + + __defined at:__ @botan\/ffi.h:1030:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_zero :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_is_zero = hs_bindgen_a03eb24c7b5790cb + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_is_odd@ +foreign import ccall unsafe "hs_bindgen_3d6d0152cc1825b1" hs_bindgen_3d6d0152cc1825b1 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_odd@ + + __defined at:__ @botan\/ffi.h:1032:76@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_odd :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_is_odd = hs_bindgen_3d6d0152cc1825b1 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_is_even@ +foreign import ccall unsafe "hs_bindgen_930850ed97e73779" hs_bindgen_930850ed97e73779 :: + Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_is_even@ + + __defined at:__ @botan\/ffi.h:1033:76@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_even :: + Botan_mp_t + -- ^ __C declaration:__ @mp@ + -> IO FC.CInt +botan_mp_is_even = hs_bindgen_930850ed97e73779 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_add_u32@ +foreign import ccall unsafe "hs_bindgen_c9c94595945dc8cc" hs_bindgen_c9c94595945dc8cc :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add_u32@ + + __defined at:__ @botan\/ffi.h:1035:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_add_u32 :: + Botan_mp_t + -- ^ __C declaration:__ @result@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_add_u32 = hs_bindgen_c9c94595945dc8cc + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_sub_u32@ +foreign import ccall unsafe "hs_bindgen_0ee633f353cd40e3" hs_bindgen_0ee633f353cd40e3 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub_u32@ + + __defined at:__ @botan\/ffi.h:1036:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_sub_u32 :: + Botan_mp_t + -- ^ __C declaration:__ @result@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> HsBindgen.Runtime.Prelude.Word32 + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_sub_u32 = hs_bindgen_0ee633f353cd40e3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_add@ +foreign import ccall unsafe "hs_bindgen_cd13bdb4f4e7e8a8" hs_bindgen_cd13bdb4f4e7e8a8 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_add@ + + __defined at:__ @botan\/ffi.h:1038:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_add :: + Botan_mp_t + -- ^ __C declaration:__ @result@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_add = hs_bindgen_cd13bdb4f4e7e8a8 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_sub@ +foreign import ccall unsafe "hs_bindgen_17e9d247da5383ad" hs_bindgen_17e9d247da5383ad :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_sub@ + + __defined at:__ @botan\/ffi.h:1039:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_sub :: + Botan_mp_t + -- ^ __C declaration:__ @result@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_sub = hs_bindgen_17e9d247da5383ad + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_mul@ +foreign import ccall unsafe "hs_bindgen_05cae01d7bb350f0" hs_bindgen_05cae01d7bb350f0 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mul@ + + __defined at:__ @botan\/ffi.h:1040:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_mul :: + Botan_mp_t + -- ^ __C declaration:__ @result@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_mul = hs_bindgen_05cae01d7bb350f0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_div@ +foreign import ccall unsafe "hs_bindgen_7d9cf9e9edeb490e" hs_bindgen_7d9cf9e9edeb490e :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_div@ + + __defined at:__ @botan\/ffi.h:1043:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_div :: + Botan_mp_t + -- ^ __C declaration:__ @quotient@ + -> Botan_mp_t + -- ^ __C declaration:__ @remainder@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_div = hs_bindgen_7d9cf9e9edeb490e + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_mod_mul@ +foreign import ccall unsafe "hs_bindgen_e709e8e0bfb9d3e0" hs_bindgen_e709e8e0bfb9d3e0 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mod_mul@ + + __defined at:__ @botan\/ffi.h:1046:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_mod_mul :: + Botan_mp_t + -- ^ __C declaration:__ @result@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> Botan_mp_t + -- ^ __C declaration:__ @mod@ + -> IO FC.CInt +botan_mp_mod_mul = hs_bindgen_e709e8e0bfb9d3e0 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_equal@ +foreign import ccall unsafe "hs_bindgen_15c80afdf4dac483" hs_bindgen_15c80afdf4dac483 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_equal@ + + __defined at:__ @botan\/ffi.h:1053:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_equal :: + Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_equal = hs_bindgen_15c80afdf4dac483 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_cmp@ +foreign import ccall unsafe "hs_bindgen_9ba06255f768e339" hs_bindgen_9ba06255f768e339 :: + Ptr.Ptr FC.CInt + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_cmp@ + + __defined at:__ @botan\/ffi.h:1060:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_cmp :: + Ptr.Ptr FC.CInt + -- ^ __C declaration:__ @result@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_cmp = hs_bindgen_9ba06255f768e339 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_swap@ +foreign import ccall unsafe "hs_bindgen_27559a02b3c131f3" hs_bindgen_27559a02b3c131f3 :: + Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_swap@ + + __defined at:__ @botan\/ffi.h:1065:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_swap :: + Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_swap = hs_bindgen_27559a02b3c131f3 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_powmod@ +foreign import ccall unsafe "hs_bindgen_b01a01612348dc51" hs_bindgen_b01a01612348dc51 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_powmod@ + + __defined at:__ @botan\/ffi.h:1069:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_powmod :: + Botan_mp_t + -- ^ __C declaration:__ @out@ + -> Botan_mp_t + -- ^ __C declaration:__ @base@ + -> Botan_mp_t + -- ^ __C declaration:__ @exponent@ + -> Botan_mp_t + -- ^ __C declaration:__ @modulus@ + -> IO FC.CInt +botan_mp_powmod = hs_bindgen_b01a01612348dc51 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_lshift@ +foreign import ccall unsafe "hs_bindgen_680758d6475fee70" hs_bindgen_680758d6475fee70 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_lshift@ + + __defined at:__ @botan\/ffi.h:1071:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_lshift :: + Botan_mp_t + -- ^ __C declaration:__ @out@ + -> Botan_mp_t + -- ^ __C declaration:__ @in'@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @shift@ + -> IO FC.CInt +botan_mp_lshift = hs_bindgen_680758d6475fee70 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_rshift@ +foreign import ccall unsafe "hs_bindgen_ad4a808202a10688" hs_bindgen_ad4a808202a10688 :: + Botan_mp_t + -> Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rshift@ + + __defined at:__ @botan\/ffi.h:1072:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_rshift :: + Botan_mp_t + -- ^ __C declaration:__ @out@ + -> Botan_mp_t + -- ^ __C declaration:__ @in'@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @shift@ + -> IO FC.CInt +botan_mp_rshift = hs_bindgen_ad4a808202a10688 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_mod_inverse@ +foreign import ccall unsafe "hs_bindgen_d16f1dce05685cc2" hs_bindgen_d16f1dce05685cc2 :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_mod_inverse@ + + __defined at:__ @botan\/ffi.h:1074:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_mod_inverse :: + Botan_mp_t + -- ^ __C declaration:__ @out@ + -> Botan_mp_t + -- ^ __C declaration:__ @in'@ + -> Botan_mp_t + -- ^ __C declaration:__ @modulus@ + -> IO FC.CInt +botan_mp_mod_inverse = hs_bindgen_d16f1dce05685cc2 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_rand_bits@ +foreign import ccall unsafe "hs_bindgen_54dae9a0738cf2b7" hs_bindgen_54dae9a0738cf2b7 :: + Botan_mp_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rand_bits@ + + __defined at:__ @botan\/ffi.h:1076:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_rand_bits :: + Botan_mp_t + -- ^ __C declaration:__ @rand_out@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @bits@ + -> IO FC.CInt +botan_mp_rand_bits = hs_bindgen_54dae9a0738cf2b7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_rand_range@ +foreign import ccall unsafe "hs_bindgen_76340b165480cd46" hs_bindgen_76340b165480cd46 :: + Botan_mp_t + -> Botan_rng_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_rand_range@ + + __defined at:__ @botan\/ffi.h:1079:5@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_rand_range :: + Botan_mp_t + -- ^ __C declaration:__ @rand_out@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> Botan_mp_t + -- ^ __C declaration:__ @lower_bound@ + -> Botan_mp_t + -- ^ __C declaration:__ @upper_bound@ + -> IO FC.CInt +botan_mp_rand_range = hs_bindgen_76340b165480cd46 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_gcd@ +foreign import ccall unsafe "hs_bindgen_8b59fec151ccc64b" hs_bindgen_8b59fec151ccc64b :: + Botan_mp_t + -> Botan_mp_t + -> Botan_mp_t + -> IO FC.CInt + +{-| __C declaration:__ @botan_mp_gcd@ + + __defined at:__ @botan\/ffi.h:1081:28@ + + __exported by:__ @botan\/ffi.h@ +-} +botan_mp_gcd :: + Botan_mp_t + -- ^ __C declaration:__ @out@ + -> Botan_mp_t + -- ^ __C declaration:__ @x@ + -> Botan_mp_t + -- ^ __C declaration:__ @y@ + -> IO FC.CInt +botan_mp_gcd = hs_bindgen_8b59fec151ccc64b + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_is_prime@ +foreign import ccall unsafe "hs_bindgen_c67e5cdc0af8b145" hs_bindgen_c67e5cdc0af8b145 :: + Botan_mp_t + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Returns 0 if n is not prime Returns 1 if n is prime Returns negative number on error + +__C declaration:__ @botan_mp_is_prime@ + +__defined at:__ @botan\/ffi.h:1088:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_is_prime :: + Botan_mp_t + -- ^ __C declaration:__ @n@ + -> Botan_rng_t + -- ^ __C declaration:__ @rng@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @test_prob@ + -> IO FC.CInt +botan_mp_is_prime = hs_bindgen_c67e5cdc0af8b145 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_get_bit@ +foreign import ccall unsafe "hs_bindgen_554dfa99a55c1e3f" hs_bindgen_554dfa99a55c1e3f :: + Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Returns 0 if specified bit of n is not set Returns 1 if specified bit of n is set Returns negative number on error + +__C declaration:__ @botan_mp_get_bit@ + +__defined at:__ @botan\/ffi.h:1095:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_get_bit :: + Botan_mp_t + -- ^ __C declaration:__ @n@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @bit@ + -> IO FC.CInt +botan_mp_get_bit = hs_bindgen_554dfa99a55c1e3f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_set_bit@ +foreign import ccall unsafe "hs_bindgen_244b4656d4ef983f" hs_bindgen_244b4656d4ef983f :: + Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Set the specified bit + +__C declaration:__ @botan_mp_set_bit@ + +__defined at:__ @botan\/ffi.h:1100:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_set_bit :: + Botan_mp_t + -- ^ __C declaration:__ @n@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @bit@ + -> IO FC.CInt +botan_mp_set_bit = hs_bindgen_244b4656d4ef983f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_mp_clear_bit@ +foreign import ccall unsafe "hs_bindgen_6557464b9984a2b9" hs_bindgen_6557464b9984a2b9 :: + Botan_mp_t + -> HsBindgen.Runtime.Prelude.CSize + -> IO FC.CInt + +{-| Clear the specified bit + +__C declaration:__ @botan_mp_clear_bit@ + +__defined at:__ @botan\/ffi.h:1105:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_mp_clear_bit :: + Botan_mp_t + -- ^ __C declaration:__ @n@ + -> HsBindgen.Runtime.Prelude.CSize + -- ^ __C declaration:__ @bit@ + -> IO FC.CInt +botan_mp_clear_bit = hs_bindgen_6557464b9984a2b9 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_bcrypt_generate@ +foreign import ccall unsafe "hs_bindgen_de364ecf143fecea" hs_bindgen_de364ecf143fecea :: + Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> Botan_rng_t + -> HsBindgen.Runtime.Prelude.CSize + -> HsBindgen.Runtime.Prelude.Word32 + -> IO FC.CInt + +{-| Create a password hash using Bcrypt + + [__@out@ /(input)/__]: buffer holding the password hash, should be of length 64 bytes + + [__@out_len@ /(input)/__]: the desired output length in bytes + + [__@password@ /(input)/__]: the password + + [__@rng@ /(input)/__]: a random number generator + + [__@work_factor@ /(input)/__]: how much work to do to slow down guessing attacks + + [__@flags@ /(input)/__]: should be 0 in current API revision, all other uses are reserved and return BOTAN_FFI_ERROR_BAD_FLAG + + __returns:__ 0 on success, a negative value on failure + + Output is formatted bcrypt $2a$... + + TOD(Botan4) this should use char for the type of `out` + +__C declaration:__ @botan_bcrypt_generate@ + +__defined at:__ @botan\/ffi.h:1125:5@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_bcrypt_generate :: + Ptr.Ptr HsBindgen.Runtime.Prelude.Word8 + {- ^ + + [__@out@ /(input)/__]: buffer holding the password hash, should be of length 64 bytes + + __C declaration:__ @out@ + -} + -> Ptr.Ptr HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@out_len@ /(input)/__]: the desired output length in bytes + + __C declaration:__ @out_len@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@password@ /(input)/__]: the password + + __C declaration:__ @password@ + -} + -> Botan_rng_t + {- ^ + + [__@rng@ /(input)/__]: a random number generator + + __C declaration:__ @rng@ + -} + -> HsBindgen.Runtime.Prelude.CSize + {- ^ + + [__@work_factor@ /(input)/__]: how much work to do to slow down guessing attacks + + __C declaration:__ @work_factor@ + -} + -> HsBindgen.Runtime.Prelude.Word32 + {- ^ + + [__@flags@ /(input)/__]: should be 0 in current API revision, all other uses are reserved and return BOTAN_FFI_ERROR_BAD_FLAG + + __C declaration:__ @flags@ + -} + -> IO FC.CInt +botan_bcrypt_generate = hs_bindgen_de364ecf143fecea + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_bcrypt_is_valid@ +foreign import ccall unsafe "hs_bindgen_e7b57c46335e8db6" hs_bindgen_e7b57c46335e8db6 :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Check a previously created password hash + + [__@pass@ /(input)/__]: the password to check against + + [__@hash@ /(input)/__]: the stored hash to check against + + __returns:__ 0 if if this password/hash combination is valid, 1 if the combination is not valid (but otherwise well formed), negative on error + +__C declaration:__ @botan_bcrypt_is_valid@ + +__defined at:__ @botan\/ffi.h:1136:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_bcrypt_is_valid :: + HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@pass@ /(input)/__]: the password to check against + + __C declaration:__ @pass@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@hash@ /(input)/__]: the stored hash to check against + + __C declaration:__ @hash@ + -} + -> IO FC.CInt +botan_bcrypt_is_valid = hs_bindgen_e7b57c46335e8db6 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_oid_destroy@ +foreign import ccall unsafe "hs_bindgen_74f5cf251ae320a7" hs_bindgen_74f5cf251ae320a7 :: + Botan_asn1_oid_t + -> IO FC.CInt + +{-| + + __returns:__ negative number on error, or zero on success + +__C declaration:__ @botan_oid_destroy@ + +__defined at:__ @botan\/ffi.h:1147:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_oid_destroy :: + Botan_asn1_oid_t + -- ^ __C declaration:__ @oid@ + -> IO FC.CInt +botan_oid_destroy = hs_bindgen_74f5cf251ae320a7 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_oid_from_string@ +foreign import ccall unsafe "hs_bindgen_d594d05e4fe65a9f" hs_bindgen_d594d05e4fe65a9f :: + Ptr.Ptr Botan_asn1_oid_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Create an OID from a string, either dot notation (e.g. '1.2.3.4') or a registered name (e.g. 'RSA') + + [__@oid@ /(input)/__]: handle to the resulting OID + + [__@oid_str@ /(input)/__]: the name of the OID to create + + __returns:__ negative number on error, or zero on success + +__C declaration:__ @botan_oid_from_string@ + +__defined at:__ @botan\/ffi.h:1155:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_oid_from_string :: + Ptr.Ptr Botan_asn1_oid_t + {- ^ + + [__@oid@ /(input)/__]: handle to the resulting OID + + __C declaration:__ @oid@ + -} + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + {- ^ + + [__@oid_str@ /(input)/__]: the name of the OID to create + + __C declaration:__ @oid_str@ + -} + -> IO FC.CInt +botan_oid_from_string = hs_bindgen_d594d05e4fe65a9f + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_oid_register@ +foreign import ccall unsafe "hs_bindgen_f939b37470e7c2e4" hs_bindgen_f939b37470e7c2e4 :: + Botan_asn1_oid_t + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -> IO FC.CInt + +{-| Registers an OID so that it may later be retrieved by name + + __returns:__ negative number on error, or zero on success + +__C declaration:__ @botan_oid_register@ + +__defined at:__ @botan\/ffi.h:1161:28@ + +__exported by:__ @botan\/ffi.h@ +-} +botan_oid_register :: + Botan_asn1_oid_t + -- ^ __C declaration:__ @oid@ + -> HsBindgen.Runtime.ConstPtr.ConstPtr FC.CChar + -- ^ __C declaration:__ @name@ + -> IO FC.CInt +botan_oid_register = hs_bindgen_f939b37470e7c2e4 + +-- __unique:__ @botanbindings_Botan.Bindings.Generated.Botan_3_10_0_Unsafe_botan_oid_view_string@ +foreign import ccall unsafe "hs_bindgen_822313984ec94c99" hs_bindgen_822313984ec94c99 :: + Botan_asn1_oid_t + -> Botan_view_ctx + -> Botan_view_str_fn + -> IO FC.CInt + +{-| View an